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:课后练习:

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

相关推荐
Chester_19995 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
EXI-小洲6 小时前
Java 操作 Word:字符串替换、图片插入、动态生成表格与API接口下载
java·开发语言·spring boot·word
会周易的程序员7 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
机器视觉知识推荐、就业指导7 小时前
为什么老说“纯 Qt 没啥就业市场”?
开发语言·qt
telepan7 小时前
Qt 开发避坑与性能指南:如何优雅、安全地定义全局常量字符串?
开发语言·qt
m0_695251497 小时前
Qt MaintenanceTool 使用国内镜像加速下载(超详细教程)
开发语言·qt
是隼人8 小时前
buuctf-pwn xdctf2015_pwn200题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
大衛說8 小时前
《Python 从入门到精通》系列总览与学习路线
开发语言·python·学习
可乐鸡翅yeah_10 小时前
hls.js 内存泄漏实战排查,直播 M3U8 长时间播放异常定位方案
开发语言·javascript·python·django·ecmascript·m3u8·m3u8在线
2601_9622035110 小时前
Java进阶07集合(续)
java·开发语言