标题:一个统计输入文件中字符,空格,数字,和特殊字符的代码,不过有点问题(请 ...
取消只看楼主
dsbt2035s
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-8-9
 问题点数:0 回复次数:3 
一个统计输入文件中字符,空格,数字,和特殊字符的代码,不过有点问题(请教)

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>
void wnz1();
void wnz2();
void wnz3();
void wnz4();
void main()
{
wnz1();
}
void wnz1()
{
int w1;
printf("plese select function:input:(1),statistics(2)");
scanf("%d",&w1);
if(w1==1)
wnz2();
else
wnz3();
}
void wnz2()
{
FILE *fp;
char str1[80],str[80];
if((fp=fopen("c:\statistics.txt","w+"))==NULL)
{
printf("Cannot open file \n\n");
exit(1);
}
printf("please input some charaters:\n");

scanf("%s",str1);
fprintf(fp,"%s",str1);
printf("%s",str1);
/* do
{
printf("ok");
gets(str);
if(*str!='\n')
{
strcat(str,"\n");
fputs(str,fp);}
if(*str!='\n')
break;

}while(*str!='\n');*/
/* int k;
for(k=0;k<80;k++)
{
getchar(str1[k]);
fputc(str[k],fp);
if(*str!='\n') break;
}*/
fclose(fp);
wnz4();
}
void wnz3()
{
FILE *fp1;
char ch[80];
int k,len;
int a=0,b=0,c=0,d=0;
if((fp1=fopen("c:\statistics.txt","r"))==NULL)
{
printf("Cannot open file\n\n");
exit(1);
}
while(!feof(fp1))
{

fgets(ch,80,fp1);
}
len=strlen(ch);

for(k=0;k<len;k++)
{
if(true)
{
if((ch[k]>='a'&&ch[k]<='z')||(ch[k]>='A'&&ch[k]<='Z'))
a++;
if(ch[k]==' ')
b++;
if(ch[k]>='0'&&ch[k]<='9')
c++;
}
else
d++;
}
printf("The statistics is as follow:\n");
printf("len:%d\n",len);
printf("char: %d\nspace: %d\ndigit : %d\nothers :%d\n",a,b,c,d);
fclose(fp1);
wnz4();
}
void wnz4()
{
char w[4];
printf("continue?(Yes or No)");
scanf("%s",w);
if(strchr("yesYES",*w))
wnz1();
if(strchr("noNO",*w))
exit(1);
printf("please enter (Yes or No)");
wnz4();
}
我想往文件里输入空格和特殊字符用fprintf做不到.但可以输入字母和数字可以统计出来
但我用gets(str);
   fputs(str,fp);
又什么都不能输入,直接进入了下一个程序 奇怪
就是我封的那一个

搜索更多相关主题的帖子: void 空格 字符 数字 
2005-11-21 19:57
dsbt2035s
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-8-9
得分:0 
各位高手别隐藏实力啊~~~
很急帮忙看看啊~~~~
2005-11-22 16:34
dsbt2035s
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-8-9
得分:0 
void wnz3()
{
FILE *fp1;
char ch[80];
int k,len;
int a=0,b=0,c=0,d=0;
if((fp1=fopen("c:\statistics.txt","r"))==NULL)
{
printf("Cannot open file\n\n");
exit(1);
}
while(!feof(fp1))
{

fgets(ch,80,fp1);
}
len=strlen(ch);

for(k=0;k<len;k++)
{
if((ch[k]>='a'&&ch[k]<='z')||(ch[k]>='A'&&ch[k]<='Z'))
a++;
else if(ch[k]==' ')
b++;
else if(ch[k]>='0'&&ch[k]<='9')
c++;
else
d++;
}
printf("The statistics is as follow:\n");
printf("len:%d\n",len);
printf("char: %d\nspace: %d\ndigit : %d\nothers :%d\n",a,b,c,d);
fclose(fp1);
wnz4();
}
中间有个代码要改一下!!!
2005-11-23 08:18
dsbt2035s
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-8-9
得分:0 

顶啊!!!
兄弟们看看啊!!!!

2005-11-26 10:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-34554-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.089073 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved