for(i=0;i
if(a[i]>='A'&&a[i]<='Z')
{
a[i]=a[i]-'A'+'a'; //在这里,确实是把大写变成了小写
}
if(a[i]>='a'&&a[i]<='z')
{
a[i]=a[i]-'a'+'A'; //但是,在这里,又都全部变成了大写
}
}
-----------
把: if(a[i]>='a'&&a[i]<='z')
改为:else if(a[i]>='a'&&a[i]<='z')
即可。
if(a[i]>='A'&&a[i]<='Z')
{
a[i]=a[i]-'A'+'a';
}
if(a[i]>='a'&&a[i]<='z')
{
a[i]=a[i]-'a'+'A';
}
不应该是顺序执行,而应该选择执行,是或的关系
include
#include
#include
int main()
{
int i;
char a[20];
gets(a);
for(i=0;i
if(a[i]>='A'&&a[i]<='Z')
{
a[i]=a[i]-'A'+'a';
}
else
{
a[i]=a[i]-'a'-'A';
}
}
printf("%s",a);
return 0;
}