C语言笔记3:分支与循环

文章目录

C语言笔记3:分支与循环

C语言是结构化的程序设计语言

顺序结构:语句

选择结构(分支结构):if、switch

循环结构:while、do while、for

一、if语句

if

c 复制代码
#include <stdio.h>

int main()
{
	int input = 0;
	scanf("%d",&input);
	if(input % 2 == 1)
		printf("输入数据是奇数\n");
	return 0;
}

流程图:

之前说C语言是结构化的语言,现在看所谓顺序结构 在图中就体现为一个矩形分支结构 则为一个菱形

else

c 复制代码
#include <stdio.h>

int main()
{
	int input = 0;
	scanf("%d",&input);
	if(input % 2 == 1)
		printf("输入数据是奇数\n");
	else
   	printf("输入数据是偶数\n");
   
	return 0;
}

悬空else问题

如果有多个if 和 else ,else首先和最近的if匹配

二、短路

C语言的逻辑操作符是从左向右运算的,如果左边的表达式结果已经决定了整个逻辑表达式的判断结果,就不会继续运算了

三、switch语句

c 复制代码
switch (expression) {
case value1:
	statement
case value2:
	statement
default:
	statement
}

不加break就会一直往下执行,default表示无匹配结果的时候做什么

四、while语句

c 复制代码
#include <stdio.h>

int main()
{
	while(1)
		printf("hahaha\n");
		
	return 0;
}

流程图:

五、for循环

c 复制代码
for(表达式1;表达式2;表达式3)
{
	语句;
}

流程图:

在C89标准之前,for表达式1定义的变量的作用域生命周期和它所在的代码块一致,C99以及以后的标准,在表达式1定义的变量不能在循环外部使用。所以对于我们而言,最佳实践是,不要在循环外使用循环定义的变量

六、do while

c 复制代码
do
{
	printf("haha\n");
}while(1);

do {} while();是一条语句

七、goto

goto 语句用于跳出多层循环

c 复制代码
for(...)
{
	for(...)
	{
		for(...)
		{
			//...
			if(error)
				goto error;
		}
	}
}

error:
	//...
```c
for(...)
{
	for(...)
	{
		for(...)
		{
			//...
			if(error)
				goto error;
		}
	}
}

error:
	//...
相关推荐
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于Java的学校住宿管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
rookieﻬ°2 小时前
PHP框架漏洞
开发语言·php
busideyang2 小时前
为什么推挽输出不能接收串口数据,而准双向口可以?
c语言·stm32·单片机·嵌入式硬件·嵌入式
炸膛坦客2 小时前
单片机/C/C++八股:(二十)指针常量和常量指针
c语言·开发语言·c++
爱编码的小八嘎2 小时前
C语言完美演绎4-8
c语言
智者知已应修善业2 小时前
【proteus中lm339电压滞回比较器达到三角波转换成方波】2023-4-13
驱动开发·经验分享·笔记·硬件架构·proteus·硬件工程
兑生3 小时前
【灵神题单·贪心】1481. 不同整数的最少数目 | 频率排序贪心 | Java
java·开发语言
551只玄猫3 小时前
新编大学德语1第三版笔记 第5课Essen und Trinken
笔记·学习笔记·德语·外语·德语a1·自学德语·新编大学德语
炸膛坦客4 小时前
单片机/C/C++八股:(十九)栈和堆的区别?
c语言·开发语言·c++
零雲4 小时前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试