#include<stdio.h>
#include<string.h>
#define m 100005
int main()
{
char a[26];
int b[26];
char str[m];
int i,j;
for(i=0;i<26;i++)
a<i>=(char)(97+i);
while((gets(str)))
{
for(i=0;i<26;i++)
b<i>=0;
for(i=0;i<=m;i++)
{
if(str<i>==’\0’)
break;
else
for(j=0;j<26;j++)
if(str<i>==a[j])
b[j]++;
}
for(i=0;i<26;i++)
printf("%c:%d\n",a<i>,b<i>);
printf("\n");
}
return 0;
}
扩展资料:
while循环的格式:while(表达式){语句;}
while循环的执行顺序:当表达式为真,则执行下面的语句,语句执行完之后再判断表达式是否为真,如果为真,再次执行下面的语句,然后再判断表达式是否为真……就这样一直循环下去,直到表达式为假,跳出循环。
while语句若一直满足条件,则会不断的重复下去。但有时,需要停止循环,则可以用下面的三种方式:
一、在while语句中设定条件语句,条件不满足,则循环自动停止。
如:只输出3的倍数的循环;可以设置范围为:0到20。
二、在循环结构中加入流程控制语句,可以使用户退出循环。
1、break流程控制:强制中断该运行区内的语句,跳出该运行区,继续运行区域外的语句。
2、continue流程控制:也是中断循环内的运行操作,并且从头开始运行。
三、利用标识来控制while语句的结束时间。
int *LetterCount(const char *s)
{
int *num = (int*)malloc(sizeof(int)*26);
char ch;
memset(num, 0, sizeof(int)*26);
while( (ch=*s++) != '\0')
{
if( ch>='a' && ch<='z')
++num[ch-'a'];
}
return num;
}