C语言——流程控制:if...else、switch...case

控制类语句:

 逻辑运算符:

选择语句:

if...else:

  

if()括号内的内容终究会被转换成0,1,满足的话即为1,不满足的话为0。因此要注意,()括号内因为条件语句,不能是赋值语句

示例一:比较两个数的大小,按照从小到大输出
#include<stdio.h>

int main()  //不管输入两个数的大小,保证data1存放其中较小的数
{
	int data1;
	int data2;
	int datatemp;
	printf("请输入你的数据:\n");
	scanf("%d%d",&data1,&data2);
	
	if(data1 > data2)  //交换
	{
		printf("========\n");  //判断程序是否进入了循环,用来调试代码
		datatemp = data1;
		data1 = data2;
		data2 = datatemp;
	}
	printf("%d,%d",data1,data2);
	return 0;
}

 示例二:输入一个字符,判别它是否为大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。

#include<stdio.h>

int main()
{
	char cdata;
	
	printf("请输入一个字母:\n");
	scanf("%c",&cdata);
	
	if(65 <= cdata && cdata <= 90){                 //判断输入是否是大写字母
		printf("它对应的小写字母是:%c",cdata+32);
	}else if(97 <= cdata && cdata <= 122){          //判断输入的是否是小写字母
		printf("它本来就是小写字母:%c",cdata);
        }else{
			printf("你输入的不是字母\n");
		}
	
	return 0;
}

switch...case:

存在意义:if语句只有两个分支可供选择,而实际问题中常常需要用到多分支的选择。例如,学生成绩分类(85 分以上为'A'等,70~84 分为'B'等,60~69 分为'C'等),人口统计分类(按年龄分为老、中、青、少、儿童),工资统计分类,银行存款分类等。当然这些都可以用嵌套的if语句来处理,但如果分支较多,则嵌套的if语句层数多,程序冗长而且可读性降低。C语言提供 switch 语句直接处理多分支选择。

结构示例:
#include<stdio.h>

int main()
{
	int data;
	char cdata;
	
	printf("请输入一个数:\n");
	scanf("%d",&data);
	
	switch(data){
		case 1:
			printf("符合1的情况\n");
			break;
		
		case 2:
			printf("符合2的情况\n");
			break;
		
		case 3:
			printf("符合3的情况\n");
			break;
		
		default:
		printf("符合其他情况\n");
	}
	
	getchar();  //吸收掉上一个scanf函数输入后的换行符
	
	printf("请输入一个字符:\n");
	scanf("%c",&cdata);
	switch(cdata){
		case 'a':
			printf("符合a的情况\n");
			break;
		
		case 'b':
			printf("符合b的情况\n");
			break;
		
		case 'c':
			printf("符合c的情况\n");
			break;
		
		default:
		printf("符合其他情况\n");
	}
	return 0;
}
示例一:

#include<stdio.h>

int main()
{
	float number;
	
	printf("请输入任意一个数x=:");
	scanf("%f",&number);
	
	if(number < 1){
		printf("对应的函数值y=:%.3f",number);   //保留三位小数
	}else if(number >= 1 && number < 10){
			printf("对应的函数值y=:%.3f",2*number-1);
		}else{
			printf("对应的函数值y=:%.3f",3*number-11);
		}
	return 0;
}

相关推荐

  1. C语言】数据结构和流程控制语句

    2024-07-14 05:36:01       39 阅读
  2. Linux C++ 004-流程控制语句

    2024-07-14 05:36:01       29 阅读
  3. js流程控制语句

    2024-07-14 05:36:01       45 阅读
  4. Python流程控制语句

    2024-07-14 05:36:01       51 阅读
  5. MySQL-流程控制语句

    2024-07-14 05:36:01       36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-14 05:36:01       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-14 05:36:01       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-14 05:36:01       58 阅读
  4. Python语言-面向对象

    2024-07-14 05:36:01       69 阅读

热门阅读

  1. Qt/QML学习-BusyIndicator

    2024-07-14 05:36:01       22 阅读
  2. 算法热门面试题二

    2024-07-14 05:36:01       29 阅读
  3. pyinstaller系列教程(一)-基础介绍

    2024-07-14 05:36:01       20 阅读
  4. 大语言模型系列-Transformer

    2024-07-14 05:36:01       25 阅读
  5. Layer2是什么?为什么需要Layer2?

    2024-07-14 05:36:01       25 阅读
  6. SpinalHDL之实用工具(上篇)

    2024-07-14 05:36:01       22 阅读