输出结果统计各字符的数量不正确。

#include
#include
int main ()

{

char ch; 
int m=0,n=0,p=0,count = 0;
FILE *fp = fopen("STRING.txt", "w+"); 
if (fp!=NULL)
{

    printf("请输入要保存的字符串:\n");
   ch = getchar();
    while (ch!='\n') {
        count++;
        fputc(ch, fp); 
        ch = getchar();

    }
    printf("本次一共写入了%d个字符\n",count);
    printf("\n"); 
    rewind(fp);
    ch  = fgetc(fp);  
    while (ch!=EOF) 
    {   
        putchar(ch);
       ch  = fgetc(fp);  
            if (ch>='0'&&ch<='9')
        m++;
    else if (ch>='A'&&ch<='Z'||ch>='a'&&ch<='z')
        n++;
    else p++;
    } 
    printf("\n"); 
    printf("数字有%d个\n字母有%d个\n其他字符有%d个\n",m,n,p);
}
fclose(fp);
return 0; 
}
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

2
1042 字符统计 只有一个案例不通过 map与array的使用
1
编写函数del(char str[])将字符串str中的除头部前导*和后字符数删除后的字符串,
2
C语言:统计字符串中字符的种类
1
怎么用ofstream输出固定长度的字符数组?
2
分类统计字符个数;写不对啊!?
1
调用gridview中数据时出现输入字符串的格式不正确,是什么问题?
2
C语言三个字符,按各字符的ASCII码从小到大的顺序输出这三个字符
1
C语言新手问题scanf函数将字符串指针用%c的格式输出结果是什么?
1
C语言计算实现,字符串的编码值小于等于给定的值则输出yes,否则输出no
1
在Java中怎么实现:统计从键盘上输入的字符串行数
1
从键盘读入多行字符串,统计输出字符串行数。输入“exit”,退出程序。?
4
键盘输入一个字符串,统计并输出字母个数。
1
(C语言)输入一个有20个以上字符的字符串,分别统计字符串中字符a和s(只限于小写)的个数,并输出结果。
1
用C语言如何解决:对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串
0
输入一行字符(长度不确定),先把输入的字符串写到文本文件,然后从该文件中读出来?
0
给定的一个字符串,统计其中数字字符出现的次数,怎么采用C语言来回答这个问题的
0
字符串运用的查找最大元素,怎么采用C语言的程序代码编写的过程的方式去实现
0
运用C语言的程序代码,输入三个字符按字符的ASCII码从小到大的顺序输出这三个字符
1
输入一个字符串,可以删除字符串s中的任意字符,剩下的字符串形成对称字符串,且该字符串为最长对称字符串
2
指定位置输出字符串:输入一个字符串后再输入两个字符,输出此字符串中从与第一个字