概述
1 . while
while(条件)
语句
条件成立,语句执行,条件不成立,语句不执行。
while和for是完全等价的,可以相互转换。
特别情况:while(变量),比如while(i),i不为零就是真,i为零就是假,相当于while(i!=0)
2. do while
do
{ 语句 }
while(表达式); //注意分号不能省
do while 一般用于人机交互,执行顺序是,先执行do,在用while判断,真则继续语句。所以无论如何,语句都会先执行一次。
do while 解多个一元二次方程的实例:
#include <stdio.h>
#include <math.h>
int main() {
double a,b,c,delta,x1,x2;
char ch;
do {
printf("输入三个系数n");
printf("a=");
scanf("%lf",&a);
printf("b=");
scanf("%lf",&b);
printf("c=");
scanf("%lf",&c);
delta=b*b-4*a*c;
if(delta>0) {
x1=(-b+sqrt(delta)/(2*a));
x2=(-b-sqrt(delta)/(2*a));
printf("x1=%f,x2=%fn",x1,x2);
} else if(delta==0) {
x1=x2=(-b)/(2*a);
printf("x1=x2=%fn",x1);
} else {
printf("无解n");
}
printf("您想继续吗?(Y/N):");
scanf(" %c",&ch);//%c前面必须加一个空格
} while('y'==ch||'Y'==ch);
return 0;
}
//ctrl+shift+a devc++全文排版
3.switch
switch(表达式)
{
case 常量表达式1:语句1;
case 常量表达式2:语句2;
……
case 常量表达式n:语句n;
default:语句n+1;
}
所有case后面的常量表达式为了便于描述,成为标签,这些表达式都必须只能是枚举常量/常变量/数值常量/字符常量/宏名中的一种。
switch后面的括号里的“表达式”允许是任何类型。但是vc++中只允许int或者char;
#include <stdio.h>
int main()
{
int val;
printf("输入你要进入的楼层");
scanf("%d",&val);
switch(val)
{
case 1:
printf("一层开!n");
break;
case 2:
printf("二层开!n");
break;
case 3:
printf("三层开!n");
break;
default:
printf("还没有盖到这一层n");
break;
}
return 0;
}
语句执行顺序:case?和default 是程序的入口,找到程序入口以后执行语句,没有break就会继续向下执行,也就是说,如果满足case1,但是case1里面没有break,就会从case1的语句以后,从上往下,把所有语句都执行一遍,啥时候碰到break啥时候终止。
4 break
1. break用于循环就是终止循环
2.break用于switch就是用于终止switch
3.break不能直接用于if,除非if属于循环内部的一个子句
#include <stdio.h>
int main(void)
{
int i;
for(i=0;i<3;++i)
{
if (3>2)
break;
printf("hahan");
}
}
输出结果什么都没有
因为 break虽然是if内部语句,但是break终止的是外部的for循环,所以一个都没有。
而且在多个for循环中,break只能终止距离他最近的for循环,switch同理
5.continue
用于跳过本次循环的余下语句,转去判断是否进行下次循环。
for(1;2;3)
{
A;
B;
continue;//如果执行该语句,则执行后,会执行语句3,C和D会被跳过。
C;
D;
}
最后
以上就是危机学姐为你收集整理的while循环、switch、break、continue的全部内容,希望文章能够帮你解决while循环、switch、break、continue所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复