2022C语言二级真题
目录
数组逆序重放
题目描述
样例
最长最短单词
题目描述
样例
统计误差范围内的数
题目描述
样例
有趣的跳跃
题目描述
样例
数字放大
题目描述
样例
内部元素之和
题目描述
样例
满足条件的数的累加
题目描述
样例
偶数降序输出
题目描述
样例
字符统计
题目描述
样例
统计指定范围里的数
题目描述
样例
按照个位数排序
题目描述
样例
计算矩阵边缘元素之和
题目描述
样例
最长最短单词
题目描述
样例
数组逆序重放
题目描述
将一个数组中的值按逆序重新存放。例如,原来的顺序为8 6 5 4 1,要求改为1 4 5 6 8。
输入格式
输入为两行:第一行数组中元素的个数n,第二行是n个整数,每两个整数之间用空格分隔。
输出格式
输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔。
样例
输入样例
5
8 9 5 4 1
输出样例
1 4 5 9 8
#include<iostream>
#include<iomanip>
#include<string.h>
using namespace std;
int main()
{int a[110];int n;cin>>n;for(int i = 0;i<n;i++){cin>>a[i];}for(int i = n-1;i>=0;i--){cout<<a[i]<<" ";}return 0;
}
最长最短单词
题目描述
输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。
试输出第1个最长的单词和第1个最短单词。
输入格式
一行句子。
输出格式
第1行,第一个最长的单词。
第2行,第一个最短的单词。
样例
样例输入
I am studying Programming language C in Peking University
样例输出
Programming
I
#include<iostream>
#include<iomanip>
#include<string.h>
using namespace std;
int main()
{char a[20000];char wlong[200];char wshort[200],word[200];int numlong=0,numshort=100;int i,n,l,k,cl;l=0;k=0;cin.getline(a,20000);n=strlen(a);for(i=0;i<=n;i++){if(a[i]!=' '&&a[i]!=','&&a[i]!=0){l++;word[k]=a[i];k++;}if(a[i]==' '||a[i]==','||a[i]==0){if(l>numlong){numlong=l;strcpy(wlong,word);}if(l>0&&l<numshort){numshort=l;strcpy(wshort,word);}l=0;k=0;for(cl=0;cl<=200;cl++)word[cl]='\0';}}cout<<wlong<<endl;cout<<wshort;return 0;
}
统计误差范围内的数
题目描述
统计一个整数序列中与指定数字m误差范围小于等于X的数的个数。
输入格式
输入包含三行:第一行为N,表示整数序列的长度(N<=100);第二行为N个整数,整数之间以一个空格分开;第三行包含2个整数,为指定的整数m,误差范围X。
输出格式
输出输出为N个数中与指定数字m误差范围小于等于X的数的个数。
样例
样例输入
5
1 2 3 4 5
3 1
样例输出
3
样例解释
提示样例中2,3,4都满足条件,故答案为3
#include<iostream>
#include<iomanip>
#include<string.h>
using namespace std;
int main()
{int n;cin>>n;int a[110];for(int i = 0;i<n;i++){cin>>a[i];}int m,x;cin>>m>>x;int sum = 0;for(int i = 0;i<n;i++){if(a[i] < m+x){sum++;}}cout<<sum;return 0;
}
有趣的跳跃
题目描述
在一个长度为n的数字序列中,如果相邻元素差的绝对值经过升序排序后正好是1~n-1,则认定该序列存在“有趣的跳跃”。
例如:数字序列1、4、2、3 的相邻数字差的绝对值分别为3、2、1,排序后是1、2、3,说明该序列存在着“有趣的跳跃”。
现在给你一个序列,请你判断该序列是否存在“有趣的跳跃”。
输入格式
第1 行为一个整数(不超过100000)。
接下来一行为个不超过100000 的整数。
输出格式
若存在,输出“yes”,否则输出“no”。
样例
样例输入:
4
1 4 2 3
样例输出:
yes
#include<iostream>
#include<iomanip>
#include<string.h>
using namespace std;
int main()
{int n;cin>>n;int a[110];for(int i = 0;i<n;i++){cin>>a[i];}int sum = 0;for(int i = 0;i<n;i++){if(a[i] >=1 || a[i] <= n-1){sum++;}}if(sum>0){cout<<"yes";}else{cout<<"no";}return 0;
}
数字放大
题目描述
给定一个整数序列以及放大倍数x,将序列中每个整数放大x倍后输出。
输入格式
包含三行:
第一行为N,表示整数序列的长度(N ≤ 100);
第二行为N个整数(不超过整型范围),整数之间以一个空格分开;
第三行包含一个整数(不超过整型范围),为指定的整数x。
输出格式
N个整数,为原序列放大之后的序列,整数之间以一个空格分开。
样例
样例输入
3
1 5 7
2
样例输出
2 10 14
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int a[110];int n;cin>>n;for(int i = 0;i<n;i++){cin>>a[i];}int x;cin>>x;for(int i = 0;i<n;i++){cout<<a[i]*x<<" ";}return 0;
}
内部元素之和
题目描述
输入一个整数矩阵,计算位于矩阵内部的元素之和。所谓矩阵内部的元素,不在第一行和最后一行的元素以及第一列和最后一列的元素。
输入格式
第一行分别为矩阵的行数m和列数n(m < 100,n < 100),两者之间以一个空格分开。接下来输入的m行数据中,每行包含n个整数(每个数大于等于0,小于1000),整数之间以一个空格分开。
输出格式
输出对应矩阵的内部元素和
样例
样例输入
3 3
3 4 1
3 7 1
2 0 1
样例输出
7
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int a[110];int n;cin>>n;for(int i = 0;i<n;i++){cin>>a[i];}int x;cin>>x;for(int i = 0;i<n;i++){cout<<a[i]*x<<" ";}return 0;
}
满足条件的数的累加
题目描述
现有n个整数,将其中个位数为k的数进行累加求和。
输入格式
第一行两个整数n、k,以空格分隔。(0 < n < 1000, 0 ≤ k ≤ 9)第二行n个非负整数,以空格分隔,每个数不大于100000。
输出格式
输出满足题目要求的累加和。
样例
样例输入
10 7
2 5 7 17 11 18 4 27 1 7
样例输出
58
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int a[110];int n,k;cin>>n>>k;for(int i = 0;i<n;i++){cin>>a[i];}int sum = 0;for(int i = 0;i<n;i++){if(a[i]%10 == k){sum = sum + a[i];}}cout<<sum;return 0;
}
偶数降序输出
题目描述
给定一个长度为N(不大于500)的正整数序列,请将其中的所有偶数取出,并按降序输出。
输入格式
共2行:第1行为N;第2行为N 个正整数,其间用空格间隔。
输出格式
降序输出的偶数序列,数之间以空格间隔。数据保证至少有一个偶数。
样例
样例输入
10
1 3 2 6 5 4 9 8 7 10
样例输出
10 8 6 4 2
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int a[110];int b[110];int n;cin>>n;for(int i = 0;i<n;i++){cin>>a[i];}int s = 0;for(int i = 0;i<n;i++){if(a[i]%2 == 0){b[s] = a[i];s++;}}for(int i = 0;i<=s;i++){if(b[i]<b[i+1]){int f = b[i];b[i] = b[i+1];b[i+1] = f;}}for(int i = 0;i<=s;i++){cout<<b[i]<<" ";}return 0;
}
字符统计
题目描述
给定一个由a-z这26个字符组成的字符串,统计其中哪个字符出现的次数最多。
输入格式
输入包含一行,一个字符串,长度不超过1000。
输出格式
输出一行,包括出现次数最多的字符和该字符出现的次数,中间以一个空格分开。如果有多个字符出现的次数相同且最多,那么输出ascii码最小的那一个字符。
样例
样例输入
abbccc
样例输出
c 3
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int a[110];int b[110];int n;cin>>n;for(int i = 0;i<n;i++){cin>>a[i];}int s = 0;for(int i = 0;i<n;i++){if(a[i]%2 == 0){b[s] = a[i];s++;}}for(int i = 0;i<=s;i++){if(b[i]<b[i+1]){int f = b[i];b[i] = b[i+1];b[i+1] = f;}}for(int i = 0;i<=s;i++){cout<<b[i]<<" ";}return 0;
}
统计指定范围里的数
题目描述
给定一个数的序列S,以及一个区间[L, R], 求序列中介于该区间的数的个数,即序列中大于等于L且小于等于R的数的个数。
输入格式
第一行1个整数n、分别表示序列的长度。
第二行n个正整数,表示序列里的每一个数,每个数小于等于10000000。
第三行2个整数L、R,分别表示区间的左端点,区间的右端点。
输出格式
输出一个整数,表示序列中大于等于L且小于等于R的数的个数。
样例
样例输入
5
11 8 1 10 16
1 10
样例输出
3
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int n;cin>>n;int a[110];for(int i = 0;i<n;i++){cin>>a[i];}int l,r;cin>>l>>r;int sum = 0;for(int i = 0;i<n;i++){if(a[i]>=l && a[i]<=r){sum++;}}cout<<sum;return 0;
}
按照个位数排序
题目描述
对于给定的正整数序列,按照个位数从小到大排序,个位数相同的按照本身大小从小到大排序。
输入格式
第一行1个整数n,表示序列的大小。( 0 < n ≤ 1000) 第二行n个正整数,表示序列的每个数,每个数不大于100000000。
输出格式
输出按照题目要求排序后的序列
样例
样例输入
6
17 23 9 13 88 10
样例输出
10 13 23 17 88 9
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int a[110];int n,j,temp;cin>>n;for(int i=0;i<n;i++){cin>>a[i];j=i-1;temp=a[i];while(j>=0 && (temp%10<a[j]%10||(temp%10==a[j]%10&&temp<a[j]))){a[j+1]=a[j];j--;}a[j+1]=temp;}for(int i=0;i<n;i++){cout<<a[i]<<" ";}return 0;
}
计算矩阵边缘元素之和
题目描述
输入一个整数矩阵,计算位于矩阵边缘的元素之和。
所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素。
输入格式
第一行分别为矩阵的行数n和列数m,两者之间以一个空格分开。
接下来输入的n行数据中,每行包含m个整数,整数之间以一个空格分开。
输出格式
输出对应矩阵的边缘元素和。
样例
样例输入
3 3
3 4 1
3 7 1
2 0 1
样例输出
15
#include <iostream>
#include<string.h>
using namespace std;
int main()
{int a[110][110];int n,m;for(int i = 0;i<n;i++){for(int j = 0;j<m;j++){cin>>a[i][j];}}int sum = 0;for(int i = 0;i<n;i++){for(int j = 0;j<m;j++){if( i == 1 || i == m || j == 1 || j == n ){sum = sum + a[i][j];}}}cout<<sum;return 0;
}
最长最短单词
题目描述
输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。
试输出第1个最长的单词和第1个最短单词。
输入格式
一行句子。
输出格式
第1行,第一个最长的单词。
第2行,第一个最短的单词。
样例
样例输入
I am studying Programming language C in Peking University
样例输出
Programming
I
#include <iostream>
#include<string.h>
using namespace std;
int main()
{char str[30000],c;int sum = 0;int max = -1;int max1;int min = 1000;int min1;int i,j,k;i=0;while((c=getchar())!=EOF){str[i++]=c;}str[i]='\0'; for(j=0;j<i;j++){if(str[j]==' '||str[j]==','||str[j]=='.'){if(sum>max){max=sum;max1=j;}if(sum<min&&sum>0){min=sum;min1=j;}sum=0;}else{sum++;}}for(k=max1-max;k<max1;k++){printf("%c",str[k]);}printf("\n");for(k=min1-min;k<min1;k++){printf("%c",str[k]);}printf("\n");return 0;}
相关文章:
2022C语言二级真题
目录 数组逆序重放 题目描述 样例 最长最短单词 题目描述 样例 统计误差范围内的数 题目描述 样例 有趣的跳跃 题目描述 样例 数字放大 题目描述 样例 内部元素之和 题目描述 样例 满足条件的数的累加 题目描述 样例 偶数降序输出 题目描述 样例 字符统…...
智慧购房:链家网上海在售楼盘数据解析与模型构建
1.项目背景 随着中国经济的快速发展,上海作为国际化大都市,其房地产市场一直备受关注,购房者在面对庞大且复杂的楼盘信息时,往往感到困惑和不知所措,为了帮助购房者更好地了解市场行情,做出明智的购房决策,本项目选择了链家网上海市在售楼盘数据,进行了全面的数据分析…...

