C语言选择控制结构

1:单支控制

在C语言中,单分支控制通过if语句实现,用于条件满足时执行特定代码块。其基本语法如下:

#include <stdio.h>

int main()

{

if(表达式1)语句1;

if(表达式2) 语句2;

return 0;

}

这里使用的逻辑是 如果 表达式1成立;执行语句1;表达式2成立执行语句2;在此之前需要了解打印和输入函数;

printf:

printf 是 C 语言中用于格式化输出的函数,将数据按照指定格式输出到标准输出设备(通常是屏幕)。

  • 格式化输出 :通过格式字符串(如 %d%f)控制输出的数据类型和样式。
  • 支持多种数据类型 :包括整数(%d)、浮点数(%f)、字符(%c)、字符串(%s)等。
  • 可变参数:可接受多个参数,按格式字符串的顺序依次匹配输出。

scanf:

scanf 是 C 语言中用于格式化输入的函数,从标准输入设备(通常是键盘)读取数据并存储到变量中。

  • 格式化输入 :通过格式字符串(如 %d%s)指定输入数据的类型和格式。
  • 变量地址传递 :需使用 & 运算符传递变量的地址(字符串数组除外)。
  • 输入匹配:按格式字符串解析输入数据,若类型不匹配可能导致错误。

我们现在写一个测试代码:

cs 复制代码
#include <stdio.h>
int main()
{
	int i;
	printf("请输入一个数:");
	scanf("%d", &i);
	printf("这个数为%d",i);

	return 0;
}

这里我们使用的VS2022;使用scanf可能出现关于生命安全周期问题;我们后面会教;

接下来我们实现单支控制功能:用vs2022显示功能;

cs 复制代码
#include <stdio.h>
int main()
{
	int i;
	while (1)
	{
		printf("请输入一个数:");
		scanf("%d", &i);
		if (i < 10)printf("IT方大同\n");
		if(i>10) printf("歌手方大同\n");
	}

	return 0;
}

代码意思为输入一个数字,如果小于10输出 "IT方大同 ",大于10 输出" 歌手方大同"

2:双支控制:

双支控制指通过条件判断选择两个不同的执行路径,通常使用if-else语句实现。其核心是根据条件表达式的真假决定执行哪一段代码块。

我们把上面的代码修改一下就可实现;

cs 复制代码
#include <stdio.h>
int main()
{
	int i;
	while (1)
	{
		printf("请输入一个数:");
		scanf("%d", &i);
		if (i < 10)printf("IT方大同\n");
		else printf("歌手方大同\n");  // 只修改了这里,意思为除了i<10;其他都执行这个语句
	}

	return 0;
}

3:课后练习:

输入一个数字判断是否大于一个数值;并打印出来(下次课前为答案代码)

相关推荐
雪碧透心凉_15 分钟前
while 循环与循环嵌套
开发语言·python
乐观勇敢坚强的老彭22 分钟前
信奥C++一维数组笔记
开发语言·c++·笔记
这就是佬们吗30 分钟前
Python入门⑤-异常处理、文件操作与实战项目
开发语言·数据库·python·算法·pycharm
asdzx6741 分钟前
Python PDF 拆分实战指南:单页拆分与按需页码范围拆分
开发语言·python·pdf
C++ 老炮儿的技术栈1 小时前
基于MFC+原生GDI手动自绘仪表盘控件
c语言·c++·visual studio·控件·工业控制·gdi·自绘
孬甭_1 小时前
C++ vector
开发语言·c++
小肝一下1 小时前
3. 单链表
c语言·数据结构·c++·算法·leetcode·链表·dijkstra
AOwhisky1 小时前
Python 学习笔记(第五期)——组合数据类型:列表、元组、集合与字典精讲——核心知识点自测与详解
开发语言·笔记·python·学习·云计算
炸膛坦客10 小时前
单片机/C/C++八股:(二十六)IIC 专题(I²C)---- 上集
c语言·c++·单片机
灯澜忆梦10 小时前
GO_并发编程---定时器
开发语言·后端·golang