导航:网站首页 >
为什么 0.1e+6是C语言的合法常量,而’cd’不是? 为什么 ch,请教几个有关C语言的问题: 1、为什么’cd’不能做为C语言
为什么 0.1e+6是C语言的合法常量,而'cd'不是? 为什么 char A=65...,请教几个有关C语言的问题: 1、为什么'cd'不能做为C语言合法常...
匿名网友:
1 0.1e+6符合float类型的科学计数法定义,是C语言的合法常量;C语言的字符常量只能是一个字符,因些'cd'不是字符常量;2 char A=65+1,b='b';等价于char A='B',b='b'; 因此是正确的;3 表达式3.6-5/2+1.2+5%2的值是3.8000;4 5/2表示整数相除,结果为整数,因此值为2;5 ABCD都是正确表示的代数式有可能题目有误。
匿名网友:
0.1e+6是一个科学计数法表示的常量,也就是10的6次方cd是变量!A=65+1中65是指ASCII码,对于字符数据可以直接用ASCII码来赋值b='b'中第一个b是字符型变量,第二个是字符b3.6-5/2+1.2+5%2=7.8其中5/2=2,因为两者都是整型数,计算结果也会是整型,所以0.5被抹去了最后,从编译的原理来讲 那四个表达式都没错例如:#include
匿名网友:
(1) 用单引号括起的是字符常量,'cd' 含2个字符,也不是转义字符,所以不是合法常量。
0.1e+6 是合法的 E 格式 浮点数。
(2)char a='aa'; 用单引号括起的是字符常量,'aa' 含2个字符,也不是转义字符,所以不是合法常量。
'n' 是合法字符常量, '\x2d' 是合法字符常量, 单引号里是转义字符,\x 打头的是 16 进制数,\x2d 对应 编码为 16 进制 0x2d 的字符。
(3) 正确的是 A. %运算 是 整型除以整型得到的是余数。
其他选择项,B 是语句,可理解为 a = (x != y); x 不等于y 成立则为真,a 得1,不成立为假,a 得0。
C, %运算 是 整型除以整型, 而 a*y 为 double 型,不允许。
D, x+y 不能为 "左值" 。
如果是 y=x=x+y; 就是合法语句,但还不是表达式。
匿名网友:
是合法的 但是如果你要它输出正确结果,就要定义double型 确保不会被取整输出 #include #include int main(){ // printf("%f\n",0.86e1);可以这样输出 // 也可以这样 double a=0.86e1; printf("%f\n",a); // 但是这样int 型就会出现错误 printf("%d\n",0.86e1); return 0;}...
匿名网友:
一、printf)函数在输出数据时,是根据格式串中的格式 %d %c %f等来确定,后面的变量按什么类型进行解释输出二、浮点型数据和整型数据在计算机中存储格式是不同的。
浮点型数据float占四个字节 数据采用IEEE754标准进行保存 符号位1位 指数位8位 小数位23位int整型数据占四个字节 数据采用补码进行保存正数的补码就是原码 第一位符号位,31位数值这样,内存中存储的内容一样,但按不同的类型解释,其结果当然不同了。
三、char类型与整型数据存储是相同的,它只占一个字节,因此,整型数按char输出你能看到正确结果。
所以,你只要改成int x,y;你的程序就是对的。
float就是你想不明白的输出结果了。
匿名网友:
不是,下面有关于常量的定义你可以看:常 量常量是指那些在程序执行过程中不可改变的量,C语言的常量包括直接常量和符号常量两种。
一、直接常量直接常量在程序中可直接使用,具体可分为以下几种基本类型。
1、整型常量:是一种整型数。
通常有八进制、十进制、十六进制三种表达形式。
在C语言中规定八进制数书写时必须以 0 开头,十六进制数以 0x 或 0X 开头。
如十进制常量 10,在八进制中写成 012,在十六进制中写成 0XA 或 0xa。
为了避免与八进制混淆,十进制整数常量的前面不能出现无效的 0,如 10 不能写成 010。
2、长整型常量:在一个 long 类型设计取值范围内的整数均可看成长整型常量。
书写时在常量后面加上一个英文字符 l 或 L。
如:-28l 或 -28L 十进制长整型常量、056l 或 056L 八进制长整数常量、0x33dl 或 0X33DL 十六进制长整型常量。
3、浮点常量:是一实数,只有十进制一种表达方式。
其书写形式有以下两种:⑴ 十进制小数的表示法。
如:-1.25,0.452。
⑵ 指数表示法。
这种表示法通常用在计算中遇到的很大或小的数。
如 60000 可以表示成 6E4,0.000035 可以写成 3.5E-5,等等。
E 也可以写成小写 e。
4、字符常量:是一种用字符来表示该字符在机器字符集中编码值的数字常量,如 IBMPC 系列微机用的 ASCII 码值。
其书写形式是把该常量用单引号括起来,如 ''''''''A'''''''',由于字符 A 的 ASCII 码是65,所以取字符常量 ''''''''A'''''''',取到的实际上是数值65。
另外,也可以把上一章里表1.1中介绍的转义字符放在单引号中作为字符常量。
如用 ''''''''\n'''''''' 表示换行符的 ASCII 码10。
在转义字符系列中,反斜线“\”改变了后随字符 n的本来意义。
5、字符串常量:是一种由零个或多个字符组成的常量。
书写时用双引号把这些字符括起来。
如:"A"、"WORLD"。
组成字符串的字符可以包括表1.1所列的转义字符序列。
如:"CHINA\nHEFEI\n"把这个字符串作为库函数 printf 的参数运行后,就会在屏幕上打印出以下结果:CHINAHEFEI字符串常量在编译时,编译系统自动在其后加一个空字符 ''''''''\0'''''''' 作为字符串的终止符,因此,系统对有 N 个字符组成的字符串常量总是分配 N+1 个字节的存储空间。
必须注意:''''''''A'''''''' 与 "A" 是不同的。
前者是一个字符常量,在内存中只占一个字节的空间;而后者是一个字符串常量,它由字符 ''''''''A'''''''' 和 ''''''''\0'''''''' 组成,它在内存中占两个字节的空间。
而一个空字符串常量 "" 实际上包含了一个空字符 ''''''''\0'''''''',在内存中占用一个字符的存储空间。
二、符号常量符号常量用被定义了的标识符来代替常数。
对于在程序设计中数位较长、反复出现或者需要经常修改的一些常量,使用符号常量有其独到的好处。
在程序调试或移植过程中,需要改变这些常量的值时,只要修改源程序开始部分符号常量宏替换的值就可以了。
如程序里经常要用到圆周率 3.14159 就可以通过宏替换命令用符号常量来代替它:define PI 3.14159 /* 通过宏替换命令用符号常量 PI 代替常数 3.14159 */这样,在程序中凡是用到园周率的地方都可以用 PI 代替了。
为了醒目起见,习惯上总是用大写字母来组成符号常量的标识符。
希望我的回答让你满意~!谢谢~!
问题推荐