C语言 大小写字母转换

 我来答
创作者TM3FL8ZZA7
2019-06-03 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:33%
帮助的人:958万
展开全部
上面源程序的功能是实现大写字母转换为小写字母。
定义两个字符变量c1,c2,语句c1=getchar();要求输入一个大写字母的字符,比如输入a,由于字符a的ascll是65,执行语句printf("%c,%d\n",c1,c1);此时会输出a,65,由于任何小写字母的ascll值比其对应的大写字母大32,则根据语句c2=c1+32;把字符a的ascll值加32,变为97,对应的就是字符a,即大写字母a的小写形式,在赋给c2,最后执行printf("%c,%d\n",c2,c2);输出a,97.
创作者JVktWCyap4
2019-05-01 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.6万
采纳率:34%
帮助的人:1017万
展开全部
#include<stdio.h>
void
main()
{
char
a,A;
scanf("%c",&a);
if(
(a>='a')
&&
(a
<=
'z')
)
A=a-32;
else
if(
(a
>=
'A')
&&
(a
<=
'Z')
)
A=a+32;
else
A
=
'A';
printf("%c\n",A);
return
0;
}
说明:你原来的地方有两处错误,第一,scanf(
"%c",
&a
);中,&是取地址操作符,也就是只有你这样做,输入的字符才能被编译器根据取到的地址,把字符值送进内存里去。所以if(&a>='a')
是错误的,应该改为a而不是&a。第二,逻辑错误,只有你写的if中得条件,没考虑其他的异常处理,怎么可以?逻辑思考要完整些
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
创作者KI48eh4e8j
2019-01-27 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:28%
帮助的人:871万
展开全部
改成下面这样:
#include<stdio.h>
void
main()
//空返回函数不用return
{
char
a,A;
scanf("%c",&a);
if(a>='a')
//这里把&a改成a
地址和int不能比较
A=a-32;
else
A=a+32;
printf("%c\n",A);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
创作者fSG8tFLxQH
2020-03-28 · TA获得超过3.8万个赞
知道大有可为答主
回答量:1.2万
采纳率:30%
帮助的人:920万
展开全部
还有我看不到上面代码根据什么来实现大小写转换的
#include<stdio.h>
void
main()
{
char
c1,c2;
//
定义两个字符c1,c2
c1=getchar();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式