❶ c语言程序设计for循环次数的问题
这个题,对于for循环里面的数组a[b+1]=b+1可以不管,对解题没影响,只考虑b就行了。 b的初始值是2,第一次循环,由于是b++,即先运算再加一,故进到循环体里面b的值还是2,对于if判断语句不满足(b>4),条件判断语句没有执行,当运行到循环体里面的第二个b++时,b就由2自加一变为3,第一次出循环体时对应于第一个b++的运算结束了也要加一,故第一次出循环体时b变为了4; 第二次循环时,进入循环体里面b的值是4,也不满足if条件判断语句,到第二个b++时,b自加一变为5,第二次出循环体时,又自加一变为6; 第三次循环时,进入循环体里面b的值是6,满足if条件判断语句,循环结束。 从总体分析来看,每循环一次,b的值就要加2,for语句只循环了两次,故最后b的值为6。
❷ C语言如何使while循环两次
while里设一个变量作为标识循环完成一次++
❸ 刚学c语言,想用while做个循环,但是有点问题,就是循环体语句会执行两遍,详情如下
问题出在scanf("%c",&b);
你肯定每次输入的时候都是Y+回车或者N+回车。当你输入玩Y或者N这两个值会被存在b中,但是后面的回车在这里算是一个字符,前面得的Y和N被存在b中,后面输入的回车就会在下一次循环的时候直接被存在b中,所以第二个你是无法输入的,因为在第一次的时候你已经把回车给了第二次循环的b了,所以循环直接跳到第三次。
解决方法是在scanf("%c",&b);下面加一句getchar(); 这样回车会被getchar给得到,而不会影响到下一个寻坏。
❹ C语言循环语句用法
C语言循环语句用法有三种主要形式:
1.
for()循环
2.
while()循环
3.
do
{}
while();循环
for()循环用法:
for( e1 ; e2 ; e3 ) //注意三个区域间用分号来分隔,而不是逗号!!
{
for_statements ; //多条语句用{}括起来,单条语句可以不用,建议也使用,一:代码清楚,二:便于查错。 其它循环也是这样。
}
//说明:
//e1:变量初始化区,只执行一次
//e2:循环控制区,每次都要先检查e2表达式的结果是否为真,为真则进入循环区,否则,结束循环
//e3:循环变量变化区,每次执行完for_statements ;则转到这里,执行e3,然后转到e2
例:
int i;
for( i=0; i<10; i++ )
{
printf("%d ", i );
}while()循环用法:
循环控制变量初始化
while(e)
{
while_statements ; //包括循环控制变量 变化
}
//说明:
//e 循环控制条件,e为真则进入循环区,否则,结束循环 执行完while_statements ;后转到这里继续判断
例:
int i;
i=0;
while( i<10 )
{
printf("%d ", i );
i++; //循环控制变量变化
}do
{}
while();循环用法:
do {
do_while_statements ; //包括循环控制变量 变化
} while(e); //注意尾部有分号
//说明:
//与while()不同的是,这里可以没有循环变量的初始化,先进行循环语句的操作,然后,再判断是否继续进行,所以,这种循环,至少要执行一次do_while_statements ;而前两种,有可能一次都不执行循环语句。
例:
int i;
do {
printf("input number " );
scanf("%d", &i ); //循环控制变量 变化
printf("%d\n", i );
} while ( i<10 );
到这里,一定能得到一个大于10的i. 一般我们在要求输入一个数据必须符合规定时,这样写代码。
❺ c语言循环语句是什么
在C语言中循环可分为3中,while循环、do - while循环、for 循环。
while即:首先检查启动循环的条件是否满足,当条件满足时,不断地重复循环体内的语句,直到不满足条件就退出。
do while即:进入do while前不做检查,而是在执行完一轮循环后再来检查循环的条件是否满足,如果满足则继续下一轮循环,不满足则结束循环。
while循环和do while循环的区别:while循环是先判断条件,do while循环是在执行了一轮循环后再来判断条件,无论条件是否满足do while都至少会被执行一轮,而while循环是条件满足执行,不满足结束循环。
for循环类似一个计数循环,设定一个计数器,初始化它,然后在计数器到达某值之前重复执行循环体,同时每执行一轮循环,计数器值以一定步进进行调整。
循环语句一般用来解决需要重复执行某些语句的问题。
例1:画矩形,输入一行,包括四个参数:前两个参数为整数,依次代表矩形的高和宽(高不少于3行不多于10行,宽不少于5列不多于10列);第三个参数是一个字符,表示用来画图的矩形符号;第四个参数为1或0,0代表空心,1代表实心。输出画出的图形。
矩形的高和宽是已知的,那么输出行和列时,需要循环的次数就是已知的,可以用for语句来控制行和列的输出。
例2:余数相同问题,已知三个正整数a,b,c。现有一个大于1的整数x,将其作为除数分别除a,b,c,得到的余数相同。
❻ c语言用循环语句实现重复循环
不能单纯地使用if,可以配合函数或者goto跳转来实现。比如
int
start
=
1;
int
end
=
100;
int
s
=
0;
//以上是通用定义,我就不写多次了
//第一种方法,用goto
begin:
if(start<=end)
{
s
+=
start;
start++;
goto
begin;
}
//第一种方法结束
//第二种方法,函数递归
int
function(int
start,int
end)
{
if(start
<=
end)
return
start
+
function(start+1,end);
else
return
0;
}
以上两种方法可以在不使用for和while的前提下实现累加,但是单纯用if是无法实现的。
❼ c语言编程,为啥不是把三个循环游遍,而是只循环了最里面的循环。
很简单,C语言编译语句只按照从上到下的顺序编译,但是上一条语句没有执行完,是不会执行下一条的。所以先执行第一个for语句,可是第一个for语句的内容恰好是执行第二个for语句,而第二个for语句的内容又恰好是执行第三个for语句,所以第三个for语句执行完了,第二个for语句才能继续执行,而第二个for语句执行完了,第一个for语句才能执行,所以虽然只执行了for(five; five <= 2; five++),实际上却是三次循环都按次序执行了。
❽ C语言有没有简单的让一段程序连续运行两遍的语句
用while语句,i=2;while(i--){语句}
❾ C语言这道题怎么循环两次呢
首先要理解!(--x),指的是x先减去1,再取非值,如果结果为true,则继续执行
还有,--x指的是先减去1,然后再使用x值
第一遍,先执行
第二遍,,得到x=1,--x先减去1变成0,然后取非结果为true
所以是执行两遍的
❿ c语言getch();语句怎么在循环语句中会循环两次
#include <stdio.h>
main()
{
while(getchar()!=‘a’)
{
prinft (“输入错误!请重新输入”/n);
}
}