前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言程序设计核心详解 第四章&&第五章 选择结构程序设计&&循环结构程序设计

C语言程序设计核心详解 第四章&&第五章 选择结构程序设计&&循环结构程序设计

原创
作者头像
小徐在进步
发布2024-10-01 21:22:03
2320
发布2024-10-01 21:22:03
举报
文章被收录于专栏:c语言程序设计

第四章 选择结构

1.定义:从main()开始,由上往下有哪些语句执行,哪些语句不执行

1.两类表达式

1.1 关系运算符及关系表达式(得到的值要么是1,要么是0)

< <= > >= == !=

< <= > >= 是6级

== != 是7级

同级顺序是自左往右

例题:

代码语言:c
复制
4>5     0
5==5    0
7=7     非法,赋值运算符左边必须为变量
5>4>3   0  5>4是1,1>3是0,所以是0

1.2 逻辑运算符与逻辑表达式

&& || !(单目)

单目是2级,&&是11级 ,||是12级

(1)在c语言中逻辑表达式的值只有1或0两种值。其中,1表示“真”,0表示“假”

(2)&&是全真为1,有0为0,||是有1为1,全0为0 ,!是1变0,0变1

例题:

代码语言:c
复制
a++>5 
++a>5
5||5
4<3 && 9
0&&7
5>4>3&&3

2.if语句

格式1:

代码语言:c
复制
if(表达式)
	语句序列1;=>if子句
后继语句

格式2:

代码语言:c
复制
if(表达式)
	语句序列1;
else
	语句序列2;

格式3:if语句的嵌套

代码语言:c
复制
if(表达式1)
	if(表达式2)
		语句序列11;
	else 
		语句序列12;
	else
		语句序列2;
	

3.switch语句

switch语句值得注意的点有很多,要小心谨慎。

代码语言:c
复制
switch(表达式)
{
case 常量表达式1:子句1
case 常量表达式2:子句2
...............
case 常量表达式n:子句n
default: 子句n+1
}

注意点:

  1. 【default: 子句n+1】该条语句可以有,也可以省略
  2. case后只能接常量整型或字符型,不能有变量和逗号表达式
  3. 各case后常量不能出现相同的值
  4. 只有每一个case常量表达式都不符合,才会跳转执行default
  5. 在子句不执行break语句的情况下,符合常量表达式1,会把子句1到n,以及default内子句n+1

来看几个列子:深刻理解switch语句

不带break:

代码语言:c
复制
#include<stdio.h>
int main()
{
    int x;
    scanf("%d",&x);
    switch(x)
{
    case 1:printf("语句1\n");
    case 2:printf("语句2\n");
    case 3:printf("语句3\n");
    default:printf("语句default\n");
}      
}

带break:

代码语言:c
复制
#include<stdio.h>
int main()
{
    int x;
    scanf("%d",&x);
    switch(x)
{
    case 1:printf("语句1\n");break;
    case 2:printf("语句2\n");break;
    case 3:printf("语句3\n");break;
    default:printf("语句default\n");
}     
}

运算符先后顺序大总结

第一级:()

第二级:单目

第三级-第十二级:双目

双目运算符:按顺序分,算术,关系,逻辑三类运算符

第十三级:三目

第十四级:=

第十五级:,

单目运算符就是一个符号的,双目就是两个符号的

第五章 循环结构

定义:从main()开始,从上向下,使得某些语句重复执行。 循环结构的程序:在顺序结构中加入循环控制语句。

1.循环控制语句(4类)

1.1 while语句(当型循环)

第一类:

代码语言:c
复制
while(表达式)
{
	循环体语句序列;
}

先执行表达式,再执行循环体语句

执行完循环体语句,再回到表达式,判断是否继续进入循环

while执行一条语句或一条复合语句

1.2 do-while语句(直到型循环)

第二类:

代码语言:c
复制
do
{
	循环体语句序列;
}while(表达式);

先执行循环体语句,然后进入表达式,判断是否进行下一次循环

do-while也是就近控制一条或花括号的复合语句

1.3 for语句

第三类:

代码语言:c
复制
for(表达式1 ;表达式2 ;表达式3)
{
 	循环体语句序列;
}

表达式1是初始化,表达式2是判断,表达式3是增减语句

for循环流程描述:

表达式1,是初始化,就执行一次,然后从表达式1到表达式2,判断表达式2

执行循环体语句

执行表达式3,回到表达式2判断,判断决定结束循环或进入到循环体语句

1.4 if(){} else{} goto配合使用

第四类(几乎不用):

if(){} else{} goto配合使用

2.两个控制语句---break continue

格式:break

功能:终止退出

范围:循环体中和switch体

匹配最近的循环体

格式:continue

功能:结束一次循环继续

范围:循环体中

匹配最近的循环体

3. 例题

1.下面程序的运行结构是()

代码语言:c
复制
# include<stdio.h>
int main()
{
     int num=0;
     while(num<=2)
     {
         num++;
         printf("%d\n",num);
     }
}

运行结果:

代码语言:c
复制
1
2
3

2.设整型变量x的当前值为3,执行以下循环语句后,输出的结果是()

代码语言:c
复制
# include<stdio.h>
int main()
{
    int x=3;`1
    do
        printf("%d\t",x-=2);
    while(!(--x));
}

运行结果:

代码语言:c
复制
1	-2

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第四章 选择结构
    • 1.两类表达式
      • 1.1 关系运算符及关系表达式(得到的值要么是1,要么是0)
      • 1.2 逻辑运算符与逻辑表达式
    • 2.if语句
      • 3.switch语句
        • 运算符先后顺序大总结
        • 第五章 循环结构
          • 1.循环控制语句(4类)
            • 1.1 while语句(当型循环)
            • 1.2 do-while语句(直到型循环)
            • 1.3 for语句
            • 1.4 if(){} else{} goto配合使用
          • 2.两个控制语句---break continue
            • 3. 例题
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档