void
main()
{
char
a
int
c='a'-'A'
printf("大小写转换\n输入要转换的字符串:\n")
while(scanf("%c",&a)!=EOF)
{
if(a>='a'&&a<='z')//检测如果是小写则执行下一句,如果是大写则执行else
{
a=a-c
printf("%c",a)
}
else//如果检测是大写则执行这里
{
a=a+c
printf("%c",a)
}
}
}
思路:利用对应大小写字符的ASCII码相差32,则遍历输入的字符串,判断每个字符是大写字母还是小写字母,如果是大写字母则自加32就是对应的小写字母,如果是小写字母则自减32就是其对应的大写字母。
参考代码:
#include <stdio.h>int main()
{
char a[100]
int i
gets(a)
for(i=0a[i]!='\0'i++)
if(a[i]>='A'&&a[i]<='Z')//表示是大写字母
a[i]+=32
else if(a[i]>='a'&&a[i]<='z')//表示是小写字母
a[i]-=32
puts(a)
return 0
}
/*
输出:
asfDJY435
ASFdjy435
*/