C语言编程中碰到一个问题,求大神指教
代码如下:
#include<stdio.h> int main() { char a[200];//a数组用来存储字符串 int i,t,m; int sum1=0;//sum1用来计算各个字母出现的次数 int b[26];//用来存储各个字母出现的次数 char c[26]={"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"}; char *d, n=0;//指针变量指向数组c d=c; for(i=0; a[i]!=" "; i++) scanf("%c", &a[i]);//输入各个字符 if(a[i]>="A"&&a[i]<="Z") a[i]+=32;//把字符全部变为小写的字母 for(t=0; t<26; t++) { { for(i=0; a[i]!=" "; i++) if(a[i]==c[t]) sum1++; } b[t]=sum1;//计算出各个小写字母的次数 } for(i=0; i<25; i++) for(t=0; t<25-i; t++) if(b[t]<b[t+1]) { m=b[t]; n=*d; b[t]=b[t+1]; *d=*(d+1); b[t+1]=m; *(d+1)=n; }//将次数从大到小排序 for(t=0; t<26; t++) { printf("%c:%d", *(d+t), b[t]); printf(" "); } return 0; }
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。