c语言每日一练(13)
前言:
每日一练系列,每一期都包含5道选择题,2道编程题,博主会尽可能详细地进行讲解,令初学者也能听的清晰。每日一练系列会持续更新,上学期间将看学业情况更新。
五道选择题:
1、程序运行的结果为()
#include<stdio.h>
int main()
{
int x=1.9;
x++;
printf("%d",x);
}
A、1 B、2 C、2.9 D、3
解析:简单题,考察的是你对于整型变量的理解整型变量如果初始值被赋予小数,那么在vs编译器上就会直接将小数部分给舍去,也就是说,代码1中给x赋予1.9,实际上只是给x赋予1,接着走到x++,使x=2,所以最后打印出来的结果就是2,选B
2、设有整型变量a,b,c,它们的初值是1,运行表达式++a| |++b&&++c后,a,b,c的值分别是 ()
A、2,1,1 B、2,2,2 C、2,2,1 D、2,1,2
解析:易错题,考察||(或)运算和&&(且)运算的运用,||运算只要一边为真即为真,所以当我们判定完一边为真的时候另一边就不用再判定,计算机会直接跳过。&&运算,两边都为真才为真,只要有一边为假就为假,所以一旦发现一边为假则不再判定另一边。
跟据规则走,首先遇到的是++a,先++后使用,a=2,2为真,是||运算,所以后面的部分不进行,连带着&&也没有进行,所以最后a=2,b=1,c=1,选A
3、以下程序运行的结果为()
#include<stdio.h>
int main()
{int x = 5;int i = 0, j = 0, k = 0;x = (i = 4, j = 16, k = 32);printf("%d %d %d %d", x,i,j,k);
}
A、5,4,16,32 B、5,0,0,0 C、32,4,16,32 D、32,0,0,0
解析:考察你对于逗号表达式的理解,逗号表达式从左往右进行,整个表达式的结果为最后一个表达式。
从左往右走,首先给i赋值为4,接着给j赋值为16,最后来到最后一个表达式,k=32,而根据逗号表达式的运行可知整个表达式的结果也是k=32,所以最后是x=k=32,同时对x和k赋值,所以x和k最后均为32,综上所述,i=4,j=16,x=k=32,所以最后打印出来的结果为32,4,16,32选C
4、有如下程序,程序运行后的输出结果是()
#include <stdio.h>
int main()
{
int x = 072;
printf("%d\n", x+1);
}
A、72 B、73 C、115 D、59
解析:基础题,考察你对细节的掌控,八进制数的前缀为0,十六进制的前缀为0x,十进制数没有前缀。所以该程序赋值给x的值是一个八进制的72,转换为十进制就是2*1+7*8=58,最后打印出x+1即59,故选D
5、若想定义 int 型变量 a,b,c,d 并都赋值为 1,以下写法中错误的
是
A、int a=b=c=d=1;
B、int a=1, b=1, c=1, d=1;
C、int a,b,c,d; a=b=c=d=1;
D、int a,b,c,d=1; a=b=c=d;
解析:一个一个走,先看A选项,A选项的操作并没有定义b,c,d这三个整型变量,故A错误,B选项挨个定义,没有问题,B正确。C选项全部定义完了再赋值,C正确,D选项,先定义a,b,c,d四个变量的同时给d赋值为1,最后令a=b=c=d,令a,b,c与d相等,所以最后,a,b,c,d均为1,D正确,综上所述,选A
编程题1:
剑指 Offer 10- I. 斐波那契数列 - 力扣(LeetCode)
提示:记得取模,一开始博主也没有取模,想半天,哈哈
int fib(int n) {if (n == 0){return 0;}if (n <= 2){return 1;}//以上特殊情况单独处理下int f1 = 1; int f2 = 1; int f3 = 0; int i = 0;for (i = 3; i <= n; i++)//我们一开始计算的就是第三个斐波那契数,所以令i=3{f3 = (f1 + f2) % 1000000007;//先储存下一个斐波那契数f1 = f2;f2 = f3;//进行数据更新}return f3;//返回目标
}
编程题2:
134. 加油站 - 力扣(LeetCode)
提示:此题较难,建议学习贪心算法之后再过来进行,这里博主并没有使用贪心算法,使用最朴实无华的方法通过的,目的是让大家能够感受一下代码的严谨。拷贝博主的代码有时也是通不过的,因为博主没有使用技巧答题,当你网络不好时可能会因为超出时间限制而失败,多试几次就可以。
int canCompleteCircuit(int* gas, int gasSize, int* cost, int costSize) {int oil = 0;int i = 0;if(gasSize==1)//只有一个单独处理{if(gas[0]>=cost[0])return 0;}for (i = 0; i < gasSize; i++){int tmp = i;//不要在函数内对循环变量操作,因此使用tmp来间接操作int flag = 1;//判定是否可以行进的变量oil = gas[tmp];if (oil > cost[tmp]){oil -= cost[tmp];for (++tmp; tmp < gasSize; tmp++){oil += gas[tmp];oil -= cost[tmp];if (oil < 0){flag = 0;break;}}if (flag == 0){continue;}for (tmp = 0; tmp < gasSize; tmp++){oil += gas[tmp];oil -= cost[tmp];if (tmp == i){break;}if (oil < 0){flag = 0;break;}}if (flag == 1){return tmp;}else{continue;}}else{continue;}}return -1;
}
好了,今天的练习到这里就结束了,感谢各位友友的来访,祝各位友友前程似锦O(∩_∩)O
相关文章:

