C++程序控制结构

2018-06-05  本文已影响10人  ppjuns

if 语句

if语句有两种形式,一个分支和两个分支的 if-else 语句

if(x>0)cout<<x<<endl;

if((a+b>c)&&(a+c>b)&&(bn+c>a)){
    cout<<a<<endl;
}else{
    cout<<b<<endl;
}

switch语句

表达式形如

switch(表达式)
{
    case 常量表达式1:语句1;break
    case 常量表达式2:语句2;break
    default:语句2;
}

case 后面没break 就会一直执行下去的,所以break是为了跳出switch。比如:

int year, month, days;
    cout << "year=";
    cin >> year;
    cout << "month=";
    cin >> month;

  switch (month) {
        case 1:
        case 3:
        case 5 :
        case 7:
        case 8:
        case 10:
        case 12:
            days = 31;
            break;
        case 4:
        case 6:
        case 9:
        case 11:
            days = 30;
            break;
        case 2:
            if ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0))
                days = 29;
            else
                days = 28;
  }
      cout << "days=" << days << endl;

循环控制

while 循环

表达式形如

while(表达式){
    循环体;
}

int s = 0, i = 1;
 while(i<100) {
           s += i;
           i++;
        cout<<"s="<<s<<",i="<<i<<endl;
       }

do-while� 语句

�形如

do{
    循环体
}while(表达式);


    int s = 0, i = 1;
    do{
           s += i;
          i++;
          cout<<"s="<<s<<",i="<<i<<endl;
    }while(i<100);

for 语句

表达式形如

for(表达式1;表达式2;表达式3){
    循环体;
}

等效于while循环

表达式1;
while(表达式2){
    循环体;
    表达式3;
}

另外 for 循环的表达式可以省略,分为以下几种

  1. for(;;)
  2. for(s=0,i=0;;)
  3. for(;i<100;)
  4. for(s=0,i=1;i<100;s+=1,i++);
// Fiboanacci斐波那契数列的前n项,形如0,1,1,2,3,5,8,13,21
int n,i,a0,a1,a2;
  cout<<"n=";
  cin>>n;
  a0=0;
  a1=1;
  cout<<a0<<'\t'<<a1<<'\t';
  for(i=3;i<=n;i++){
      a2=a0+a1;
      cout<<a2<<'\t';
      if(i%10==0){
          cout<<endl;
      }
      a0=a1;a1=a2;
  }

转向语句

break 无条件结束 switch 语句或者循环体 如for,do-while,while。

continue 用于循环体中,终止当前一次循环,不执行continue循环后续语句,而转向循环入口继续执行,如下:

int i=1;
while(i<=10){
    i++;
    if(i==2){
        continue;
    }
      cout<<i<<'\t';
}
//3  4  5   6   7   8   9   10  11  

当 i 等于 2 时不打印了。

break 和 coutinue 的区别在于 break是跳出整个循环或者switch语句,而coutinue是只跳出当前的循环,还会执行循环的。

goto语句

就是无条件转向语句,它与标号语句配合使用,一般的形式如下

goto 标号;
标号:语句;

goto apple;
apple:{
    cout<<"apple"<<endl;
};

本章小结

c++ 构成选择结构的条件语句有if 和 switch语句。

while ,do-while,for语句可以相互嵌套构成多重循环结构

break只在循环体或者switch使用

coutinue 只在循环体使用

goto 语句使用不符合结构化程序设计,应该尽量少用

上一篇下一篇

猜你喜欢

热点阅读