二进制数转字符串
题目链接 二进制数转字符串 题目描述 注意点 32位包括输出中的 “0.” 这两位题目保证输入用例的小数位数最多只有 6 位 解答思路 将小数转为二进制的思路是将小数乘2,如果整数部分为1,则说明第i位是1(第i位则乘了2的几次方)…...
WINDOWS系统jdk和maven明明安装了cmd里却无法使用相关命令
今天当了回s b 新电脑jdk和maven装是装了,系统变量也配置了,但没配置完,javahome和mavenhome没配置,结果cmdjdk和maven版本都查不到,我真s b啊 配置 JAVA_HOME 环境变量: 右键点击“此电脑”或者“我的电…...

基于EasyAnimate模型的视频生成最佳实践
EasyAnimate是阿里云PAI平台自主研发的DiT的视频生成框架,它提供了完整的高清长视频生成解决方案,包括视频数据预处理、VAE训练、DiT训练、模型推理和模型评测等。本文为您介绍如何在PAI平台集成EasyAnimate并一键完成模型推理、微调及部署的实践流程。 …...

linux最大线程数限制及打开最大文件数
1.root用户下执行 ulimit -a 然后查看 max user processes 这个值通常是系统最大线程数的一半 max user processes:当前用户同时打开的进程(包括线程)的最大个数为 2.普通用户下 ulimit -a 出现的max user processes的值 默认是 /etc/security/limits.d/20-nproc.co…...

