当前位置: 首页 > news >正文

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&#xff0c;如果整数部分为1&#xff0c;则说明第i位是1&#xff08;第i位则乘了2的几次方&#xff09;…...

WINDOWS系统jdk和maven明明安装了cmd里却无法使用相关命令

今天当了回s b 新电脑jdk和maven装是装了&#xff0c;系统变量也配置了&#xff0c;但没配置完&#xff0c;javahome和mavenhome没配置&#xff0c;结果cmdjdk和maven版本都查不到&#xff0c;我真s b啊 配置 JAVA_HOME 环境变量&#xff1a; 右键点击“此电脑”或者“我的电…...

基于EasyAnimate模型的视频生成最佳实践

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

linux最大线程数限制及打开最大文件数

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

MyBatis系列七: 一级缓存,二级缓存,EnCache缓存

缓存-提高检索效率的利器 官方文档 一级缓存基本介绍快速入门Debug一级缓存执行流程一级缓存失效分析 二级缓存基本介绍快速入门Debug二级缓存执行流程注意事项和使用细节 mybatis的一级缓存和二级缓存执行顺序小实验细节说明 EnCache缓存基本介绍配置和使用EhCache细节说明 My…...

C++迈向精通:函数指针对象与函数对象

C&#xff1a;指针对象 C语言中的函数指针 在C语言中&#xff0c;我们见过如下的函数指针&#xff1a; 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中面向…...

类和对象知识点

面向对象概念回顾 万物皆对象 用程序来抽象&#xff08;形容&#xff09;对象 用面向对象的思想来编程 什么是类 基本概念 具有相同特征&#xff0c;具有相同行为&#xff0c;一类事物的抽象。 类是对象的模板&#xff0c;可以通过类创建出对象&#xff0c;类的关键词—…...

【FAS】《Survey on face anti-spoofing in face recognition》

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

【Unity】RPG2D龙城纷争(一)搭建项目、导入框架、前期开发准备

更新日期&#xff1a;2024年6月12日。 项目源码&#xff1a;后续章节发布 免责声明&#xff1a;【RPG2D龙城纷争】使用的图片、音频等所有素材均有可能来自互联网&#xff0c;本专栏所有文章仅做学习和教程目的&#xff0c;不会将任何素材用于任何商业用途。 索引 【系列简介】…...

多目标跟踪中检测器和跟踪器如何协同工作的

多目标跟踪中检测器和跟踪器如何协同工作的 flyfish 主要是两者 接口间的交互 假设 原始图像尺寸&#xff1a;1920&#xff08;宽&#xff09;x 1080&#xff08;高&#xff09; 模型输入尺寸&#xff1a;640&#xff08;宽&#xff09;x 640&#xff08;高&#xff09; 检…...

kali系统几个开机启动项的区别

1、Live system (amd64) 简单的模式 &#xff0c;启动系统&#xff0c;直接进入 Kali&#xff0c;在系统中的所有的操作和设置都会在下次重启时失效。 Kali 中保存/编辑的所有东西都会重启丢失。 2、Live system (amd64 fail-safe mode) 这种模式与 Live (amd64) 类似&#xf…...

【自撰写】【国际象棋入门】第5课 常见开局战术组合(一)

第5课 常见开局战术组合&#xff08;一&#xff09; 本次课中&#xff0c;我们简要介绍几种常见的开局战术组合。开局当中&#xff0c;理想的情况是&#xff0c;己方的两只&#xff08;或以上&#xff09;轻子相互配合&#xff0c;或者与己方的兵配合&#xff0c;在完成布局的…...

高考志愿填报选专业,女孩就业率最好的专业有哪些?

高考志愿填报选专业&#xff0c; 大家都会关心&#xff1a;将来怎么就业&#xff1f; 按照目前的环境来说&#xff0c;女孩的就业是不乐观的&#xff0c;在职场上&#xff0c;绝大部分岗位都是男性优先的&#xff0c;至少短期内可能还无法改变&#xff0c;这样就要求我们在大学…...

yolov5模型训练早停模型变大

目录 1. 背景2. 原因分析2.1 train代码分析2.2 strip_optimizer函数分析 3. 验证 1. 背景 最近使用tph-yolov5训练yolov5l-tph-plus模型时&#xff0c;发现模型收敛的差不多了&#xff0c;就果断的停止了训练&#xff0c;结果发现last.pt和best.pt竟然488M&#xff0c;而正常训…...

next是什么???

大家都知道最近出了一个很火的框架&#xff0c;Next.js框架。很多大公司&#xff08;例如&#xff1a;Tencent腾讯&#xff0c;docker&#xff0c;Uber&#xff09;的项目都在使用这个Next.js框架。那Next.js到底是一个什么框架呢&#xff1f;Next.js有什么优点呢&#xff1f;今…...

K8s的资源对象

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

OpenStack快速入门

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

STM32CubeIDE对STM32F072进行ADC配置及使用

目录 1. 配置2. 时钟3. ADC配置4. 代码补充 1. 配置 引脚配置&#xff1a;PB0 2. 时钟 都是48MHz 3. ADC配置 ADC配置&#xff1a; 开启中断&#xff1a; 4. 代码补充 轮训ADC采样&#xff1a; HAL_ADC_PollForConversion(&hadc,10);ADC采样&#xff1a; HAL_ADC_Start (&a…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

使用分级同态加密防御梯度泄漏

抽象 联邦学习 &#xff08;FL&#xff09; 支持跨分布式客户端进行协作模型训练&#xff0c;而无需共享原始数据&#xff0c;这使其成为在互联和自动驾驶汽车 &#xff08;CAV&#xff09; 等领域保护隐私的机器学习的一种很有前途的方法。然而&#xff0c;最近的研究表明&…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中&#xff0c;接口是一种抽象类型&#xff0c;它定义了一组方法的集合&#xff1a; // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的&#xff1a; // 矩形结构体…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行&#xff0c;YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID&#xff1a; YW3…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?

现有的 Redis 分布式锁库&#xff08;如 Redisson&#xff09;相比于开发者自己基于 Redis 命令&#xff08;如 SETNX, EXPIRE, DEL&#xff09;手动实现分布式锁&#xff0c;提供了巨大的便利性和健壮性。主要体现在以下几个方面&#xff1a; 原子性保证 (Atomicity)&#xff…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

ubuntu22.04 安装docker 和docker-compose

首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案

引言 在分布式系统的事务处理中&#xff0c;如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议&#xff08;2PC&#xff09;通过准备阶段与提交阶段的协调机制&#xff0c;以同步决策模式确保事务原子性。其改进版本三阶段提交协议&#xff08;3PC&#xf…...