问题描述:
给你一个乱序的字符串,里面包含有小写字母(a--z)以及一些特殊符号,
请你找出所给字符串里面所有的小写字母的个数,拿这个数对26取余,输出取余后的数字在子母表中对应的小写字母(0对应z,1对应a,2对应b....25对应y)。
第一行是一个整数n(1<n<1000)表示接下来有n行的字符串m(1<m<200)需要输入
输出对应的小写字母 每个小写字母单独占一行
程序代码:
#include<stdio.h>#include<string.h>
int main(){
int n,m,i;
char a[200];
scanf("%d",&n);
getchar();
while(n--){
m=0; //注意m变量应该在每次循环开始、统计小写字母之前先设置成0。他是局部变量。
gets(a);
for(i=0;i<strlen(a);i++){
if((a[i]>='a')&&(a[i]<='z'))
m=m+1; //m为字符串中小写字母的个数
}
m=m%26;
if(m==0)
printf("z\n");
else{
//m=m+96;
printf("%c\n",m+96);
}
}
return 0;
}
要点:
1.找出字符串中小写字母的个数m;2.用m%26取余;
3.输出得到的数字m在字母表中对应的小写字母; >>>这个要动下脑筋了。97在%c格式下输出的是小写字母'a'。
重点是:
小写字母'a'的ASCII码值是97,即97在ASCII中对应的是'a';65在ASCII中对应的是'A';
若需要在%c格式下输出数字1,那就需要知道49在ASCII中对应的是数字1