C语言基础-1、逻辑类型和运算

一、逻辑类型和运算

  • #include <stdbool.h>
  • 之后就可以使用bool和true、false
  • ex1:
#include <stdio.h>
#include <stdbool.h>
int main()
{
	bool b = 6>5;
	bool t = true;
	printf("%d\n",t);
	t = 2;
	printf("%d\n",t);
	printf("%d\n",b);
	printf("%d\n",t);
	return 0;
}

二、条件运算和逗号运算
1、条件运算符

  • 条件运算符的优先级高于赋值运算符,但是低于其他运算符
  • count=(count>20)?count-10:count+10;
  • count=(count>20):条件,条件满足时执行问号后面的运算,条件不满足时执行冒号后面的运算
    *ex1:
#include <stdio.h>
#include <stdbool.h>
int main()
{
	count=(count>20)?count-10:count+10;
	//等价
	if(count > 20)
		count = count - 10;
	else
		count = count + 10;
}

2、逗号运算符

  • 逗号用来连接两个表达式,并以其右边的表达式的值作为它的结果。
  • 逗号的优先级是所有的运算符中最低的,所以它两边的表达式会先计算
  • 逗号的组合关系时自左向右,所以左边的表达式会先计算,而右边的表达式的值就留下来作为逗号运算的结果
  • 逗号运算符主要运用于for循环中,for(i-0,j=10; ; ...)
  • ex1:
#include <stdio.h>
#include <stdbool.h>
int main()
{
	int i;
	i = 3+4,5+6;
	printf("%d",i);
	return 0;
} 

三、级联和嵌套的判断
1、嵌套的if-else

  • 当if的条件满足或者不满足的时候要执行的语句也可以是一条if或if-else语句,这就是嵌套的if语句
  • else总是和最近的if匹配
  • ex1:
#include <stdio.h>

int main()
{
	const int ready = 24;
	int code = 0;
	int count = 0;
	scanf("%d %d",&code,&count);
	if(code == ready){
		if(count<20)
			printf("一切正常\n");
	}else
		printf("继续等待\n");//else跟第一个if匹配
	return 0;
}

2、级联的if-else

  • 一般用于分段函数等场景
  • ex1:
#include <stdio.h>
int main()
{
	int x;
	if(x<0){
		...
	}else if(x==0){
		.....
	}else{
		.....
	}
}

3、多路分支(switch-case)

  • switch语句可以看作是一种基于计算的跳转,在执行完分支中的最后一条语句后,如果后面没有break,就会顺序执行到下面的case里去,直到遇到一个break,或者switch结束位置
  • ex1:
#include <stdio.h>
int main()
{
	int type;
	scanf("%d",&type);
    //switch(控制表达式必须是整型)
    //case 后面可以是常量也可以是运算式
	switch(type){
		case 1:
			...;
			break;
		case 2:
			...;
			break;
		default:
			...;
	}
}
posted @   吃粥要吃烫的  阅读(81)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示