c语言以下循环体的执行次数是 1为什么
1.18下列程序执行后的输出结果是(小数点后只写一位)666.06.0为什么main(){doubled;floatf;lingl;inti;i=f=l=d=20/3;p...
1.18
下列程序执行后的输出结果是(小数点后只写一位)
6 6 6.0 6.0为什么
main() { double d; float f; ling l; int i; i=f=l=d=20/3;
printf("%d %ld %f %f \n", i,l,f,d);}
1.22
以下循环体的执行次数是 1为什么
mian() { int i,j; for(i=0,j=1;j<=j+1;i+=2,j--}printf("%d \n",i);} 展开
下列程序执行后的输出结果是(小数点后只写一位)
6 6 6.0 6.0为什么
main() { double d; float f; ling l; int i; i=f=l=d=20/3;
printf("%d %ld %f %f \n", i,l,f,d);}
1.22
以下循环体的执行次数是 1为什么
mian() { int i,j; for(i=0,j=1;j<=j+1;i+=2,j--}printf("%d \n",i);} 展开
4个回答
展开全部
1,20/3默认是用整型计算,再附值
2,for(i=0,j=1;j<=j+1;i+=2,j--)是个死循环
2,for(i=0,j=1;j<=j+1;i+=2,j--)是个死循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一题,20/3在C语言中默认是用整型计算的,因此结果只去整数部分,所以返回6,把6用%f打印出来就是6.0了。
第二题j<=j+1打错了吧。应该是i<j+1吧。这是个死循环,j<=j+1始终为真,怎么可能执行一次。
第二题j<=j+1打错了吧。应该是i<j+1吧。这是个死循环,j<=j+1始终为真,怎么可能执行一次。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不知道大家想过没有,在计算机中数是有范围的.所以我认为j<=j+1不是永为真.例如,当用8为来表示整数(有符号)时,127为最大整数,在加1,就变为-128了,此时条件不就不成立了.所以我认为,不一定是一个死循环,只是输出的次数太多,像个死循环.不知大家是否认可?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询