c语言程序 分支结构

来源:互联网 发布:金10数据网 编辑:程序博客网 时间:2024/05/18 03:11

分支结构又称选择结构,选择结构分为:if结构和switch结构

分支结构--------if

一般形式(第一种结构):

if(表达式)

{

    语句1

}

 后续语句:

如果表达式为真,则执行语句1,反之不执行。

#include <stdio.h>int main( int argc, char * argv){int a;if (a>5){printf("你运气真好!");
}printf("可惜了!");return 0;}
if 的第二种结构:

if(表达式)

{

      语句1

}else

{

    语句2

}

如果表达式为真则执行语句1,否则执行语句2。

#include<stdio.h>int main(int argc, char *argv){int num1,num2;if(num1>num2){printf("%d",num1);}else{printf("%d",num2)}return 0;}
if的第三种结构:

if(表达式1)

{

       if(表达式2)

   {

         语句1

    }else

    {

        语句2

    }

}else

{

语句3

}

如果表达式1为真,则接着判断表达式2,如果表达式2为真,则执行语句1,否则执行语句2,如果表达式1为假则执行语句3。

#include <stdio.h>int main( int argc, char *argv){int a;printf("请输入一个数字");scanf("%d",&a);if(a>4){if(a<10){a=8;}else{printf("太大了!");}}else{a=2;}return 0;}
if的第四种结构:

if(表达式1)

{

     语句1

}else if(表达式2)

{

   语句2

}else if(表达式3)

{

    语句3

}else

{

    语句4

如果表达式1为真,则执行语句1,否则判断表达式2,如果为真执行语句2,否则再判断表达式3,如果为真执行语句3,当表达式1、2、3都不成立时,会执行最后一个else语句。

#include<stdio.h>int main(int argc, char *argv){int score;if(90<=score&&score<=100){printf("A");}else if(80<=score&&score<90){printf("B");}else if(70<=score&&score<80){printf("C");}else if(60<=score&&score<70){printf("D");}else if(0<=score&&score<60){printf("E");}else{printf("错误");}return 0;}
if语句使用注意点:

1,if(条件)可以直接写分号“ ;”,表示空语句

2,if(条件)return 0;程序直接退出

3,if(1)、if(-1)表示永真、永假

4,if(条件)条件中比较大小,常量放左边,变量放右边

分支结构------switch

使用格式:

switch(表达式1)

{

     case常量表达式1:  语句1; break;

     case常量表达式2:  语句2; break;

     case常量表达式3:  语句3; break;

      ...        

      case常量表达式n:  语句n; break;

       default:   语句n+1;

       break;

}

计算表达式的值,并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时,即执行其后的语句,然后不再进行判断,如果表达式的值与所有case后的常量表达式都不不相同时,则执行default后的语句。



#include <stdio.h>int main(int argc,const char*argv[]){//1,提示用户输入    //2,进行转换打印结果    //40,20,30.....十位进行转换    //11,12,13......个位进行转换    //21,32,76....十位和个位同时进行转换    //10。。。。。    int a;    printf("请输入一个10到100之间的数\n");    scanf("%d",&a);    if (a==10)    {        printf("十");    }    else if (10<a&&a<20)    {        printf("十");               switch (int ge  = a % 10)        {            case 1:printf("一");            case 2:printf("二");            case 3:printf("三");            case 4:printf("四");            case 5:printf("五");            case 6:printf("六");            case 7:printf("七");            case 8:printf("八");            case 9:printf("九");            break;        }    }    else    {        switch (int shi = a /10)        {                       case 2:printf("二");            case 3:printf("三");            case 4:printf("四");            case 5:printf("五");            case 6:printf("六");            case 7:printf("七");            case 8:printf("八");            case 9:printf("九");                break;        }        printf("十");        switch (int g = a % 10)        {            case 1:printf("一");            case 2:printf("二");            case 3:printf("三");            case 4:printf("四");            case 5:printf("五");            case 6:printf("六");            case 7:printf("七");            case 8:printf("八");            case 9:printf("九");                break;        }    }        return 0;}






0 0