郁闷了,做了N次才写好。最后终于想起来 int 的0等于char的 48..........我晕!!
#include<stdio.h>
#include<string.h>
#define MAX 100+1
int main()
{
char str[MAX];
int i;
do
{
gets(str);
}while(strlen(str)>100);
for(i=0;i<strlen(str);i++)
{
if(str[i]>='a'&&str[i]<='z')
str[i]=str[i]-32;
else if(str[i]>='A'&&str[i]<='Z')
str[i]=str[i]+32;
else if(str[i]>='0'&&str[i]<='9')
str[i]=105-str[i];
}
char *temp=strrev(str);
printf("%s\n",temp);
return 0;
}