当前位置: 首页 > 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…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中&#xff0c;有时需要在系统启动时自动执行某些命令&#xff0c;特别是需要 sudo权限的指令。为了实现这一功能&#xff0c;可以使用多种方法&#xff0c;包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法&#xff0c;并提供…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理&#xff1a;刘治强&#xff0c;浙江大学硕士生&#xff0c;研究方向为知识图谱表示学习&#xff0c;大语言模型 论文链接&#xff1a;http://arxiv.org/abs/2407.16127 发表会议&#xff1a;ISWC 2024 1. 动机 传统的知识图谱补全&#xff08;KGC&#xff09;模型通过…...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

优选算法第十二讲:队列 + 宽搜 优先级队列

优选算法第十二讲&#xff1a;队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...