C语言期末考试——重点考点
目录
1.C语言的结构
2.三种循环结构
3.逻辑真假判断
4. printf函数
5. 强制类型转化
6. 多分支选择结构
7. 标识符的定义
8. 三目运算符
1.C语言的结构
选择结构、顺序结构、循环结构
2.三种循环结构
for、while、do-while
3.逻辑真假判断
C语言用0表示false,用非0(不止1)表示true
0不能用来表示“真”
①下边的表达式哪个满足:-10<=x<=10,和100<=x<=110时值为“真”,否则为“假”( B )
A. ((10>x)&&(x>-10))||(100>x-100)
B. !((x<-10)||(x>10))||!((x<100)||(x>110))
C. (x<10)&&(x>-10)&&(x>100)&&(x<110)
D. (x>-10)&&(x<10)||(x<110)&&(x>100)
选项 A
- 分析逻辑表达式:
((10>x)&&(x>-10))||(100>x-100)
,后半部分100>x-100
可化简为200 > x
,这个表达式主要判断的是x
小于10
且大于-10
或者x
小于200
,并不能准确实现题目要求的-10<=x<=10
和100<=x<=110
这两个区间判断,存在多余的取值范围情况,所以不符合题意。选项 B
- 分析逻辑表达式:
!((x<-10)||(x>10))||!((x<100)||(x>110))
,!((x<-10)||(x>10))
等价于(x >= -10) && (x <= 10)
,!((x<100)||(x>110))
等价于(x >= 100) && (x <= 110)
,整体表示x
在-10
到10
这个区间或者x
在100
到110
这个区间时表达式为真,刚好满足题目要求的条件,符合题意。选项 C
- 分析逻辑表达式:
(x<10)&&(x>-10)&&(x>100)&&(x<110)
,按照逻辑与运算规则,要求x
同时满足小于10
、大于-10
、大于100
和小于110
,这是不可能同时满足的条件,所以不符合题意。选项 D
- 分析逻辑表达式:
(x>-10)&&(x<10)||(x<110)&&(x>100)
,前半部分表示x
在-10
到10
区间,后半部分表示x
在100
到110
区间,但该表达式在x
取值稍微超出这两个区间一点时也可能为真(比如x = 11
时后半部分就为真了),不能精准符合题目要求,所以不符合题意。综上,答案是 B 选项。
②下边的表达式哪个满足:当x和y的值都大于0,小于n时值为“真”,否则为“假”( D )
A. (x>0)&&(y>0)&&(x<n)&&(y<n)
B. (x<n)&&(y<n)&&x&&y
C. !(x<=0)||(y<=0)||(y>=n)||(x>=n)
D. !(x<=0)&&!(y<=0)&&!(y>=n)&&!(x>=n)
选项 A
- 分析逻辑表达式:
(x>0)&&(y>0)&&(x<n)&&(y<n)
,这个表达式要求x
既要大于0
又要小于n
,同时y
也要既大于0
又要小于n
,是x
和y
各自都要同时满足大于0
且小于n
的条件,而题目要求的是x
和y
的值整体满足大于0
、小于n
即可,并非各自都要同时满足,所以该选项不符合题意。选项 B
- 分析逻辑表达式:
(x<n)&&(y<n)&&x&&y
,表达式中的x&&y
部分只是简单判断x
和y
不为0
,而前面(x<n)&&(y<n)
也只是分别判断x
和y
小于n
,无法准确体现出x
和y
都要在0
到n
这个区间内的要求,所以不符合题意。选项 C
- 分析逻辑表达式:
!(x<=0)||(y<=0)||(y>=n)||(x>=n)
,根据逻辑或运算的规则,只要其中一个子表达式为真,整个表达式就为真。该表达式只要x
或者y
出现小于等于0
、大于等于n
这些不符合要求的情况之一,表达式就为真了,与题目要求的当不符合条件时表达式为假不符,所以不符合题意。选项 D
- 分析逻辑表达式:
!(x<=0)&&!(y<=0)&&!(y>=n)&&!(x>=n)
,!(x<=0)
等价于x > 0
,!(y<=0)
等价于y > 0
,!(y>=n)
等价于y < n
,!(x>=n)
等价于x < n
,整体就是要求x
大于0
且小于n
,同时y
也要大于0
且小于n
,正好符合当x
和y
的值都大于0
、小于n
时值为 “真”,否则为 “假” 的要求,所以符合题意。综上,答案是 D 选项。
4. printf函数
如:printf ("%d",3>2>1)
在 C 语言(以及很多遵循类似语法规则的编程语言中),关系运算符(如
>
)的结合性是从左到右依次进行运算的。首先计算
3>2
,这个比较的结果是1
(在 C 语言中,关系表达式成立时返回值为1
,表示逻辑真;不成立时返回0
,表示逻辑假)。然后用这个结果
1
再去和1
进行>
比较,也就是计算1>1
,该比较的结果是0
(因为1
并不大于1
,关系表达式不成立)。如:printf ("%d\n”,034)
在 C 语言(以及一些相关的编程语言中),以
0
开头的数字常量表示八进制数。所以这里的034
实际上是一个八进制数。要计算八进制数
034
对应的十进制数值,可以使用按权展开的方法。八进制数从右到左每位的权值依次是8^0
、8^1
、8^2
……对于八进制数
034
,其转换为十进制数的计算过程如下:
5. 强制类型转化
①float x = 3.1415926;输出语句printf (“%6d”,(int)x);
运行的输出结果是:3
②计算题
int a=3,b=4; float x=3.5,y=2.5;
则表达式 (float)(a+b)/2 + (int)x%(int)y 的值为:4.5
6. 多分支选择结构
①嵌套的if语句
②switch语句,case后只能为常量和常量表达式
7. 标识符的定义
不能使用关键字
- 不能与 C 语言的关键字相同,如
int
、float
、if
、else
、while
等都是关键字,不能用作用户定义的标识符。合法字符组成
- 只能由字母(包括大写和小写)、数字和下划线
_
组成。- 标识符的第一个字符必须是字母或下划线,不能是数字。
8. 三目运算符
①x=1,y=3 x=y>2?6:5
这里的结果为x=6
思路:首先计算
y > 2
这个条件表达式的值
- 如果
y
的值大于2
,那么y > 2
的结果为真(在 C 语言中就是值为1
),此时整个三元条件表达式y > 2? 6 : 5
的值就为6
,然后再将这个值6
赋给变量x
,即x
的值最终变为6
。- 如果
y
的值小于等于2
,那么y > 2
的结果为假(值为0
),此时整个三元条件表达式y > 2? 6 : 5
的值就为5
,然后再将这个值5
赋给变量x
,即x
的值最终变为5
。②表达式x>0?1:(x<0?-1:0)在x>0时的结果是:
对于表达式
x>0?1:(x<0?-1:0)
,首先判断最外层的条件x>0
。已知当前情况是
x>0
,根据三元条件运算符的运算规则,当x>0
这个条件成立(也就是为真)时,整个表达式x>0?1:(x<0?-1:0)
的值就取1
,而不会再去管后面嵌套部分(x<0?-1:0)
的情况了。所以,表达式
x>0?1:(x<0?-1:0)
在x>0
时的结果是1
。
相关文章:

C语言期末考试——重点考点
目录 1.C语言的结构 2.三种循环结构 3.逻辑真假判断 4. printf函数 5. 强制类型转化 6. 多分支选择结构 7. 标识符的定义 8. 三目运算符 1.C语言的结构 选择结构、顺序结构、循环结构 2.三种循环结构 for、while、do-while 3.逻辑真假判断 C语言用0表示false,用非0(不…...

mongo开启慢日志及常用命令行操作、数据备份
mongo开启慢日志及常用命令行操作、数据备份 1.常用命令行操作2.mongo备份3.通过命令临时开启慢日志记录4.通过修改配置开启慢日志记录 1.常用命令行操作 连接命令行 格式:mongo -u用户名 -p密码 --host 主机地址 --port 端口号 库名; 如:连…...

Mybatis-Plus的主要API
一、实体类操作相关API BaseMapper<T>接口 功能:这是 MyBatis - Plus 为每个实体类对应的 Mapper 接口提供的基础接口。它提供了一系列基本的 CRUD(增删改查)操作方法。例如insert(T entity)方法用于插入一条记录,d…...

2023 年“泰迪杯”数据分析技能赛B 题企业财务数据分析与造假识别
2023 年“泰迪杯”数据分析技能赛B 题企业财务数据分析与造假识别 一、背景 财务数据是指企业经营活动和财务结果的数据记录,反映了企业的财务状况 与经营成果。对行业、企业的财务数据进行分析,就是要评价其过去的经营业绩、 衡量现在的财务状况、预测…...

【SpringMVC】参数传递 重定向与转发 REST风格
文章目录 参数传递重定向与转发REST风格 参数传递 ModelAndView:包含视图信息和模型数据信息 public ModelAndView index1(){// 返回页面ModelAndView modelAndView new ModelAndView("视图名");// 或// ModelAndView modelAndView new ModelAndView(…...

性能测试需求分析(超详细总结)
🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 1、客户方提出 客户方能提出明确的性能需求,说明对方很重视性能测试,这样的企业一般是金融、电信、银行、医疗器械等;他们…...
显卡(Graphics Processing Unit,GPU)架构详细解读
显卡架构主要分为两大类:GPU 核心架构(也称为图形处理单元架构)和显卡的其他组件(如内存、控制器、输出接口等)。本篇文章将对显卡架构进行详细分析,重点介绍 GPU 核心架构、显卡计算单元、显存结构、显卡管…...

【大语言模型】ACL2024论文-24 图像化歧义:Winograd Schema 挑战的视觉转变
【大语言模型】ACL2024论文-24 图像化歧义:Winograd Schema 挑战的视觉转变 目录 文章目录 【大语言模型】ACL2024论文-24 图像化歧义:Winograd Schema 挑战的视觉转变目录摘要研究背景问题与挑战如何解决核心创新点算法模型实验效果(包含重要…...
AcWing 2868. 子串分值
文章目录 前言代码思路 前言 还是实力不允许啊,要是实力允许我就一道一道中等题刷了。简单题真够呛。有些题看题解都是看老半天看不懂,假设是这种我是真感觉没必要钻研。我现在大三,要是看一遍题解看不懂就算了,果断放弃。真可以…...
如何进行 JavaScript 性能优化?
要进行 JavaScript 性能优化,我们可以从多个角度进行思考,主要包括减少页面渲染时间、减少内存占用、优化代码执行效率等。以下是优化的一些方法,并结合实际项目代码示例讲解。 目录结构 减少 DOM 操作 缓存 DOM 元素批量更新 DOM 优化 Jav…...
使用TCP编程实现简单登录功能
在Java中,使用TCP编程实现登录功能通常涉及以下步骤: 创建服务器端,监听特定端口,等待客户端连接。创建客户端,连接到服务器端。客户端发送用户名和密码到服务器端。服务器端验证用户名和密码。服务器端返回验证结果给…...

卷积神经网络(CNN)的层次结构
卷积神经网络(CNN)是一种以其处理图像和视频数据的能力而闻名的深度学习模型,其基本结构通常包括以下几个层次,每个层次都有其特定的功能和作用: 1. 输入层(Input Layer): 卷积神经网…...

操作系统文件管理相关习题2
文件管理的任务和功能文件管理 任务:对用户文件和系统文件进行组织管理,以方便用户使用,并保证文件的安全 功能:文件存储空间的管理,目录管理,文件读写管理和保护 目录管理 对目录管理的要求 实现按名存…...
react 通过ref调用子组件的方法
背景 父组件内引入了一个弹窗组件,弹窗组件使用了完全内聚的开发方法; 实现思路 父组件内通过ref获取的子组件,通过current调用子组件的方法,子组件需要通过forwardRef进行“包装”导出,通过useImperativeHandle暴露…...

【计算机网络】 —— 数据链路层(壹)
文章目录 前言 一、概述 1. 基本概念 2. 数据链路层的三个主要问题 二、封装成帧 1. 概念 2. 帧头、帧尾的作用 3. 透明传输 4. 提高效率 三、差错检测 1. 概念 2. 奇偶校验 3. 循环冗余校验CRC 1. 步骤 2. 生成多项式 3. 例题 4. 总结 四、可靠传输 1. 基本…...
AcWing 93. 递归实现组合型枚举
文章目录 前言代码思路 前言 今天晚上还有三个小时,写一晚上简单题。划水。 代码 #include<bits/stdc.h> using namespace std; int n,m; void dfs(int u,int sum,int state){if(sumn-u<m){return;//sum 表示当前选了 sum 个数字,假设把所有…...
vscode 折叠范围快捷键
vscode 折叠范围快捷键 问答 原文网址:https://www.n.cn/search/c830b29cb76146d08cae5074acfd4785 VSCode 折叠范围快捷键 在使用Visual Studio Code(VSCode)进行代码编辑时,掌握一些快捷键可以大大提高工作效率。以下是关于VSCode中折叠和…...
RabbitMQ 实现分组消费满足服务器集群部署
实现思路 使用扇出交换机(Fanout Exchange):扇出交换机会将消息广播到所有绑定的队列,确保每个消费者组都能接收到相同的消息。为每个消费者组创建独立的队列:每个消费者组拥有自己的队列,所有属于该组的消…...

Chromium网络调试篇-Fiddler 5.21.0 使用指南:捕获浏览器HTTP(S)流量(二)
概述 在上一篇文章中,我们介绍了Fiddler的基础功能和如何安装它。今天我们将深入探讨如何使用Fiddler来捕获HTTP请求,这是Fiddler的一个核心能力,对于前端开发者、测试人员以及安全研究人员来说非常有用。捕获HTTP请求可以帮助我们更好地理解…...

个人IP建设:简易指南
许多个体创业者面临的一个关键挑战是如何为其企业创造稳定的需求。 作为个体创业者,您无法使用营销团队,因此许多人通过推荐和他们的网络来产生需求。因此,扩大您的网络是发展您的业务和产生持续需求的最佳策略。 这就是个人IP和品牌发挥作…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...

TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...

大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...