C语言putchar和printf

#include<stdio.h>intmain(){inta;putchar(a=getchar());printf("%d",a);return0;}输入65为什么得... #include<stdio.h>
int main()
{
int a;
putchar(a=getchar());
printf("%d",a);
return 0;
}

输入65为什么得到6和54?
展开
 我来答
鬼采
2017-11-20 · TA获得超过972个赞
知道小有建树答主
回答量:678
采纳率:82%
帮助的人:167万
展开全部
putchar函数是输出一个字符。
你输入了65,putchar截取了第一个字符(也就是那个6),然后就输出了一个6,再然后把字符6(字符6的ASCII码为54)转化为整型(也就是字符6的ASCII,即54)赋值给变量a。
此时变量a中的值就是54,然后printf函数已整型数方式输出a的值,所以最终结果就是输出654。
庄政警
2017-11-20 · TA获得超过9916个赞
知道大有可为答主
回答量:1113
采纳率:94%
帮助的人:885万
展开全部
getchar一次只读取一个字符,输入的65只有'6'被读取('5'留在输入缓冲区了),
于是a='6',putchar(a)输出6
而printf("%d",a);是以10进制整数格式输出a,那就会输出字符'6'的ASCII值,也就是54
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
doyouseeman
2017-11-21 · TA获得超过1565个赞
知道小有建树答主
回答量:451
采纳率:50%
帮助的人:84.3万
展开全部
第一个只能输出字符
第二个可以输出任意变量
putchar
c语言函数之一,作用是向终端输出一个字符。其格式为putchar(c),其中c可以是被单引号(英文状态下)引起来的一个字符,可以是介于0~127之间的一个十进制整型数(包含0和127),也可以是事先用char定义好的一个字符型变量。
putchar函数的基本格式为:putchar(c)。
(1)当c为一个被单引号(英文状态下)引起来的字符时,输出该字符(注:该字符也可为转义字符);
(2)当c为一个介于0~127(包括0及127)之间的十进制整型数时,它会被视为对应字符的ASCII代码,输出该ASCII代码对应的字符;
(3)当c为一个事先用char定义好的字符型变量时,输出该变量所指向的字符。
该函数的功能是在stdout上输出单个字符。
用 法: int putchar(int ch);
putchar(c) 就是输出一个字符

例如c="a";
putchar(c) 就是输出了a

printf
printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。
printf()函数的调用格式为: printf("", )。
格式输出,它是c语言中产生格式化输出的函数(在 stdio.h 中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。要输出的的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
printf("%输出的变量类型",变量);
例如整形的变量类型是d
ans=123456;
printf("%d",ans);就输出了123456
printf("123456");也是输出了123456 但是这个表示的是字符串
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式