9.C语言初阶——分支语句

本文详细介绍了C语言中的四种主要控制语句:条件判断(if,switch)、循环执行、转向语句以及分支结构的使用,包括else的匹配规则和多分支结构实例。同时涉及如何判断奇数和使用switch语句进行日期转换的示例。
摘要由CSDN通过智能技术生成

1.语句分类

表达式语句;函数调用语句;控制语句;复合语句;空语句。

控制语句用于控制程序的执行流程,以实现程序的各种结构方式(顺序结构、选择结构、循环结构),他们由特定的语句符号组成。

C语言有九种控制语句,分为3类:

1.条件判断语句(分支语句):if语句、switch语句;

2.循环执行语句:do while语句、while语句、for语句;

3.转向语句:break语句、goto语句、continue语句、return语句。

2.分支语句(选择结构)

2.1if语句

注:默认if语句后面只能跟一条语句,若跟多条语句需要加大括号{}(也叫代码块)。

语法结构

 

多分支  

 if(表达式)

 语句;

 if(表达式)

 语句1;

 else

 语句2;

if(表达式1)

语句1;

else if(表达式2)

语句2;

else

语句3;

int main()

{

int age = 10;

if (age == 18)

{

printf("成年!");

}

return 0;

}

int main()

{

int age = 10;

if (age < 18)

{

printf("未成年!");

}

else

{

printf("成年!");

}

return 0;

}

int main()

{

int age = 0;

scanf_s("%d", &age);

if (age < 18)

printf("未成年!");

else if (age >= 18 && age < 28)

printf("青年!");

else if (age >= 28 && age < 48)

printf("中年!");

else if (age >= 48 && age < 68)

printf("壮年!");

else

printf("老年!");

 

return 0;

}

(1)悬空else

else的匹配:else是和它离的最近的if匹配的。

代码

适当的使用{}可以使代码的逻辑更加清楚。

int main()

{

int a = 0;

int b = 2;

if (a == 1)

if (b == 2)

printf("hehe\n");

else

printf("haha\n");

return 0;

}

int main()

{

    int a = 0;

    int b = 2;

    if (a == 1)

    {

        if (b == 2)

        {

            printf("hehe\n");

        }

    }

    else

    {

        printf("haha\n");

    }

    return 0;

}

(2)if书写形式对比

代码1

代码2

代码3

if (condition) {

return x;

}

return y;

if (condition)

{

return x;

}

else

{

return y;

}

int num = 1;

if(num == 5)

{

printf("hehe\n");

}

int test()

{

int a = 4;

if (a == 3)

return 1;

return 0;

}

 

int main()

{

int r = test();

printf("%d\n", r);

return 0;

}

int test()

{

int a = 4;

if (a == 3)

return 1;

else

return 0;

}

int main()

{

int r = test();

printf("%d\n", r);

return 0;

}

int num = 1;

if(5 == num)

{

printf("hehe\n");

}

 

(3)练习

1. 判断一个数是否为奇数

自己

实例

int main()

{

int a = 0;

scanf_s("%d", &a);

if (a >= 0)

{

if (a % 2 != 0)

{

printf("%d是奇数\n", a);

}

else

{

printf("%d是偶数\n", a);

}

}

return 0;

}

int main()

{

int num = 0;

scanf_s("%d", &num);

if (num % 2 == 1)

printf("奇数\n");

else

printf("No\n");

 

return 0;

}

2. 输出1-100之间的奇数

代码1

代码2

int main()

{

int a = 1;

while (a <=100)

{

 

if (a % 2 != 0)

{

printf("%d", a);

 

}

a++;

}

return 0;

}

int main()

{

int i = 1;

while (i<=100)

{

printf("%d ", i);

i += 2;

}

 

return 0;

 

}

2.2switch语句

switch语句可以被嵌套!!

switch(整型表达式)

{

// 语句项-->是一些case语句

case 整形常量表达式:

语句;

break;

}

if语句

switch语句

int main()

{

int day = 0;

scanf_s("%d", &day);

if (day == 1)

printf("星期一\n");

else if (day == 2)

printf("星期二\n");

else if (day == 3)

printf("星期三\n");

else if (day == 4)

printf("星期四\n");

else if (day == 5)

printf("星期五\n");

else if (day == 6)

printf("星期六\n");

else if (day == 7)

printf("星期日\n");

else

printf("输入错误!");

return 0;

}

int main()

{

int day = 0;

scanf_s("%d", &day);

switch (day)

{

case 1:

printf("星期一\n");

break;

case 2:

printf("星期二\n");

break;

case 3:

printf("星期三\n");

break;

case 4:

printf("星期四\n");

break;

case 5:

printf("星期五\n");

break;

case 6:

printf("星期六\n");

break;

case 7:

printf("星期日\n");

break;

default:

printf("输入错误\n");

 break;

}

return 0;

}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值