c语言每日一练(13)
前言:每日一练系列,每一期都包含5道选择题,2道编程题,博主会尽可能详细地进行讲解,令初学者也能听的清晰。每日一练系列会持续更新,上学期间将看学业情况更新。 五道选择题: 1、程序运行的结果…...
H5 + C3基础(六)(2D转换transform 位移 旋转 缩放)
2D转换transform & 2D转换transform平移利用平移百分比优化盒子水平垂直居中 旋转指定2d变换的中心点 transform-origin 缩放2d转换简写 2D转换transform 所谓2D转换,就是在二维坐标系内进行各种操作,包括平移,转动,缩放等等…...

2023最新 Electron.js 桌面应用开发教程(基础篇)更新中
Electron是什么? Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux Electron Fiddle 运行实例 Ele…...

【ES】笔记-Set集合实践
JS <script>let arr[1,2,3,4,5,4,3,2,1];//1.数组去重let result0[...new Set(arr)];console.log(数组去重${result0});//2.交集let arr2[4,5,6,5,6];let result[...new Set(arr)].filter(item>{let s2new Set(arr2);//4 5 6if(s2.has(item)){return true;}else{retur…...

缺陷或负样本难以收集怎么办?使用生成式模型自动生成训练样本,image-to-image Stable diffusion
文章大纲 样本稀疏与对应的解决方案如何解决工业缺陷检测小样本问题参考1:AIDG(Artificial Intelligent Defect Generator)参考2:灵感来源 : Image-to-Image Diffusion Models参考文献与学习路径参考博文数据集算法缺陷检测库hugging face样本稀疏与对应的解决方案 1.数据层面…...

ZMTP协议
ZoreMQ Transport Protocol是一个传输层协议,用于ZMQ的连接的信息交互,本文档描述的是3.0协议,主要分析基于NULL Security Mechanism 协议语法 ZMTP由三部分组成,分别是 greeting、handshake、traffic 部分描述构成greeting描述…...
ubuntu18安装中文环境
1. 安装中文语言包 首先,我们需要安装中文语言包。打开终端,输入以下命令: sudo apt-get install language-pack-zh-hans 这个命令会下载并安装中文语言包。安装完成后,我们需要重新启动系统(reboot)。 2. 安装中文输入法 安…...

怎么提取视频中的音乐保存到本地?其实方法很简单
当你想要使用视频中的音乐时,你可以考虑将它从视频中提取出来。这可以用于制作音频样本集,制作铃声或其他音频素材,或者向其他人展示视频的音乐部分而无需显示视频本身。如果你是一位音乐制作人员,你可能会需要一些特定类型的音效…...

