问题叙述性说明:
现在包括只给出大写和小写字母串。不包括空格和换行,在资本的需求转化为小写,小写转换成大写。再经过一个字符串输出交换。
第一行中只有一个整数m(m<=10),它表示测试数据组的数量。
下来的m行,每行有一个字符串(长度不超过100)。
输出互换后的字符串,每组输出占一行。
程序代码:
#include<stdio.h>
#include<string.h>
int main(){
int i,n;
char a[100];
scanf("%d",&n);
getchar();
while(n--){
gets(a);
for(i=0;i<strlen(a);i++){
if(a[i]>='a'&&a[i]<='z')
a[i]=a[i]-32; //小写转换成大写
//if(a[i]>='A'&&a[i]<='Z')
// a[i]=a[i]+32;
else
a[i]=a[i]+32; //大写转换成小写
printf("%c",a[i]);
}
printf("
");
}
return 0;
}
要点:
大写和小写字母在ASCII码中相差32。大写字母在前。
getchar() gets(a) printf("%c",a[i])
版权声明:本文博主原创文章。博客,未经同意不得转载。