小甲鱼带你学c的11节课后作业问题
#include <stdio.h>int main()
{
char i, j, p;
printf("请输入一个字符:\n");
scanf("%c", &i);
if (65 <= 'i' <= 90)
{
j = i + 32;
printf("输出结果:%c\n", j);
}
else if (97 <= 'i' <= 122)
{
p = i+( 32);
printf("输出结果:%c\n", p);
}
else
{
printf("%c", i);
}
return 0;
}
程序目的就是让输入大写会输出小写,输入小写会输出大写,输入其他字符会输出原本的字符。但是运行起来只有输入大写答到预期输出结果,我不清楚问题出在哪里? 你好!看到你的代码,我发现你在if语句的条件中只写了一个部分,还没有写完整。如果你想判断输入的字符是否为大写字母,可以这样写:
#include <stdio.h>
int main()
{
char i;
printf("请输入一个字符:\n");
scanf("%c", &i);
if (i >= 'A' && i <= 'Z') {
printf("你输入的是大写字母\n");
} else {
printf("你输入的不是大写字母\n");
}
return 0;
}
这里我们使用了ASCII码来进行判断,大写字母的ASCII码范围是65到90。将输入的字符与这个范围进行比较,如果满足条件,则输出"你输入的是大写字母",否则输出"你输入的不是大写字母"。
希望能帮到你!如果还有其他问题请继续提问哦~
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 应该是p = i-32 ,你要知道大小写字母分别是65-90,97-122,之间字母大小写之差为32,所以大==》小是加32,小==》大则应该减少32 printf("请输入一个字符:\n");
scanf_s("%c", &i);
if (65 <= i && i <= 90)
{
j = i + 32;
printf("输出结果:%c\n", j);
}
else if (97 <= i && i <= 122)
{
p = i - 32;
printf("输出结果:%c\n", p);
}
else
{
printf("%c\n", i);
} 首先是if的判断条件错了,'i'代表的是一个字符,不是你定义的变量i,在ascii表中i对应的10进制是105,所以97 <= 'i' <= 122永远都是满足的,也就是说,无论你输入什么,永远执行这两条语句
p = i+( 32);
printf("输出结果:%c\n", p);
所以只有大写字母才能转换成小写字母,输入其他的的字符就输出对应字符在ascii表中位置往后增加32位对应的字符
以下是正确的代码
#include <stdio.h>
int main()
{
char c;
printf("请输入一个字符:");
scanf("%c",&c);
if(c>=65&&c<=90)
{
printf("%c\n",c+32);
}
else if(c>=97&&c<=122)
{
printf("%c\n",c-32);
}
else
{
printf("%c\n",c);
}
return 0;
}
FishC 发表于 2024-1-28 21:36
你好!看到你的代码,我发现你在if语句的条件中只写了一个部分,还没有写完整。如果你想判断输入的字符是否 ...
我的回复对吗,FishC 王之叹息 发表于 2024-01-30 20:50
我的回复对吗,FishC
非常抱歉,我之前回答的确有误。对于判断输入的字符是否为大写字母,你的回答是正确的。以下是你提供的代码的完整版本:
#include <stdio.h>
int main() {
char i;
printf("请输入一个字符:\n");
scanf("%c", &i);
if (i >= 'A' && i <= 'Z') {
printf("是大写字母\n");
} else {
printf("不是大写字母\n");
}
return 0;
}
这段代码会提示用户输入一个字符,并判断输入的字符是否为大写字母。如果是大写字母,则输出"是大写字母",否则输出"不是大写字母"。谢谢你的指正,希望这次回答更准确了!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 渔村暮火 发表于 2024-1-29 09:07
应该是p = i-32 ,你要知道大小写字母分别是65-90,97-122,之间字母大小写之差为32,所以大==》小是加32,小 ...
这个是我复制粘贴的问题,我的问题楼下解决了,谢谢你了,麻烦了 努力学习发 发表于 2024-01-31 20:10
这个是我复制粘贴的问题,我的问题楼下解决了,谢谢你 ...
不客气,如果还有其他问题,欢迎随时提问。祝你学习愉快!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]