c语言数组统计大写字母

来源:百度知道 编辑:UC知道 时间:2024/06/03 07:40:51
#include "stdio.h"
#include "ctype.h"
main()
{int num[26]={0},i;char c;
while((c=getchar()))num(c-'A')+=1;
for(i=0;i<26;i++)
if(num[i])printf("%c:%d\n",i+'A',num[i]);
}
程序有错吗,没错,请解释一下

#include "stdio.h"
#include "ctype.h"
main()
{int num[26]={0},i;
char c;
do
{
scanf("%c",&c);
if(c>='A'&&c<='Z')
num[c-'A']+=1;
}while(c!='0');
for(i=0;i<26;i++)
if(num[i])printf("%c:%d\n",i+'A',num[i]);
}

#include "stdio.h"
#include "ctype.h"
main()
{
int num[26]={0},i;char c;
c=getchar();
while(c!='0')
{
if(c>='A'&&c<='Z')
num(c-'A')+=1;
c=getchar();
}
for(i=0;i<26;i++)
{
if(num[i]) printf("%c:%d\n",i+'A',num[i]);
}
}

初始化好像要用个for循环吧