线性代数的学习和整理18:矩阵的秩的各种定理, 秩和维度(未完成)
目录 1 矩阵的秩 矩阵的秩 2 求秩的方法 矩阵的维度秩 矩阵的维度 向量的模,矩阵的模-没有把,难道是面积? 矩阵的平直概念 5 矩阵的初等变换(矩阵等价概念的引出) 1 为什么要引入矩阵的“秩” 这个概念&#x…...
UVa11374 Airport Express(Dijkstra)
题意 给出经济路线以及商业路线,在给出起始点s,终止点e,在只能使用其中一个商业路线 的情况下输出最短路径 思路 如果选择商业路线为从u到v,则需要从s->u,u->v,v->e点的路径最短。使用Dijkstra计算出从s点…...
hadoop的hdfs中避免因节点掉线产生网络风暴
hadoop的hdfs中避免因节点掉线产生网络风暴 控制节点掉线RPC风暴的参数 三个参数都是hdfs-site.xml中参数,具体可以参考apache hadoop官网,其实块的复制速度有两个方面决定,一是namenode分发任务的速度,二则是datanode之间进行复…...

2023年高教社杯 国赛数学建模思路 - 案例:最短时间生产计划安排
文章目录 0 赛题思路1 模型描述2 实例2.1 问题描述2.2 数学模型2.2.1 模型流程2.2.2 符号约定2.2.3 求解模型 2.3 相关代码2.4 模型求解结果 建模资料 0 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 最短时…...

Spring MVC介绍
MVC模式是什么 MVC 模式,全称为 Model-View-Controller(模型-视图-控制器)模式,它是一种软件架构模式,其目标是将软件的用户界面(即前台页面)和业务逻辑分离,使代码具有更高的可扩展…...

5年测试在职经验之谈:2年功能测试、3年自动化测试,从入门到不可自拔...
毕业3年了,学的是环境工程专业,毕业后零基础转行做软件测试。 已近从事测试行业8年了,自己也从事过2年的手工测试,从事期间越来越觉得如果一直在手工测试的道路上前进,并不会有很大的发展,所以通过自己的努…...

【Python数据分析】数据分析之numpy基础
实验环境:建立在Python3的基础之上 numpy提供了一种数据类型,提供了数据分析的运算基础,安装方式 pip install numpy导入numpy到python项目 import numpy as np本文以案例的方式展示numpy的基本语法,没有介绍语法的细枝末节&am…...

Swift 如何从图片数据(Data)检测原图片类型?
功能需求 如果我们之前把图片对应的数据(Data)保持在内存或数据库中,那么怎么从 Data 对象检测出原来图片的类型呢? 如上图所示:我们将 11 张不同类型的图片转换为 Data 数据,然后从 Data 对象正确检测出了原图片类型。 目前,我们的代码可以检测出 jpeg(jpg), tiff,…...
【ES6】 JavaScript 中的Object.assign
Object.assign() 是 JavaScript 中的一个方法,它用于复制源对象的所有可枚举属性到目标对象。该方法会返回目标对象。 这是其基本用法: let target Object.assign({}, source);在这个例子中,source 对象的所有可枚举属性都被复制到了 targ…...

Redis缓存和持久化
目录 Redis缓存 什么是缓存 缓存更新策略编辑 业务场景 缓存穿透 常见的解决方案 缓存雪崩 解决方案 缓存击穿 解决方案 Redis持久化 RDB持久化 执行时机 RDB方式bgsave的基本流程 AOF持久化 RDB和AOF的对比编辑 Redis主从 数据同步原理 总结 Redis缓存 …...
OpenCV(六):多通道分离与合并
目录 1.多通道分离split() 2.多通道合并merge() 3.Android JNI demo 1.多通道分离split() void cv::split ( InputArray m, OutputArrayOfArrays mv ) m:待分离的多通道图像。 mv:分离后的单通道图像,为向量vector形式。 2.多通道合并merge…...
Sql单行数据查询为多行
数据量小可以,数据量大时间太久 select distinct regexp_substr("fixed_option", [^,],1,level) c1 from "MATERIAL"."BasicInfo_Dishes_Summary" A where "fixed_option" is not NULL AND "dish_name"地三鲜…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...

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

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...

代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...

给网站添加live2d看板娘
给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...