)
#include
#include
#include
int main()
{
char t[110];
printf("Input a zifu:");
gets(t);
int i = 1;
if (t[0] !=' ' && t[0] >= 'a')
t[0] = t[0] - 32;
while (t[i] != '\0')
{
if (t[i - 1] == ' ' && t[i] >= 'a')
{
t[i] = t[i] - 32;
}
else if(t[i - 1] !=' ' && t[i] >= 'A')
t[i] = t[i] +32;
else if(t[i-1]!=' '&&t[i]>='a')
t[i]=t[i];
else if(t[i]<='9'&&t[i]>='0')
t[i] = t[i]-1;
i++;
}
printf("%s", t);
system ("pause");
}
else if(t[i - 1] !=' ' && t[i] >= 'A')
t[i] = t[i] +32;
这有问题的,你应该限定t[i]>='A' && t[i]<='Z'
否则当t[i-1]!=' '时,t[i]如果是小写字符,也会加32,就成乱码了
修改后输出就OK了
你想要输出啥样的呢。