鱼C论坛

 找回密码
 立即注册
查看: 1088|回复: 6

putchar的输入输出问题

[复制链接]
发表于 2022-2-24 15:32:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
自行练习中,和别人的语句一样,但是不能正常输出,是什么问题啊
# include<stdio.h>
int main()
{
    char a,b,c;
    a=getchar();
    b=getchar();
    c=getchar();
    a=a+32;
    b=b+32;
    c=c+32;
    putchar(a);
    putchar(b);
    putchar(c);
    putchar('\n');
    return 0;
}
putchar的输入输出问题.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-2-24 15:37:15 | 显示全部楼层
你输入 1。实际上你输入了 1 和 '\n' 2个字符。getchar没有过滤\n的功能。
# include<stdio.h>
int main()
{
    char a,b,c;
    a=getchar();
getchar();
    b=getchar();
getchar();
    c=getchar();
getchar();
    a=a+32;
    b=b+32;
    c=c+32;
    putchar(a);
    putchar(b);
    putchar(c);
    putchar('\n');
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-24 15:37:35 | 显示全部楼层
大写字母加32是本家小写
小写字母加32 超出ascii码范围  故:无法显示
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-24 15:43:07 | 显示全部楼层
本帖最后由 isdkz 于 2022-2-24 15:47 编辑

你那个是把大写变小写的,把小写变成大写应该是减32,小写字母的ascii码加32就有可能超出ascii码的范围了,所以有可能无法显示,

还有你输入的逗号也算一个字符,用getchar()就不要输入逗号
# include<stdio.h>
int main()
{
    char a,b,c;
    a=getchar();
    b=getchar();
    c=getchar();
    a=a-32;            // 改成减32
    b=b-32;
    c=c-32;
    putchar(a);
    putchar(b);
    putchar(c);
    putchar('\n');
    return 0;
}

捕获3.PNG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-24 18:57:13 | 显示全部楼层
isdkz 发表于 2022-2-24 15:43
你那个是把大写变小写的,把小写变成大写应该是减32,小写字母的ascii码加32就有可能超出ascii码的范围了, ...

谢谢啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-24 18:59:17 | 显示全部楼层
wp231957 发表于 2022-2-24 15:37
大写字母加32是本家小写
小写字母加32 超出ascii码范围  故:无法显示

谢谢啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-25 10:55:54 | 显示全部楼层
ba21 发表于 2022-2-24 15:37
你输入 1。实际上你输入了 1 和 '\n' 2个字符。getchar没有过滤\n的功能。
# include
int main()

谢谢啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 11:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表