MyBatis系列七: 一级缓存,二级缓存,EnCache缓存
缓存-提高检索效率的利器 官方文档 一级缓存基本介绍快速入门Debug一级缓存执行流程一级缓存失效分析 二级缓存基本介绍快速入门Debug二级缓存执行流程注意事项和使用细节 mybatis的一级缓存和二级缓存执行顺序小实验细节说明 EnCache缓存基本介绍配置和使用EhCache细节说明 My…...
C++迈向精通:函数指针对象与函数对象
C:指针对象 C语言中的函数指针 在C语言中,我们见过如下的函数指针: int add(int a, int b) {return a b; }int main() {int a, b;int (*p)(int, int) add;scanf("%d%d", &a, &b);p(a, b);return 0; } 为了适应C中面向…...
类和对象知识点
面向对象概念回顾 万物皆对象 用程序来抽象(形容)对象 用面向对象的思想来编程 什么是类 基本概念 具有相同特征,具有相同行为,一类事物的抽象。 类是对象的模板,可以通过类创建出对象,类的关键词—…...

【FAS】《Survey on face anti-spoofing in face recognition》
文章目录 原文基于手工设计特征表达的人脸活体检测方法基于深度学习的人脸活体检测方法基于融合策略的人脸活体检测方法人脸检测活体数据库点评 原文 邓雄,王洪春,赵立军等.人脸识别活体检测研究方法综述[J].计算机应用研究,2020,37(09):2579-2585.DOI:10.19734/j.issn.1001-3…...

