网站建设预付/直通车关键词优化口诀
C语言关系运算符
- | - | - |
---|---|---|
== | 等于 | a==b |
!= | 不等于 | a!=b |
<、> | 小于和大于 | a>b 、a<b |
<=、>= | 小于等于、大于等于 | a>=b 、a<=b |
! | 非 | !(0)、!(NULL) |
在C99之后,C语言开始支持布尔类型,头文件是stdbool.h。在文中我所演示的所有代码均是C99版。
在C语言上上述关系运算符中,如果上述关系成立,就为真返回值为1,不成立九为假,返回值为0。在写代码的时候需要着重注意一下等于的运算符是两个等号,一个等号叫做赋值,这个在编码时候注意。
逻辑归一化 !!(x)
在C语言中空字符,0,空数组,NULL代表假,布尔值均为0,其它则为真,比如100、-2,{4,5,6}等,它就是真,但是以布尔值来讲是只有0和1的,所以为了在布尔运算上统一我们需要把这些,真真假假的数据归一化。就需要使用!!操作,把当前数据的布尔值调整为0或1
分支结构
if语句
if(表达式){代码段;
}
else if(表达式){代码段;
}
else{代码段;
}
程序输入一个正整数n,代表学生的成绩,根据分数输出分数挡位
n = 0,FOOLISH
0<n<60,FAIL
60<=n<75,MEDIUM
75<=n<=100,GOOD
#include<stdio.h>int main(){int n;while(~scanf("%d", &n)){if(!n){printf("FOOLISH\n");}else if(n < 60){printf("FAIL\n");}else if(n < 75){printf("MEDIUM\n"); }else if(n <= 100){printf("GOOD\n");}}
}
switch语句
switch (a){case 1:代码块1;case 2: 代码块2;case 3: 代码块3;default:代码块4;
}
请使用switch结构完成如下任务,程序读入一个整数n:
如果n = 1,则输出one
如果n = 2,则输出two
如果n = 3,则输出three
否则输入error
可以看到输出结果不是我们预期的目的,在这里需要说明一下,case为条件入口,程序进入case对应的代码段,一次执行后续的代码,知道遇到break,或者switch末尾。所以在本题中,要注意在case后加上break。
#include<stdio.h>int main(){int n;while(~scanf("%d", &n)){switch(n){case 1: printf("one\n");break;case 2: printf("two\n");break;case 3: printf("three\n");break;default: printf("error\n");}}
}
在使用switch语句中,要保证参数n能唯一映射,整型或者字符型的数据。所以在使用时switch的使用场景没有if的使用场景更多。
判断日期的合法性
题目要求:输入一个日期,判断这个日期是否存在
1,3,5,7,8,10,12月有21天
4,6,9,11月有30天
闰年的2月是29天
非整百年,能被4整除的为闰年,在整百年中能被400整除的是闰年。
如果日期合法,输出YES,不合法,则输出NO
思路:首先根据题目来讲我们需要三个变量来接受年月日的输入,然后12个月的日期我们需要一个数组来存储各个月的日期,来减少工作量,然后需要一个判断的合法的函数来接收年月日,判断是否合法,根据返回值,再用printf()输出结果
int main(){int year, month, day;int date[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};while(~scanf("%d %d %d", &year, &month, &day)){ printf("%s\n",judge_date(year, month, day, date)? "YES" : "NO");}
}
主函数完成后,我们来完成judge_date()函数。首先我们要先判断当前年份是否为闰年,这里我们判断闰年也是一个独立的功能,我们再需要另一个函数judge_year()实现,如果是闰年,则返回1,如果不是则返回0。那么在数组中我们只需要把28与judge_year()的返回值相加即可。然后考虑年月日的逻辑,年是可以为任意整数的,因为有公元前和公元后,所以year没有需要注意的地方,月份的后只可以是1~12,日就是要大于0小于数组中各个月份对应的数。
int judge_date(int year, int month, int day, int *date){int temp = 0;temp = judge_year(year);date[2] = date[2]+temp;if(month > 12 || month < 1) return 0;if(day > date[month] || day < 1 ) return 0;return 1;
}
下面按照题目介绍完成judge_year()函数
int judge_year(int year){if ((year % 4 == 0 && year % 100 != 0 ) ||year % 400 == 0) return 1;return 0;
}
在这个函数完成之后就完成了题目要求,但是这里会有一个小bug,因为我们使用的是循环读入,在judge_date()函数中,我们可以看到如果是闰年后,28+1成了29,但是一次循环后,数组中的数据并没用还原,所以我们需要再把二月的数据初始为28。另外我们还可以优化一下的是,我们可以把对月份的判断放在首位,一旦月份不合法直接结束程序,不需要先对数组进行操作。
#include<stdio.h> int judge_year(int year){if ((year % 4 == 0 && year % 100 != 0 ) ||year % 400 == 0) return 1;return 0;
}int judge_date(int year, int month, int day, int *date){if(month > 12 || month < 1) return 0;date[2] = date[2] + judge_year(year);if(day > date[month] || day < 1 ) return 0;date[2] = 28;return 1;
}int main(){int year, month, day;int date[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};while(~scanf("%d %d %d", &year, &month, &day)){ printf("%s\n",judge_date(year, month, day, date)? "YES" : "NO");}
}
相关文章:

