永发信息网

printf("++i=%d \n++i=%d \n--i=%d \n--i=%d\n",++i,++i,--i,--i); 解释一下输出结果为什么等于8 7 6 7

答案:2  悬赏:0  手机版
解决时间 2021-03-09 11:26
#include
int main(void){
int i=8;
printf("The raw value: i=%d\n", i);
printf("++i=%d \n++i=%d \n--i=%d \n--i=%d\n",++i,++i,--i,--i);
return 0;
}
最佳答案
您好,这样的:
#include
int main(void){
int a=15;
long float b=123.1234567;
// 原来b的定义为 float b=123.1234567;
// 经读者@邓小良反馈,笔者发现会溢出,在前面加了long
double c=12345678.1234567;
char d='p';

printf("a=%d\n", a);
printf("a(%%d)=%d, a(%%5d)=%5d, a(%%o)=%o, a(%%x)=%x\n\n",a,a,a,a); // %% 可以输出 %

printf("a=%f\n", b);
printf("b(%%f)=%f, b(%%lf)=%lf, b(%%5.4lf)=%5.4lf, b(%%e)=%e\n\n",b,b,b,b);

printf("c=%f\n", c);
printf("c(%%lf)=%lf, c(%%f)=%f, c(%%8.4lf)=%8.4lf\n\n",c,c,c);

printf("d=%c\n", d);
printf("d(%%c)=%c, d(%%8c)=%8c\n",d,d);
return 0;
}
全部回答

i++ 是个表达式,它的值等于i。相当于 t=i; i=i+1; 输出的是t的值。
也即是先算后加。所以i++=16.

j=(i++)+i=16+16=32.

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
遂宁到泸州怎么坐车最划算?
南充市中心医院-综合大楼这个地址在什么地方
【北魏孝文帝改革的背景】北魏孝文帝改革背景
求解读这几个字,
红枣闻着的酸味是不是防腐剂
[楚留香] 一共有多少章??
华信公司地址在哪,我要去那里办事
深圳坪山竹杭第一工业区有什么厂招司机吗?
深圳市豪泰汽车服务有限公司贝尔车仁分店在什
剑灵新12人本泰天王陵出什么武器
【一公尺等于多少厘米】1公尺等于多少厘米
我今年五十二岁,老公去世了,我想也个老伴,
山东临沂和甘肃陇南哪里发展好?
怪物猎人里封龙剑怎么得
卓异机顶盒e09我的卓异机顶盒出现E09是什么意
推荐资讯
迟疑的近义词是什么
北京鸟巢英语怎么说
无公害蔬菜水果店在什么地方啊,我要过去处理
2005年10月12日.神舟六号载人飞船成功发射.我
可以的古义
个人有小额贷款还可以贷款买车吗
文言文断句的标志词有哪些。急用,谢谢
哪个歌歌词里有他是牛顿这句歌词
孩子腿短,身子长,怎么能把腿练长
Our English teacher is_______ the classroo
宁西铁路是我国跨世纪铁路建设中一条横贯东西
诺基亚lumia的优点?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?