【Unity】RPG2D龙城纷争(一)搭建项目、导入框架、前期开发准备
更新日期:2024年6月12日。 项目源码:后续章节发布 免责声明:【RPG2D龙城纷争】使用的图片、音频等所有素材均有可能来自互联网,本专栏所有文章仅做学习和教程目的,不会将任何素材用于任何商业用途。 索引 【系列简介】…...
多目标跟踪中检测器和跟踪器如何协同工作的
多目标跟踪中检测器和跟踪器如何协同工作的 flyfish 主要是两者 接口间的交互 假设 原始图像尺寸:1920(宽)x 1080(高) 模型输入尺寸:640(宽)x 640(高) 检…...
kali系统几个开机启动项的区别
1、Live system (amd64) 简单的模式 ,启动系统,直接进入 Kali,在系统中的所有的操作和设置都会在下次重启时失效。 Kali 中保存/编辑的所有东西都会重启丢失。 2、Live system (amd64 fail-safe mode) 这种模式与 Live (amd64) 类似…...

【自撰写】【国际象棋入门】第5课 常见开局战术组合(一)
第5课 常见开局战术组合(一) 本次课中,我们简要介绍几种常见的开局战术组合。开局当中,理想的情况是,己方的两只(或以上)轻子相互配合,或者与己方的兵配合,在完成布局的…...

