看看这里有什么问题呀,看不出来

img

img


//统计指定的字符串中26个小写字母的个数,并存储到指定的数组int num[26]中
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num[26];
char str[13];
int i;
printf("input string:\n");
gets(str);
puts(str);

for(i = 0 ; str[i] != '\0'; i++ ){
    if(str[i] !=''){
        num +=1;
    }
}
for(i = 0; str[i] != '\0'; i++  ){
    printf("%c-->%d,",str[i],num);
}

return 0;

}

给你改了一下,望采纳,谢谢!

#include <stdio.h>
#include <stdlib.h>
int main()
{
int num[26] = {0};
char str[100];
char str1[26] = {'\0'};
int i;
printf("input string:\n");
gets(str);
//puts(str);
for(i = 0 ; str[i] != '\0'; i++ ){
    if(str[i]>= 'a' && str[i] <= 'z'){
        int index = str[i] - 'a';
        //printf("%d\n",index);
        num[index]++;
    }
}
for(i = 0; str[i] != '\0'; i++  ){
    if (str[i] != ' ')
    printf("%c-->%d,",str[i],num[str[i] - 'a']);
    
}
 
return 0;
}

3num +=1; 改为 num[str[i]] +=1;
第7printf("%c-->%d,",str[i],num);改为 printf("%c-->%d,",str[i],num[str[i]]);