C语言程序设计——程序流程控制方法(一)
C语言关系运算符 ---等于ab!不等于a!b<、>小于和大于a>b 、a<b<、>小于等于、大于等于a>b 、a<b!非!(0)、!(NULL) 在C99之后,C语言开始支持布尔类型,头文件是stdbool.h。在文中我所演示的所有代码均是C99版。 在C语言上上述关…...

torch.backends.cudnn.benchmark
torch.backends.cudnn.benchmark 的设置对于使用 PyTorch 进行深度学习训练的性能优化至关重要。具体而言,它与 NVIDIA 的 CuDNN(CUDA Deep Neural Network library)库有关,该库是在 GPU 上加速深度神经网络计算的核心组件。 启用…...

SQL Server从0到1——写shell
xp_cmdshell 查看能否使用xpcmd_shell; select count(*) from master.dbo.sysobjects where xtype x and name xp_cmdshell 直接使用xpcmd_shell执行命令: EXEC master.dbo.xp_cmdshell whoami 发现居然无法使用 查看是否存在xp_cmdshell: EXEC…...

计算圆弧的起始角度、终止角度和矩形信息并使用drawArc绘制圆弧
Qt中常用绘制圆弧的库函数: //函数原型 void QPainter::drawArc(const QRectF &rectangle, int startAngle, int spanAngle)Qt规定1约占16个像素,比如一个完整的圆等于360度,对应的像素角度就是 5760度(16 * 360)…...

C++ Trie树模版 及模版题 || Trie字符串统计
Trie树:用来高效的存储和查找字符串集合的数据结构。 维护一个字符串集合,支持两种操作: I x 向集合中插入一个字符串 x ; Q x 询问一个字符串在集合中出现了多少次。 共有 N 个操作,所有输入的字符串总长度不超过 1…...

Linux基础命令@echo、tail、重定向符
目录 echo概念语法作用演示一演示二 反引号作用 tail概念语法作用不带选项,演示一带选项 -num,演示二带选项 -f , 持续跟踪 重定向符概念作用覆盖重定向,>演示一演示二 追加重定向,>>演示一演示二 总结 echo …...

