c语言程序 分支结构

分支结构又称选择结构,选择结构分为: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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值