以下语句中不正确的是 。A,int a=1.3;B,int a=1+3;C,int a='a';D,int a="a";

如题所述

第1个回答  2012-05-04
不正确的是D, int a="a"; //"a"的值是个指针,不能给a赋值
A,int a=1.3; //会有隐式类型转换,a=(int)1.3;
B,int a=1+3; //没啥说的
C,int a='a'; //就是int a=97
第2个回答  2012-05-04
D错了!A中a=1;B中的a=4;C中a=97(a的ASCⅡ码对应的数字),D中a声明为int类型,但右边却是string类型,编译器会报错“无法讲类型“string”隐式转换为“int””;
第3个回答  2012-05-04
D是不对的。A会被强转为1,B是表达式赋值,C会取字符a的ASCII码值
第4个回答  2012-05-04
A 是不正确的,a是整型变量,将实型数据赋值给整型变量会造成数据丢失
第5个回答  2012-05-04
A ,不能把1.3浮点赋值给整型追问

其他的为什么呢

追答

哦,D是错误,不好意思理解错了。

A、会自动转换成INT
B,把运算得结果赋值给 a,
C 赋值字符'a'给 a,会自动转换成97
D 系统会认是个字符数组,所以D应该是 char a[]="a";。

本回答被提问者采纳