c语言中的if循环和while循环是怎么回事啊,在下智商低研究了一天没弄明白求大神指教
你应该给answer赋初值'Y',或者使用 do while结构,这是第一个问题。
你第二个循环里面没有重新scanf读取n的值,这是第二个问题。
使用scanf的时候会遇到 缓冲区 没被清空(里面还有个回车换行),可以用fflush(stdin),不过这个有点忘了,你自己百度一下,这是第三个问题。
----------------------------------------------------------------------
你也不追问,只是评论里面问,我只好再修改答案了。
下面是我修改的代码
#include#include#includemain(){int n, x;char answer = 'Y';srand((unsigned)time(NULL));//初始化随机函数,不加这句的话,每次运行生成的随机序列都是一样的printf("这是一个猜数字的游戏
");do{x = rand() % 30 + 1;printf("请输入一个1到30间的数字
");scanf("%d", &n);while(n > 30 || n < 1){printf("输入错误只能是1到30间的数字
请重新输入
");scanf("%d", &n);}if(n == x){printf("你猜中了!恭喜!");}else{printf("你猜错了 数字是%d
", x);}printf("还要继续吗 Y OR N
");fflush(stdin);scanf("%c", &answer);}while( toupper(answer)== 'Y');}其中随机数函数你没有初始化,
工程2 答案为54是因为你用了++n,注意是n自增之后再判断循环是否继续。
从n=1开始分析,n=1时,n自增为2,此时sum=0+2=2;
n=2时,n自增为3,此时sum=2+3=5;
n=3时,n自增为4,此时sum=5+4=9;
n=4时,n自增为5,此时sum=9+5=14;
n=5时,n自增为6,此时sum=14+6=20;
n=6时,n自增为7,此时sum=20+7=27;
n=7时,n自增为8,此时sum=27+8=35;
n=8时,n自增为9,此时sum=35+9=44;
n=9时,n自增为10,此时sum=44+10=54;
n=10时,n自增为11,不符合循环继续的条件,循环结束。
故sum=54。
循环有for ,while 和do....while,if是判断语句!
if是判断为主,while则为循环为主
while与if的区别是什么?
1、用法 while和if本身就用法不同,一个是循环语句,一个是判断语句。2、运行模式 if 只做判断,判断一次之后,便不会再回来了。while 的话,循环,直到结果为false,才跳出来。3、使用效果 链表的结构,要一直读下去,直到读完整个链表结构,所以需要while。if的话只读一次,便跳出了 。
C语言中if与 while哪个效率好些?
if 是条件语句,while 是循环语句 这两个效率没有办法比较。
if循环和while循环有什么区别?
if只是简单的判断,无法执行循环,只是选择性的执行后面的语句1次或者0次 while是典型的循环,如果条件满足就反复执行一段语句,直到条件不满足为止
一段c语言里面又有while语句又有if语句是怎么回事
while和if可以嵌套,意思是while条件成立了,进入循环体了要执行的功能就是继续判断条件以便进一步决定程序的走向。举个例子吧,int a=7;while(1){ if(a==7){ a=9;break;} } 这里while条件是肯定成立的,始终循环,关键是if条件是否成立,成立了循环就结束了,否则一直在那循环执行!!!当然...
if语句和while语句有什么区别?
2、while循环也被称为“当”型循环。即当条件为真时,执行循环体中。在R语言中,while循环的语法格式如下:while(cond){expr}其中,cond是一个逻辑条件表达式,其值应为TRUE或FALSE;expr是循环体中的语句,即当cond条件为TRUE时要执行的表达式或若干语句。例如:1、if用来做条件判断 if用来做条件...
C语言中while和if的嵌套
相当于 while(表达式1){ if(表达式2){ 表达式3;} else { 表达式4;} } 首先进行 表达式1 判断,true,跳到if语句,否则退出。上面while为true,进行表达式2判断,1.为true 运行表达式3,之后在跳到while那 再 判断 2.为false运行表达式4,之后在跳到while那再判断 ...
在c语言中,三大语句if,while,do while的区别与共同之处有哪些?_百度知 ...
共通之处在于都会进行条件判断。区别如下:if语句是判断语句,只执行一次,例如 :if(a>0) b=1;当a为正数时,才执行b=1;若a不是正数,那么b=1;就不会运行到。之后if语句就结束了,只判断一次a>0这个条件 while是循环语句,反复执行直到其循环条件不满足为止。例如:while(a>0){ b=b+1;a=...
for ,while ,if 的区别
简言之,if语句基于一个条件决定执行与否,而while语句则不断执行代码直到满足特定条件。谈及while循环与for循环,二者都能在循环体中修改迭代变量,但for循环的初衷是用于遍历固定的序列,通常不改变迭代变量。下面是在while循环中修改迭代变量的示例:而在for循环中,我们通常不会改变迭代变量,因为循环会...
c++中while语句与if语句的区别是什么,请高手解释一下,谢谢
while语句是可以实现循环的 而if只是判断条件而决定是否执行 简单的说if的语句只能执行一遍,而while可以执行许多遍
python中 while, if, for 语句有什么区别吗?比如在进行range函数循环时...
while是Python中的循环语句,if属于条件选择语句,而for in属于迭代语句。while 用于重复执行操作,重复的条件不一定是特定的次数,只要条件满足即可:打印1-5的平方x = 1while x <= 5: print(x ** 2) x = x + 1if 与 循环迭代无关,在默认顺序执行代码的情况下,满意某个条件要以执行...