#include "stdio.h"
void main()
{
int i=0;
char ch;
while(i<=1)
{printf("请输入一个字母")
scanf("%c",&ch);
if(ch>=65&&ch<=90)
ch=ch+32;
else if(ch>='a'&&ch<='z')
ch=ch-32;
else
ch=ch;
printf("%c",ch);
i=i-1;
}
printf("over");
}
这是一个转化大小写字母的简单程序,但它的循环似乎有点问题,不是预期的样子,问题在哪呢?菜鸟求解
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
6条回答 默认 最新
code97dd 2015-10-04 09:37关注先提几个问题,
1.你的代码是编译不过的,有好几个问题。
2.排版很难看,不晓得是web的问题,还是copy上来就有问题。
3.大小写转换,直接用'A'--'Z'和'a',--'z'表示范围,然后通过表达式计算较方便,就不用记住asc码了。比如大写转小写:
if (ch >= 'A' && ch <='Z')
{
ch = 'a' + ch - 'A';
}代码逻辑应该没有啥问题,你直接用vs跑下酒OK了
解决 无用评论 打赏 举报