C语言基础:运算符和表达式问题??我想破头了!!

公式如下:voidmain(){inta,b=322;floatx,y=8.88;charc1='k',c2;a=y;x=b;a=c1;c2=b;printf("%d,%... 公式如下:
void main(){
int a,b=322;
float x,y=8.88;
char c1='k',c2;
a=y;
x=b;
a=c1;
c2=b;
printf("%d,%f,%d,%c",a,x,a,c2);
}
int a,b=322;
float x,y=8.88;
char c1='k',c2;
printf("%d,%f,%d,%c",a=y,x=b,a=c1,c2=b);
本例表明了上述赋值运算中类型转换的规则。a为整型,赋予实型量y值8 88后只取整数8。x为实型,赋予整型量b值322, 后增加了小数部分。字符型量c1赋予a变为整型,整型量b赋予c2 后取其低八位成为字符型(b的低八位为01000010,即十进制66,按ASCII码对应于字符B).

如上就是答案,但是我课本上的是:1.实型赋予整型,舍去小数部分。前面的例2.9已经说明了这种情况。
2.整型赋予实型,数值不变,但将以浮点形式存放, 即增加小数部分(小数部分的值为0)。
3.字符型赋予整型,由于字符型为一个字节, 而整型为二个字节,故将字符的ASCII码值放到整型量的低八位中,高八位为0。
4.整型赋予字符型,只把低八位赋予字符量。
怎么好像是相反了,我就是想不明白.
展开
 我来答
Laplas
2009-05-12 · TA获得超过1万个赞
知道大有可为答主
回答量:2680
采纳率:50%
帮助的人:2499万
展开全部
甲赋予乙 到底应该怎么回事呢。
是 甲=》乙 还是 乙=》甲。
汉语就是模糊性的语言。2段话都使用了
“赋予”这个词。

不要管字面的意思啦。理解意思吧。
例如:
实数=》整数 小数部分被割掉了。正常吧。

整数=》实数 小数部分被割掉了。不通!整数本来就没有小数。

所以自己去理解作者到底是在说什么吧。
第一段, a为整型,赋予实型量y值
意思是 y=>a
第二段 实型赋予整型 意思是
实型=》整形
他们想要说的规则是一致的。

不能再说了再说我都糊涂啦。
情小辽1b
2009-05-12 · TA获得超过175个赞
知道小有建树答主
回答量:692
采纳率:0%
帮助的人:284万
展开全部
没什么问题。你自己迷糊了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wenhuan301
2009-05-13 · 超过27用户采纳过TA的回答
知道答主
回答量:83
采纳率:0%
帮助的人:0
展开全部
322转二进制为:101000010
取低八位为:01000010
你对照一下看看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式