C朋友帮帮忙好吗?.

来源:百度知道 编辑:UC知道 时间:2024/05/12 10:39:59
为什么,int ch;char zh;改成int zh; char ch;效果是一样的?

#include <stdio.h>
main()
{int ch;char zh;
ch=getchar();
printf("%d",ch);
scanf("%d",zh);
putchar(zh);}
谁给讲讲啊,谢谢啦.

上面几位仁兄说的都有道理

准确的说:C语言中,字符型数据

是按整型的形式来存放的

例如:A-Z等价于65-90

而a-z等价于97-122

所以:关键看你是想输出什么,即你用%d或%c的结果会不一样

用%d当然输出数字,而%c输出字符

注意:数字只有一定范围内才是显示成字符,具体可以参考ASCII 码表

所以二者可以转换

字符型和正行是可以相互转化的,这个过程是系统非自动完成的,在运行时只看内存的数据。

字符型数据实际保存的是该字符的ASCII码,当以%d输出时,输出的是该字符的ASCII码值。

字符型数据实际保存的是该字符的ASCII码,当以%d输出时,输出的是该字符的ASCII码值。
回答者:luluorta - 试用期 一级 2-24 15:49

putchar(zh);}
输出字符串,整型也是字符串,当然可以了

在C中,所有整数类型的变量都可以用于表示字符,我作可以使用int和char类型的变量来表示字符。也可以用char类型的变量保存小整型数值