发布网友 发布时间:2022-05-20 17:51
共4个回答
热心网友 时间:2023-11-06 03:07
其中有不少小的错误,作为程序它是不能运行的。
#include<stdio.h>运行后的输出是:
1,-2
分析运行过程:
y=2,a=1;
判断,为真,y变为1
进入do循环:
a=1*1=1; a++变为2
内循环判断y--为真,y变为0;
再次内循环:
a=2*0=0; a++变为1
内循环判断y--为假,y变为-1;
外循环判断为假,y变为-2;
所以,最后的输出是1,-2
热心网友 时间:2023-11-06 03:07
C语言中 -1<=i<1 这样的语句是无法达到你要的效果的,对于这个句子,C语言是这样处理的: (-1<=i)<1 (1) 这样的话,-1<=i为真,所以这个表达式的值为1,也就是说(1)这个表达式等价于(1<1)然后这个式子为假,所以不会进入该循环,所以i没有发生变化,也不会输出i,所以答案为-1 如果for循环写成这样:for (a=1,i=-1;-1<=i&&i<1;i++) 那么题主你的答案就对了。追问什么东西啊!深刻表示不采纳
热心网友 时间:2023-11-06 03:08
#include<stdio.h>追问我要的是过程
追答你应该是不懂 while语句和do while 语句的用法。
++y 和 --y都是在 先进行自加或自减后,在进入while循环中判断。
y++和 y--是先进行while循环中判断后,在对y的值进行加减。
后面是我的思路你大概看下
while语句中的内容如果成立了,则执行while循环,不成立结束while循环,。y=2,一开始while不等于-1.所以循环,y自减为1.执行后面语句。a=1x1=1; ++后a=2。 y不等于0,所以要循环,y自减为0.后执行a=1x0=0.a自加为1.因为y=0所以不执行do{}里面的循环,y自减后y=-1.在执行whiel再循环重新判断-1等于-1所以不循环,y自减为-2.
最后输出a=1,y=-2
热心网友 时间:2023-11-06 03:09
运行结果是:1,-2追问为什么,过程可以写一下么,或者我做不出来的关键步骤,麻烦您了你答案对了