2023-2024-1高级语言程序设计-一维数组
7-1 逆序输出数组元素的值
从键盘输入n个整数存入一维数组中,然后将数组元素的值逆序输出。
输入格式:
第一行输入整数个数n;
第二行输入n 个整数,数据之间以空格隔开。
输出格式:
逆序输出数组元素的值,每个数据之后跟一个空格。
输入样例:
10
11 22 99 33 88 76 56 45 89 10
输出样例:
10 89 45 56 76 88 33 99 22 11
#include<bits/stdc++.h>
using namespace std;
int main(){int n,a[105],i;cin>>n;for(i=0;i<n;i++)cin>>a[i];for(i=n-1;i>=0;i--){cout<<a[i]<<' ';}return 0;
}
7-2 将数组中的数逆序存放
本题要求编写程序,将给定的n个整数存入数组中,将数组中的这n个数逆序存放,再按顺序输出数组中的元素。
输入格式:
输入在第一行中给出一个正整数n(1≤n≤10)。第二行输入n个整数,用空格分开。
输出格式:
在一行中输出这n个整数的处理结果,相邻数字中间用一个空格分开,行末不得有多余空格。
输入样例:
4
10 8 1 2
输出样例:
2 1 8 10
#include<bits/stdc++.h>
using namespace std;
int main(){int n,a[15],i;cin>>n;for(i=0;i<n;i++)cin>>a[i];for(i=n-1;i>=0;i--){cout<<a[i];if(i)cout<<' ';}return 0;
}
7-3 第几天
你知道,2012-1-1是该年的第1天,而9999-9-9呢?给你一个具体的日期,计算该日期是该年的第几天。
输入格式:
输入一个日期,格式为:Year-month-day。year是小于9999的正整数。
输出格式:
一个整数,表示该日期是该年的第几天。
输入样例:
在这里给出一组输入。例如:
2012-3-1
输出样例:
在这里给出相应的输出。例如:
61
#include<bits/stdc++.h>
using namespace std;
int main(){int i,a,b,c,x[15]={31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d-%d-%d",&a,&b,&c);if(a%400==0||(a%4==0&&a%100))x[1]=29;for(i=0;i<b-1;i++)c+=x[i];cout<<c;return 0;
}
7-4 斐波那契
斐波那契数列,指的是这样一个数列:0,1,1,2,3,5,8,……,这个数列从第3项开始,每一项都等于前两项之和。求斐波那契数列的前n项。
输入格式:
输入一个n(n>=3)的值。
输出格式:
输出斐波那契数列的前n项。
输入样例:
在这里给出一组输入。例如:
6
输出样例:
在这里给出相应的输出。例如:
0,1,1,2,3,5
#include<bits/stdc++.h>
using namespace std;
int main(){int a[105],i,n;cin>>n;a[0]=0,a[1]=1;for(i=2;i<n;i++)a[i]=a[i-1]+a[i-2];for(i=0;i<n;i++){if(i)cout<<",";cout<<a[i];}return 0;
}
7-5 评委打分
班级里要搞智力竞赛啦!同学们都踊跃参加。进入最后决赛的是10个同学,随着一道道题目的出示,有时是1号选手得分,有时是5号选手得分,每次答对者得10分,最后结果如何呢?
输入格式:
第一行有十个整数,表示十位同学的初始分。第二行一个整数n,表示有n道题竞赛。
接下去有n行,每行有一个数字x,x表示本次可以加分的选手序号(每次答对者得10分)。
输出格式:
10个同学最终的得分值,每两位同学之间有一个空格。
输入样例:
10 0 0 0 10 10 0 0 0 10
3
1
10
1
输出样例:
30 0 0 0 10 10 0 0 0 20
#include<bits/stdc++.h>
using namespace std;
int main(){int a[105],i,n,x;for(i=1;i<=10;i++)cin>>a[i];cin>>n;while(n--){cin>>x;a[x]+=10;}for(i=1;i<=10;i++){if(i!=1)cout<<' ';cout<<a[i];}return 0;
}
7-6 统计分数段人数
请对某次考试的分数,统计各分数段人数,统计原则:分别对10分以下、10-19分、20-29分、30-39分、40-49分、50-59分、60-69分、70-79,80-89分,90到99分,100分为一段,共11段 。
注意:如果输入分数不在[0,100]之间,不参与统计。
输入格式:
先输入一个整数n,表示将输入n个分数。
再输入n个分数,范围在[0~100].
每个数用空格间隔。
输出格式:
每一行输出一个分数段的人数统计结果。分数段用0~10表示。
输入样例:
在这里给出一组输入。例如:
6
50 60 98 100 0 1000
输出样例:
在这里给出相应的输出。例如:
0: 1
1: 0
2: 0
3: 0
4: 0
5: 1
6: 1
7: 0
8: 0
9: 1
10: 1
#include<bits/stdc++.h>
using namespace std;
int main(){int n,i,a[15]={0},y;double x;cin>>n;while(n--){cin>>x;if(x>=0&&x<=100){y=x/10;a[y]++;}}for(i=0;i<=10;i++){cout<<i<<": "<<a[i]<<endl;}return 0;
}
7-7 统计工龄
给定公司多名员工的工龄,按输入工龄顺序输出每个工龄段有多少员工。
输入格式:
给出多个整数,即每个员工的工龄,范围在[0, 50]。
输出格式:
按输入工龄顺序输出每个工龄的员工个数,格式为:“工龄:人数”。
每项占一行。
输入样例:
10 2 0 5 7 2 5 2
输出样例:
10:1
2:3
0:1
5:2
7:1
#include<bits/stdc++.h>
using namespace std;
int main(){int x,a[105]={0},i,y=0,b[105],c[55]={0};while(cin>>x){a[x]++;b[y++]=x;}for(i=0;i<y;i++){if(c[b[i]]==0){cout<<b[i]<<":"<<a[b[i]]<<endl;c[b[i]]=1;}}return 0;
}
7-8 调查电视节目受欢迎程度
某电视台要调查观众对该台8个栏目(设相应栏目编号为1~8)的受欢迎情况,共调查了n位观众(1≤n≤1000),现要求编写程序,输入每一位观众的投票情况(每位观众只能选择一个最喜欢的栏目投票),统计输出各栏目的得票情况。
输入格式:
输入在第1行中给出一个正整数n(1≤n≤1000),第2行输入n个整数,其间以空格分隔。
输出格式:
按顺序输出所有8个栏目的编号和得票数,每个数占4位,每行输出一个栏目的编号和得票数。
输入样例:
10
3 4 7 6 3 9 2 3 1 8
输出样例:
1 12 13 34 15 06 17 18 1
#include<bits/stdc++.h>
using namespace std;
int main(){int n,x,i,a[1005];cin>>n;while(n--){cin>>x;a[x]++;}for(i=1;i<=8;i++){printf("%4d%4d\n",i,a[i]);}return 0;
}
7-9 求最大值及其下标
本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。
输入格式:
输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。
输出格式:
在一行中输出最大值及最大值的最小下标,中间用一个空格分开。
输入样例:
6
2 8 10 1 9 10
输出样例:
10 2
#include<bits/stdc++.h>
using namespace std;
int main(){int n,x,i,a[1005],max;cin>>n;cin>>a[0];max=a[0];for(i=1;i<n;i++){cin>>a[i];if(a[i]>max)max=a[i];}for(i=0;i<n;i++){if(a[i]==max){cout<<max<<' '<<i;break;}}return 0;
}
7-10 点赞
微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特性。
输入格式:
输入在第一行给出一个正整数N(≤1000),是该用户点赞的博文数量。随后N行,每行给出一篇被其点赞的博文的特性描述,格式为“K F1⋯FK”,其中1≤K≤10,Fi(i=1,⋯,K)是特性标签的编号,我们将所有特性标签从1到1000编号。数字间以空格分隔。
输出格式:
统计所有被点赞的博文中最常出现的那个特性标签,在一行中输出它的编号和出现次数,数字间隔1个空格。如果有并列,则输出编号最大的那个。
输入样例:
4
3 889 233 2
5 100 3 233 2 73
4 3 73 889 2
2 233 123
输出样例:
233 3
#include<bits/stdc++.h>
using namespace std;
int main(){int n,k,x,i,a[1005]={0},max=0;cin>>n;while(n--){cin>>k;while(k--){cin>>x;a[x]++;if(a[x]>max)max=a[x];}}for(i=1000;i>=1;i--)if(a[i]==max){cout<<i<<' '<<a[i];break;}return 0;
}
7-11 根据所给数据,输入一个区间,输出其中最多的点赞量。
根据表中所给微博点赞数据:{3056,1169,2743,1616,2391,930,968,1011,1386,936},
输入一个区间,输出其区间最多的点赞量。
输入格式:
两个数据用空格隔开,例如输入:2 5
输出格式:
2743
输入样例:
4 7
输出样例:
2391
#include<bits/stdc++.h>
using namespace std;
int main(){int x,y,i,a[15]={0,3056,1169,2743,1616,2391,930,968,1011,1386,936},max=0;cin>>x>>y;for(i=x;i<=y;i++){if(a[i]>max)max=a[i];}cout<<max;return 0;
}
7-12 排序
请编写程序对不超过50000个整数递增排序。
输入格式:
输入第一行一个正整数n,表示待排序的元素个数。第二行为n个整数,表示待排序的元素。n不超过50000。
输出格式:
输出为一行,表示排序结果,每个整数后一个空格。
输入样例:
5
5 4 3 2 1
输出样例:
1 2 3 4 5
#include<bits/stdc++.h>
using namespace std;
int main(){int n,a[500005],i;cin>>n;for(i=0;i<n;i++)cin>>a[i];sort(a,a+n);for(i=0;i<n;i++)cout<<a[i]<<' ';return 0;
}
7-13 歌手得分
在歌手大赛中,有n个评委为参赛的歌手打分,分数为0~100分。歌手最后得分为去掉m个最高分和m个最低分后,剩余的n−2m个分数的平均值。
输入格式:
输入数据的第一行为一个正整数T,表示测试数据的组数,然后是T组测试数据。对于每组测试数据,第一行输入两个整数n,m(3<n<100,m<n/2),含义如上;第二行输入n个整数。
输出格式:
对于每组测试数据,输出一行,包含一个实数,表示歌手的最后得分。结果保留两位小数。
输入样例:
2
10 1
20 20 80 80 10 10 10 40 40 60
10 2
20 20 80 80 10 10 10 40 40 60
输出样例:
35.00
31.67
#include<bits/stdc++.h>
using namespace std;
int main(){int t,n,m,i;cin>>t;while(t--){cin>>n>>m;int a[105],s=0;for(i=0;i<n;i++)cin>>a[i];sort(a,a+n);for(i=0+m;i<n-m;i++)s+=a[i];printf("%.2f\n",s*1.0/(n-2*m));}return 0;
}
7-14 二分查找
输入n值(1<=n<=1000)、n个非降序排列的整数以及要查找的数x,使用二分查找算法查找x,输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。
输入格式:
输入共三行:
第一行是n值;
第二行是n个整数;
第三行是x值。
输出格式:
输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。
输入样例:
4
1 2 3 4
1
输出样例:
0
2
#include<bits/stdc++.h>
using namespace std;
int main(){int n,i,x,a[1005],l,h,mid,y=1,k=0;cin>>n;for(i=0;i<n;i++)cin>>a[i];cin>>x;l=0,h=n-1;while(1){mid=(l+h)/2;if((mid==0&&a[mid]!=x)||(mid==n-1&&a[mid]!=x)){k=1;break;}if(a[mid]==x)break;y++;if(a[mid]>x)h=mid-1;if(a[mid]<x)l=mid+1;}if(k)cout<<"-1\n"<<y;elsecout<<mid<<endl<<y;return 0;
}
7-15 找出不是两个数组共有的元素
给定两个整型数组,本题要求找出不是两者共有的元素。
输入格式:
输入分别在两行中给出两个整型数组,每行先给出正整数N(≤20),随后是N个整数,其间以空格分隔。
输出格式:
在一行中按照数字给出的顺序输出不是两数组共有的元素,数字间以空格分隔,但行末不得有多余的空格。题目保证至少存在一个这样的数字。同一数字不重复输出。
输入样例:
10 3 -5 2 8 0 3 5 -15 9 100
11 6 4 8 2 6 -5 9 0 100 8 1
输出样例:
3 5 -15 6 4 1
#include<bits/stdc++.h>
using namespace std;
int main(){int n,m,i,a[105],b[105],c[100005]={0},x=0;cin>>n;for(i=0;i<n;i++)cin>>a[i];cin>>m;for(i=0;i<m;i++)cin>>b[i];for(i=0;i<n;i++){if(c[a[i]]==1)continue;c[a[i]]=1;int k=0;for(int j=0;j<m;j++){if(a[i]==b[j]){k=1;break;}}if(k==0){if(x)cout<<' ';cout<<a[i];x=1;}}for(i=0;i<m;i++){if(c[b[i]]==1)continue;c[b[i]]=1;int k=0;for(int j=0;j<n;j++){if(b[i]==a[j]){k=1;break;}}if(k==0){if(x)cout<<' ';cout<<b[i];x=1;}}return 0;
}
相关文章:

2023-2024-1高级语言程序设计-一维数组
7-1 逆序输出数组元素的值 从键盘输入n个整数存入一维数组中,然后将数组元素的值逆序输出。 输入格式: 第一行输入整数个数n; 第二行输入n 个整数,数据之间以空格隔开。 输出格式: 逆序输出数组元素的值,每个数据之后跟一个空…...

史上最全,从初级测试到高级测试开发面试题汇总,冲击大厂年50w+
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 接口测试面试相关…...

Python基础入门例程42-NP42 公式计算器(运算符)
最近的博文: Python基础入门例程41-NP41 二进制位运算(运算符)-CSDN博客 Python基础入门例程40-NP40 俱乐部的成员(运算符)-CSDN博客 Python基础入门例程39-NP39 字符串之间的比较(运算符)-C…...
C#的LINQ to XML 类中使用最多的三个类:XElement、XAttribute 和 XDocument
目录 一、XElement 类 1.使用 XElement 类创建一个 xml 文档 (1)示例源码 (2)xml文件 2.使用LINQ to SQL或者LINQ to Object获取数据源 (1)示例源码 (2)xml文件 3.XElement …...

2023软考-系统架构师一日游
上周六(11月4号)参见了软考,报的系统架构师,今年下半年是第一次推行机考,简单来分享下大致流程,至于考试难度、考点什么的,这个网上有很多专门研究这些的机构,本人无权发言。考试的经…...

维乐 Prevail Glide带你做破风王者,无阻前行!
对于自行车骑手来说,需要应对的问题有很多,其中最大的问题之一,就是「风阻」。风阻永远都是你越反抗越强,因此为了克服风阻的力量,时间久了,身体自然会造成一定程度的损伤。如何才能调整前行的步伐…...

企业通配符SSL证书的特点
企业通配符SSL证书是一种数字证书,其可以用于保护多个企业网站,对网站传输信息进行加密服务。这种证书通常适用于拥有多个子域名或二级域名的企事业单位。今天就随SSL盾小编了解企业通配符SSL证书的相关信息。 1. 保护所有域名和子域名:企业通…...
1.2 HTML5
一.HTML5 简介 1.什么是HTML5 HTML5是新一代的 HTML 标准,2014年10月由万维网联盟( W3C)完成标准制定。官网地址: w3c提供:HTML StandardWHATWG提供: HTML Standard HTML5在狭义上是指新—代的 HTML 标准,在广义上是指:整个前端。 2.HTML…...

一个例子!教您彻底理解索引的最左匹配原则!
最左匹配原则的定义 简单来讲:在联合索引中,只有左边的字段被用到,右边的才能够被使用到。我们在建联合索引的时候,区分度最高的在最左边。 简单的例子 创建一个表 CREATE TABLE user ( id INT NOT NULL AUTO_INCREMENT, code…...

Docker容器技术实战4
11、docker安全 proc未被隔离,所以在容器内和宿主机上看到的东西是一样的 容器资源控制 cpu资源限制 top命令,查看cpu使用率 ctrlpq防止退出回收,容器会直接调用cgroup,自动创建容器id的目录 cpu优先级设定 测试时只保留一个cpu…...

vue3中使用better-scroll
文章目录 需求分析安装htmlcssjs 需求分析 假设现在有这么一个需求,页面顶部有几个tabs导航,每一个tab下都有一个可以滑动的切换按钮。咱们就可以引入better-scroll来实现这个需求。 安装 首先下载better-scroll npm install better-scroll/core --…...
RK3568禁用调试口改成普通口
RK3568共10个串口,需要用到8个串口,无耐其他UART都被外设复用了,只好将调试口也拿出来作为普通口,方法:禁用调试口、增加UART2 1. vi kernel/arch/arm64/boot/dts/rockchip/OK3568-C-linux.dts 2. #include &quo…...

腾讯云CVM服务器标准型S5、SA3、S6详细介绍
腾讯云CVM服务器标准型实例的各项性能参数平衡,标准型云服务器适用于大多数常规业务,例如:web网站及中间件等,常见的标准型云服务器有CVM标准型S5、S6、SA3、SR1、S5se等规格,腾讯云服务器网txyfwq.com来详细说下云服务…...

【PC电脑windows环境下-[jetson-orin-NX]Linux环境下-下载工具esptool工具使用-相关细节-简单样例-实际操作】
【PC电脑windows环境下-[jetson-orin-NX]Linux环境下-下载工具esptool工具使用-相关细节-简单样例-实际操作】 1、概述2、实验环境3、 物品说明4-2、自我总结5、本次实验说明1、准备样例2、设置芯片3、编译4、下载5、验证 (1)windows环境下进行烧写1、下…...
什么是flink
flink的起源 Flink的起源可以追溯到2010年,当时它作为一个研究项目开始。该项目最初由德国柏林工业大学(Berlin Institute of Technology)的一群研究人员发起,包括Matei Zaharia、Kostas Tzoumas和Stephan Ewen等。 项目最初被称为…...

基于 VTable 的多维数据展示的原理与实践
多维表格介绍 多维表格又名透视表、交叉表、Pivot Table,指的是可以在行维度和列维度放入一个或多个维度,显示维度之间相互关系的一种表格。用户可以一目了然地分析出各种场景指标以及对比,旨在帮助业务分析推动决策。 假设需要分析如下表格…...

为什么有了MAC地址,还需要IP地址?
解释 搞懂这个问题,首先需要了解交换机的功能 交换机内部有一张MAC地址映射表,记录着MAC地址和端口的对应关系。 如果A要给B发送一个数据包,构造如下格式的数据结构: 到达交换机时,交换机内部通过自己维护的 MAC 地…...

Eclipse开发环境的安装与配置
Eclipse开发环境的安装与配置 1.Eclipse安装与配置 1.将JDK与Eclipse这两个软件安装包放在一个文件夹下,方便之后安装使用。 2.安装JDK 在D:LeStoreDownload\java文件夹下另外新建三个文件夹分别命名为java、jdk和eclipse(分别用于Java、j…...

《006.Springboot+vue之旅游信息推荐系统》【有文档】
《006.Springbootvue之旅游信息推荐系统》【有文档】 项目简介 [1]本系统涉及到的技术主要如下: 推荐环境配置:DEA jdk1.8 Maven MySQL 前后端分离; 后台:SpringBootMybatis; 前台:vueElementUI; [2]功能模块展示: …...

LangChain+LLM实战---使用知识图谱和大模型来实现多跳问答
原文:Knowledge Graphs & LLMs: Multi-Hop Question Answering 可以使用检索增强方法来克服大型语言模型(Large Language Models, llm)的局限性,比如幻觉和有限的知识。检索增强方法背后的思想是在提问时引用外部数据,并将其提供给LLM&a…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路
进入2025年以来,尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断,但全球市场热度依然高涨,入局者持续增加。 以国内市场为例,天眼查专业版数据显示,截至5月底,我国现存在业、存续状态的机器人相关企…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...
如何通过git命令查看项目连接的仓库地址?
要通过 Git 命令查看项目连接的仓库地址,您可以使用以下几种方法: 1. 查看所有远程仓库地址 使用 git remote -v 命令,它会显示项目中配置的所有远程仓库及其对应的 URL: git remote -v输出示例: origin https://…...

Canal环境搭建并实现和ES数据同步
作者:田超凡 日期:2025年6月7日 Canal安装,启动端口11111、8082: 安装canal-deployer服务端: https://github.com/alibaba/canal/releases/1.1.7/canal.deployer-1.1.7.tar.gz cd /opt/homebrew/etc mkdir canal…...

CVE-2023-25194源码分析与漏洞复现(Kafka JNDI注入)
漏洞概述 漏洞名称:Apache Kafka Connect JNDI注入导致的远程代码执行漏洞 CVE编号:CVE-2023-25194 CVSS评分:8.8 影响版本:Apache Kafka 2.3.0 - 3.3.2 修复版本:≥ 3.4.0 漏洞类型:反序列化导致的远程代…...

PLC入门【4】基本指令2(SET RST)
04 基本指令2 PLC编程第四课基本指令(2) 1、运用上接课所学的基本指令完成个简单的实例编程。 2、学习SET--置位指令 3、RST--复位指令 打开软件(FX-TRN-BEG-C),从 文件 - 主画面,“B: 让我们学习基本的”- “B-3.控制优先程序”。 点击“梯形图编辑”…...
iOS 项目怎么构建稳定性保障机制?一次系统性防错经验分享(含 KeyMob 工具应用)
崩溃、内存飙升、后台任务未释放、页面卡顿、日志丢失——稳定性问题,不一定会立刻崩,但一旦积累,就是“上线后救不回来的代价”。 稳定性保障不是某个工具的功能,而是一套贯穿开发、测试、上线全流程的“观测分析防范”机制。 …...