C语言——将数字和数字字符输入给char型变量会如何?

C语言——将数字和数字字符输入给char型变量会如何

char型是字符型变量,而且其存储的内容往往是字符的ASCII码,那么如果将数字赋值给它会如何?与将数字字符赋值给它有何区别?

下面展示三种输入情况及其结果

第一种:

C语言——将数字和数字字符输入给char型变量会如何?_第1张图片

结果:
输出结果这里插入图片描述
输出9

第二种:

C语言——将数字和数字字符输入给char型变量会如何?_第2张图片
结果:
在这里插入图片描述
输出57 57是字符9对应的十进制ASCII码值

第三种:

C语言——将数字和数字字符输入给char型变量会如何?_第3张图片
结果:
C语言——将数字和数字字符输入给char型变量会如何?_第4张图片
依然输出57

归纳总结:

1.scanf(“%c”,&a)的形式输入9 哪怕键盘上只输入了9 没有加‘’ 仍然相当于输入字符9。
2. 数字9是没有ascii码的 所以给char型变量输入数字时,相当于char型已经变成了
Int 类型 输出也完全可以用%d正常输出。
但是注意 如果把浮点数赋值给char型 再用%f输出会发生错误
char型变量 只能和 int 型变量在有限范围内 共通!!!

3.但正常情况下说“char型变量存放的是ascii码”是对的!如果正常输入字符9,那么就将字符9的ascii码值赋予给了a,而%d是按照十进制输出 所以最后输出的是字符9的十进制ascii码。

C语言小白的一点见解,与其说分享不如说是问大家是不是这样啊~~~ 如有不对轻点喷哦~

你可能感兴趣的:(C语言学习心得,c语言,数据类型)