高考志愿填报选专业,女孩就业率最好的专业有哪些?
高考志愿填报选专业, 大家都会关心:将来怎么就业? 按照目前的环境来说,女孩的就业是不乐观的,在职场上,绝大部分岗位都是男性优先的,至少短期内可能还无法改变,这样就要求我们在大学…...
yolov5模型训练早停模型变大
目录 1. 背景2. 原因分析2.1 train代码分析2.2 strip_optimizer函数分析 3. 验证 1. 背景 最近使用tph-yolov5训练yolov5l-tph-plus模型时,发现模型收敛的差不多了,就果断的停止了训练,结果发现last.pt和best.pt竟然488M,而正常训…...
next是什么???
大家都知道最近出了一个很火的框架,Next.js框架。很多大公司(例如:Tencent腾讯,docker,Uber)的项目都在使用这个Next.js框架。那Next.js到底是一个什么框架呢?Next.js有什么优点呢?今…...

K8s的资源对象
资源对象是 K8s 提供的一些管理和运行应用容器的各种对象和组件。 Pod 资源是 K8s 中的基本部署单元,K8s通过Pod来运行业务应用的容器镜像 Job 和 CronJob 资源用于执行任务和定时任务,DaemonSet 资源提供类似每个节点上守护进程, Deployment…...

OpenStack快速入门
任务一 熟悉OpenStack图形界面操作 1.1 Horizon项目 •各OpenStack服务的图形界面都是由Horizon提供的。 •Horizon提供基于Web的模块化用户界面。 •Horizon为云管理员提供一个整体的视图。 •Horizon为终端用户提供一个自主服务的门户。 •Horizon由云管理员进行管理…...

STM32CubeIDE对STM32F072进行ADC配置及使用
目录 1. 配置2. 时钟3. ADC配置4. 代码补充 1. 配置 引脚配置:PB0 2. 时钟 都是48MHz 3. ADC配置 ADC配置: 开启中断: 4. 代码补充 轮训ADC采样: HAL_ADC_PollForConversion(&hadc,10);ADC采样: HAL_ADC_Start (&a…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...

高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...

前端开发面试题总结-JavaScript篇(一)
文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包(Closure)?闭包有什么应用场景和潜在问题?2.解释 JavaScript 的作用域链(Scope Chain) 二、原型与继承3.原型链是什么?如何实现继承&a…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...
Git常用命令完全指南:从入门到精通
Git常用命令完全指南:从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...

通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...