2021-10-24

这篇博客详细介绍了C语言中的运算符,包括求余运算符、格式化输出以及类型转换。此外,还讲解了分支结构如if和switch,以及循环结构如do-while、while和for的使用。文章通过实例演示了如何利用这些结构解决实际问题,如箱子匹配问题,强调了条件运算符和逻辑运算符在控制流程中的作用。
摘要由CSDN通过智能技术生成

一.运算与数据类型的笔记

1.使用求余运算符"%d"时,a%b中a和b必须都是整数。

2.printf函数中的格式化字符%符号具有转换说明的功能,若只是想显示%时,要写成%%,当使用不具有转换说明功能的puts函数时,输入%即输出%。

3.int/double得到的是double型,进行了隐式类型转换,想进行double和int的类型转换可以使用类型转换符(),列如(int)5.7就会去掉小数部分,变成int型的5.

4.0标志,设置了0标志则用0补齐位数,列如%09.9f。

5.条件运算符,a?b:c,表示如果a不为0即a为真,则结果是b的值,否则结果为c的值

max=(n1>n2)?n1:n2; //将较大的值赋给max//
printf("他们的差是%d",(n1>n2)?n1-n2:n2-n1); //进行差值运算//

 

二.分支结构与循环结构

1.逻辑与运算符&&:一假则假

 逻辑或运算符||:一真则真

2.if语句和switch语句

switch(n%3)
{
    case 0:puts("n能被3整除");
    break;
    case 1:puts("n除以3余1");
    break;
    case 2:puts("n除以3余2");
    break;
}

其中case是标签,case与0之间要有空格,如果没有break语句,程序就不会跳出switch语句,并继续往下执行。

比较两种语句,使用单一表达式分支的时候switch语句效果更好。

3.循环结构

do语句先循环后判断,循环体至少执行一次。

while语句和for语句先判断后执行,可能一次也不会执行。

4.多重循环中break语句只会跳出内侧的循环语句,执行continue语句时会跳过循环体剩余部分

5.前置递增运算符,如++a,该表达式是递增后的值,后置递减运算符,如a--,代表递减前的

值,即a的值。

6.德摩根定律:对各条件取非,再将逻辑或变成逻辑与,将逻辑与变成逻辑或,再取其否定,结果和原来一样。即x&&y和!(!x||!y)相等。

#include<stdio.h>
int main()
{
	int i,t,l1,w1,h1,l2,w2,h2,max1,mid1,min1,max2,mid2,min2;
	scanf("%d",&t);
	for(i=0;i<t;i++)
	{
		scanf("%d %d %d",&l1,&w1,&h1);
		scanf("%d %d %d",&l2,&w2,&h2);
		if(l1>w1)
		{
			max1=l1;
			min1=w1;
			if(w1>h1)
			{
				mid1=w1;
				min1=h1;	
			}
			else
			{
				mid1=h1;
			}
		}
		else if(l1>h1)
		{
			max1=l1;
			min1=h1;
			if(h1>w1)
			{
				mid1=h1;
				min1=w1;	
			}
			else
			{
				mid1=w1;
			}
		}
		else
		{
			max1=w1;
			min1=l1;
			if(l1>h1)
			{
				mid1=l1;
				min1=h1;	
			}
			else
			{
				mid1=h1;
			}
		}
		if(l2>w2)
		{
			max2=l2;
			min2=w2;
			if(w2>h2)
			{
				mid2=w2;
				min2=h2;	
			}
			else
			{
				mid2=h2;
			}
		}
		else if(l2>h2)
		{
			max2=l2;
			min2=h2;
			if(h2>w2)
			{
				mid2=h2;
				min2=w2;	
			}
			else
			{
				mid2=w2;
			}
		}
		else
		{
			max2=w2;
			min2=l2;
			if(l2>h2)
			{
				mid2=l2;
				min2=h2;	
			}
			else
			{
				mid2=h2;
			}
		}
		if((max1>=max2&&mid1>=mid2&&min1>min2)||(max1<=max2&&mid1<mid2&&min1<=min2))
		{
			printf("yes\n");
		}
		else
		{
			printf("no\n");
		}
	}
	return 0;
}

使用分支语句和循环语句来解决箱子匹配问题,只要满足长宽高中的最大值max,中间值mid,最小值min都大于等于另一个箱子的就能成功匹配。所以先用if语句选出max,mid,min再进行比较即可。

weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
python017基于Python贫困生资助管理系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值