当前位置: 代码迷 >> C语言 >> 各位高手,帮帮忙看看这条程序要怎么改~~~
  详细解决方案

各位高手,帮帮忙看看这条程序要怎么改~~~

热度:128   发布时间:2005-09-06 19:12:00.0
各位高手,帮帮忙看看这条程序要怎么改~~~
#include "stdio.h"
main()
{
FILE *fp;
int num=0;
char q;
clrscr();
if((fp=fopen("D:/test.txt","r"))==NULL)
{
  printf("Can not open!");
  exit(0);
  }
while(!feof(fp))
{
  q=fgetc(fp);
  if((q>='A'&&q<='Z')||(q>='a'&&q<='z'))
  {
  num++;
  }
  }
  printf("%d",num);
  }
该程序是建立一个文本文档,然后在里面输入英文字母,再计算字母的个数。
但是我现在想把各个字母分开计算,要怎样改才会最简单?
麻烦帮帮忙~~~谢谢!
搜索更多相关的解决方案: 计算  英文字母  include  

----------------解决方案--------------------------------------------------------
我只会一个一个列出来
是太麻烦了
简单的我不会
----------------解决方案--------------------------------------------------------
大小写区分吗?比如a和A统计成一个还是2个?
----------------解决方案--------------------------------------------------------
你说的是什么意思啊?
怎么分开计算?
----------------解决方案--------------------------------------------------------
还有一点, 你的程序打开后没有关闭。
----------------解决方案--------------------------------------------------------
对啊~~你们说的问题我都考虑了,就是想不到要怎么改
不区分大小写的字母的,就是a,b,c……分开算
一个个列出来真的很麻烦,要怎么改才好?
----------------解决方案--------------------------------------------------------
建一个26维的数组即可。int count[26]={0};
if(q > ='A' && q <= 'Z') count[q - 'A']++;
else if(q >='a' && q <= 'z') count[q - 'a']++;

或者首先把大写全转换成小写。
----------------解决方案--------------------------------------------------------
算法正确了,但是不知道为什么输出的时候,
不是光输出最后的数字,而是全输出了。
我输入的是a a a a b b,
它就输出123412
不知道还有哪里有问题,可以帮忙再看看吗?
#include "stdio.h"
main()
{
FILE *fp;
int s[26]={0};
char q;
clrscr();
if((fp=fopen("D:/test.txt","r"))==NULL)
{
  printf("Can not open!");
  exit(0);
  }
while(!feof(fp))
{
  q=fgetc(fp);
  if(q>='A'&&q<='Z')
  {
  s[q-'A']++;
  printf("%d",s[q-'A']);
  }
  else if(q>='a'&&q<='z')
  {
   s[q-'a']++;
   printf("%d",s[q-'a']);
   }
  }
}
----------------解决方案--------------------------------------------------------
你的printf加的不是地方,你定义int i = 0;在main函数最后加一个for(i = 0;i < 26; i++)printf("%d,",s[i]);就行了。把if 还有else if里的printf都去掉
----------------解决方案--------------------------------------------------------
不行啊~~~输出全是0
----------------解决方案--------------------------------------------------------
  相关解决方案