您的位置:首页 > 新闻 > 热点要闻 > 【C语言从入门到入土】第三章流程控制

【C语言从入门到入土】第三章流程控制

2025/4/6 16:12:20 来源:https://blog.csdn.net/v13111329954/article/details/139483053  浏览:    关键词:【C语言从入门到入土】第三章流程控制

第三章 流程控制

正式开始对流程控制语句的学习

不是你的能力,决定了你的命运,而是你的决定,改变了你的命运。

想,都是问题,做,才是答案。站着不动,永远是观众,想到做到,才是王道

控制类语句

在这里插入图片描述

在这里插入图片描述

帮助理解

在这里插入图片描述

1.if()…else… 条件语句,层层递进的

if(条件){表达式01
}else{表达式02
};

在这里插入图片描述

在这里插入图片描述

关系运算符

在这里插入图片描述

如何交换两个数的值?

在这里插入图片描述

不交换土办法

在这里插入图片描述

逻辑运算符

在这里插入图片描述

if…else嵌套
include <stdio.h>int main(){if(){}else if(){}else if(){}return 0;
}
如果有三个数,如何让它从小到大排序,要用到冒泡排序法,之后学习
#include <stdio.h>
int main(){int a,b,c;printf("请依次输入三个数\n");scanf("%d%d%d",a,b,c);//分析出会出现三种情况,a最大,,b最大,,c最大if(a>b&&a>c){}return 0;
}

2.switch( ) case… 并列,多分支语句

可以是字符,也可以是数字,,,直接看代码学习怎么用

在这里插入图片描述

switch(输入的条件){case 1:表达式01;break; //必须要加上这个语句才能结束case 2:表达式02;break;case 3;表达式03;break;default:条件都不符合;//在不满足上述所有情况时使用}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.1练习题

在这里插入图片描述

#include<stdio.h>
int main(){int x,y;printf("请输入x的值为多少");scanf("%d",&x);switch(x){case 0:y=x;break;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:y=2*x-1;break;default:3*x-11;break;}printf("你输入的数y=%d,x=%d",y,x);return 0;
}

运行结果,,基本上算是成功了吧,,,无法控制是负数的情况,还有小数,比较坑,,这个故事告诉我们,要选择正确的语句,,如果if…else会简单很多,,不要勉强自己在这里插入图片描述

3.while循环控制语句

在这里插入图片描述

while(条件){			//注意条件只识别,0和1,如果一直是一个正数,这就是一个死循环,要杜绝这种情况,会把单片机内存无限占用//Ctrl+c可以强行终止表达式;
}/******举个例子,,输入十次我爱你*****/
#include <stdio.h>
int main(){int a=0;while(a<10){a=a+1;	//每循环一次,a都会加上一个1//还有一种写法,比较简介a++;}return 0;
}
3.1练习题

在这里插入图片描述

/*错误案例*/
#include<stdio.h>
int main(){int a=0;int b=0;while(a<=100){a=a+1;b=b+a;printf("b的值为%d",b);}printf("最终值为%d",b);return 0;
}

在这里插入图片描述

发现错误了嘛??先写条件的话,会多算一个101,,,以后要注意了

4.do…while

先做一次循环再判断,

在这里插入图片描述

do{}while();

5.for(){ }

#include<stdio.h>
int main()//三个表达式
{int sum;int data=1;//表达式1,,条件的初始值while(data<=100){	//表达式2,,条件的临界值sum=sum+data;data++;	//表达式3,,条件的改变}printf("%d\n",sum);return 0;
}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

语句全省略的话就是一个死循环

6.break,,,在还没有达到临界值的情况下,提前结束循环

在这里插入图片描述

在这里插入图片描述

==介绍一个重要概念,,==取余

% //取余

在这里插入图片描述


break结束整个循环,,,,contine仅仅结束本次循环

7.用contine提前结束本次循环

在这里插入图片描述

#include<stdio.h>
int main(){for(int a=100;a<=200;a++){		//注意要用分号,,因为每个表达式换成单个/*首先要明确一点,能被3整除,则余数就是0*/if(a%3 ==0){continue;} printf("%d",a);}return 0;
}

运行结果

在这里插入图片描述

循环嵌套

#include <stdio.h>
int main(){int i,j;int data =1;for(i=1;i<=5;i++){for(j=1;j<=3;j++){printf("i=%d , j=%d\n",i,j);	//为了打印出行列,,研究行列的关系printf("data=%d",data++);	//为了研究一共有几个数}}
}

运行结果

数的个数等于,行列相乘,,

在这里插入图片描述

嵌套练习题

在这里插入图片描述

#include<stdio.h>
int main(){int i,j;for(i=1;i<=4;i++){for(j=1;j<=5;j++){printf("%d    ",i*j);}printf("\n");}return 0;
}

运行结果

在这里插入图片描述


版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com