uniapp:签字版、绘画板 插件l-signature
官方网站:LimeUi - 多端uniapp组件库 使用步骤: 1、首先从插件市场将代码下载到项目 海报画板 - DCloud 插件市场 2、下载后,在项目中的uni_modules目录(uni_modules优点:不需要import引入,还可以快捷更新…...

Python Pillow(PIL)库的用法介绍
Python的Pillow库(PIL)是一个强大的图像处理库,可以用来进行图像的读取、编辑、处理和保存等操作。下面是一些Pillow库的基本用法介绍: 安装Pillow库: 在命令行中输入以下命令即可安装Pillow库: 复制代码 p…...

uniapp 【专题详解 -- 时间】云数据库时间类型设计,时间生成、时间格式化渲染(uni-dateformat 组件的使用)
云数据表的时间类型设计 推荐使用时间戳 timestamp "createTime": {"bsonType": "timestamp","label": "创建时间:" }时间生成 获取当前时间 Date.now() .add({createTime: Date.now() })时间格式化渲染 下载安…...

k8s之flink的几种创建方式
在此之前需要部署一下私人docker仓库,教程搭建 Docker 镜像仓库 注意:每台节点的daemon.json都需要配置"insecure-registries": ["http://主机IP:8080"] 并重启 一、session 模式 Session 模式是指在 Kubernetes 上启动一个共享的…...

应用OpenCV绘制箭头
绘制箭头函数 方法:函数cv2.arrowedLine( ) 语法格式:cv2.arrowedLine(img, pt1, pt2, color[, thickness[, line_type[, shift[, tipLength]]]]) 参数说明: img:要画的直线所在的图像,也称为画布。。 pt1&#x…...

信息学奥赛一本通1032:大象喝水查
1032:大象喝水查 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 104347 通过数: 64726 【题目描述】 一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,底面半径为r厘米的小圆桶(h和r都是整数)。问大象至少…...

聊聊jvm的direct buffer统计
序 本文主要研究一下jvm的direct buffer统计 spring boot metrics jvm.memory.used {"name": "jvm.memory.used","description": "The amount of used memory","baseUnit": "bytes","measurements"…...

C/C++ 位段
目录 什么是位段? 位段的内存分配 位段的跨平台问题 什么是位段? 位段的声明与结构是类似的,但是有两个不同: 位段的成员必须是 int、unsigned int 或signed int 等整型家族。位段的成员名后边有一个冒号和一个数字 这是一个…...

Peter算法小课堂—树的应用
开篇先给大家讲个东西,叫vector,有老师称之为“向量”,当然与数学中的向量不一样啊,所以我要称之为“长度可变的数组” vector 头文件:#include <vector> 用法:vector<int> d; 尾部增加元素…...

FineBI:简介
1 介绍 FineBI 是帆软软件有限公司推出的一款商业智能(Business Intelligence)产品。 FineBI 是定位于自助大数据分析的 BI 工具,能够帮助企业的业务人员和数据分析师,开展以问题导向的探索式分析。 2 现阶段数据分析弊端 现阶…...

原神单机版【完全无脑搭建】⭐纯单机⭐*稳定版*
版本介绍 版本3.7稳定版【过分追新并不稳,合理才完美】 独家原神,游戏内自带剧情任务,完美仿官,一比一完美复制! 已经拥有完美剧情、任务、副本、卡池、深渊、全物品、和全部功能和皮肤。 送:GM全套工具…...

用通俗易懂的方式讲解:万字长文带你入门大模型
告别2023,迎接2024。大模型技术已成为业界关注焦点,你是否也渴望掌握这一领域却又不知从何学起? 本篇文章将特别针对入门新手,以浅显易懂的方式梳理大模型的发展历程、核心网络结构以及数据微调等关键技术。 如果你在阅读中收获…...

Invalid options in vue.config.js: “plugins“ is not allowed
项目场景: 安装并配置elementPlus报错。 问题描述 "plugins" is not allowed. plugins不被允许。参考官网修改配置文件vue.config.js。 解决方案: const AutoImport require(unplugin-auto-import/webpack) const Components require(un…...

四、C语言中的数组:数组的创建与初始化
其实在之前的学习中我们已经或多或少接触到了数组,有关scanf()的安全用法中我们提到了如何避免数组溢出的问题,详情可以查看二、C语言数据类型与变量(scanf和printf (4)完) 这一章我们将详细学习数组在C语言中的应用 1.数组的概…...

html5中各标签的语法格式总结以及属性值说明
有关闭标签的元素 a元素 <a href"" target"" title""></a>表格相关元素 table元素:表格标签caption元素:表头thead元素tbody元素:表格主体元素tfoot元素th元素tr元素:行标签td元素&…...

力扣(leetcode)第412题Fizz Buzz(Python)
412.Fizz Buzz 题目链接:412.Fizz Buzz 给你一个整数 n ,找出从 1 到 n 各个整数的 Fizz Buzz 表示,并用字符串数组 answer(下标从 1 开始)返回结果,其中: answer[i] “FizzBuzz” 如果 i 同…...

苦学golang半年,写了一款web服务器
苦学golang半年,写了一款web服务器 文章目录 苦学golang半年,写了一款web服务器example 项目地址:https://github.com/fengyuan-liang/jet-web-fasthttp 可以的话,请star支持一下🙂 苦学golang半年,写了一款…...

uniapp vue2 车牌号输入组件记录
uniapp vue2 车牌号输入案例记录 组件如图 直接上代码 1.html <template><view><view class"plate" :class"{show: show}"><view class"itemFirst flex-d"><view class"item item1" click"handl…...

Unity 点击对话系统(含Demo)
点击对话系统 可实现点击物体后自动移动到物体附近,然后弹出对话框进行对话。 基于Unity 简单角色对话UI脚本的编写(新版UI组件)和Unity 关于点击不同物品移动并触发不同事件的结合体,有兴趣可以看一下之前文章。 下边代码为U…...

vue接入高德地图
使用 JSAPI 安全模式,代理服务请以_AMapService 作为一级路由 index.html <script type"text/javascript">window._AMapSecurityConfig {serviceHost: "http://xx.xx.xx.xx:8223/_AMapService"};</script><script type"text/javascr…...

Linux的基本指令(5)
目录 bc指令 uname指令 压缩解压相关的指令 zip指令 unzip指令 tar打包压缩指令 tar解压解包指令 传输指令sz&rz 热键 关机命令 安装:yum install -y 指令 bc指令 bc命令可以很方便的进行浮点运算 Linux中的计算器 uname指令 语法:unam…...

华为商城秒杀时加密验证 device_data 的算法研究
前言 之前华为商城放出 Mate60 手机时, 想给自己和家人抢购一两台,手动刷了好几天无果后,决定尝试编写程序,直接发送 POST 请求来抢。通过抓包和简单重放发送后,始终不成功。仔细研究,发现 Cookie 中有一个名为 devic…...

Wrk压测发送Post请求的正确姿势
一、Wrk简介 wrk 是一个能够在单个多核 CPU 上产生显著负载的现代 HTTP 基准测试工具。它采用了多线程设计,并使用了像 epoll 和 kqueue 这样的可扩展事件通知机制。此外,用户可以指定 LuaJIT 脚本来完成 HTTP 请求生成、响应处理和自定义报告等功能。 …...
【管理篇 / 登录】❀ 06. macOS下使用USB配置线登录 ❀ FortiGate 防火墙
【简介】飞塔防火墙上都会配有CONSOLE接口,包装里都会配置一根USB配置线,通过这个接口和这根线,我们可以用命令的方式登录飞塔防火墙。随着苹果电脑的普及,我们来学习如何在macOS中使用USB配置线登录飞塔防火墙。 早期飞塔防火墙包…...