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},
输入一个区间,输出其区间最多的点赞量。

1.png

输入格式:

两个数据用空格隔开,例如输入: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;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/131138.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于野狗算法的无人机航迹规划-附代码

基于野狗算法的无人机航迹规划 文章目录 基于野狗算法的无人机航迹规划1.野狗搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用野狗算法来优化无人机航迹规划。 1.野狗搜索算法 …

SpringBoot整合RabbitMQ学习笔记

SpringBoot整合RabbitMQ学习笔记 以下三种类型的消息&#xff0c;生产者和消费者需各自启动一个服务&#xff0c;模拟生产者服务发送消息&#xff0c;消费者服务监听消息&#xff0c;分布式开发。 一 Fanout类型信息 . RabbitMQ创建交换机和队列 在RabbitMQ控制台&#xff0c;新…

JS逆向爬虫---请求参数加密① 【某度翻译】

接口定位 抓包输入翻译关键词 全局搜索关键词,定位到接口https://fanyi.baidu.com/v2transapi 全局搜索sign 多次尝试定位变化参数sign 断点调试b函数 复制整个function&#xff0c;并测试函数运行结果。 需要把function改写成如下的数据&#xff1a; function(t) {var o…

reactor(百万并发服务器) - 2

这是连续剧般的文章&#xff0c;请关注&#xff0c;持续更新中... 系列文章: http://t.csdnimg.cn/Os83Qhttp://t.csdnimg.cn/Os83Q这篇文章将我们的reactro转变成http服务器... HTTP HTTP介绍 HTTP是一个基于TCP通信协议的基础上的应用层协议。接下来我们需要解析HTTP请求消息…

【2024最新】PE工具箱【下载安装】零基础到大神【附下载链接】

下载链接&#xff1a;点这里 1.PE (Portable Executable) 工具箱通常用于处理Windows可执行文件和动态链接库&#xff08;DLL&#xff09;的二进制文件格式。这些工具对于进行逆向工程、软件分析和系统维护等任务非常有用。以下是PE工具箱的一些常见功能和用法&#xff1a; 查…

VR博物馆:让博物馆传播转化为品牌影响力

随着VR技术的不断进步&#xff0c;VR全景技术已经成为了文化展示和传播的一项重要工具&#xff0c;相较于传统视频、图文等展现方式&#xff0c;VR全景体验更加直观、便捷&#xff0c;其中蕴涵的信息量也更加丰富&#xff0c;这也为公众了解博物馆和历史文化带来了更为深刻的体…

洗衣洗鞋柜洗衣洗鞋小程序

支持&#xff1a;一键投递、上门取衣、自主送店、多种支付方式 TEL: 17638103951(同V) -----------------用户下单-------------- -------------------------多种支付和投递方式------------------------- -----------------商家取鞋--------------

Transformer的最简洁pytorch实现

目录 前言 1. 数据预处理 2. 模型参数 3. Positional Encoding 4. Pad Mask 5. Subsequence Mask 6. ScaledDotProductAttention 7. MultiHeadAttention 8. FeedForward Networks 9. Encoder Layer 10. Encoder 11. Decoder Layer 12. Decoder 13. Transformer 1…

基于STM32HAL库看门狗(独立看门狗)-简述

目录 概述 一、开发环境 二、STM32CubeMx配置 三、编码 四、运行结果 五、总结 概述 一个成熟靠谱的项目&#xff0c;离不开“看门狗”的必选项&#xff0c;凡是人写的程序多少都会有出现bug的情况&#xff08;或芯片外设受外界干扰导致故障程序卡死、跑飞的情况&#xf…

AI:58-基于深度学习的猫狗图像识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

【LeetCode】每日一题 2023_11_5 重复的DNA序列

文章目录 刷题前唠嗑重复的DNA序列题目描述代码和解题思路偷看大佬题解结语 刷题前唠嗑 LeetCode? 启动&#xff01;&#xff01;&#xff01; 重复的DNA序列 题目链接&#xff1a;187. 重复的DNA序列 题目描述 代码和解题思路 func findRepeatedDnaSequences(s string) …

基于SpringBoot+Vue的旅游系统、前后端分离

博主24h在线&#xff0c;想要源码文档部署视频直接私聊&#xff0c;低价有偿&#xff01; 基于SpringBootVue的旅游系统、前后端分离 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot、Vue、Mybaits Plus、ELementUI 工具&#xff1a;IDEA/Eci…

使用脚手架创建项目,使用组件开发

单文件组件 单文件组件就是一个文件对应一个组件, 单文件组件的名字通常是xxx.vue(命名规范和组件名的命名规范相同),这个文件是Vue框架规定的只有它能够认识&#xff0c;浏览器无法直接打开运行 Vue框架可以将xxx.vue文件进行编译为浏览器能识别的html js css的代码 xxx.vu…

蒙哥马利算法模乘(四)

一 蒙哥马利算法模乘介绍 蒙哥马利模乘算法主要为了进行大数运算a*b mod n,在介绍蒙哥马利模乘之前,先让我们来了解蒙哥马利约减。 1.1 蒙哥马利约减 a mod n 如果a是一个2048位的整数,n是一个1024位的整数,如果直接采用相除的方式,不论在空间还是时间上都会产生非常大…

Swift 和 Python 两种语言中带关联信息错误(异常)类型的比较

0. 概览 如果我们分别在平静如水、和谐感人的 Swift 和 Python 社区抛出诸如“Python 是天下最好的语言…” 和 “Swift 是宇宙第一语言…”之类的言论会有怎样的“下场”&#xff1f; 我们并不想对可能发生的“炸裂”景象做出什么预测&#xff0c;也无意比较 Swift 与 Pytho…

安吉寻梦桃花原

安吉——西湖边的那片竹海 安吉县&#xff0c;地处浙江西北部&#xff0c;湖州市辖县之一&#xff0c;北靠天目山&#xff0c;面向沪宁杭。建县于公元185年&#xff0c;县名出自《诗经》“安且吉兮”之意。 安吉县生态环境优美宜居&#xff0c;境内“七山一水二分田”&#xf…

Java锁常见面试题

图片引用自&#xff1a;不可不说的Java“锁”事 - 美团技术团队 1 java内存模型 java内存模型(JMM)是线程间通信的控制机制。JMM定义了主内存和线程之间抽象关系。线程之间的共享变量存储在主内存中&#xff0c;每个线程都有一个私有的本地内存&#xff0c;本地内存中存储了该…

AI:59-基于深度学习的行人重识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

SOEM源码解析——ecx_init_context(初始化句柄)

0 工具准备 1.SOEM-master-1.4.0源码1 ecx_init_context函数总览 /*** brief 初始化句柄* param context 句柄*/ void ecx_init_context(ecx_contextt *context) {int lp;*(context->slavecount) 0;/* clean ec_slave array *//* 清空从站信息数组 */memset(context->…

win10设置windows永不更新

以下方法能全部设置都要全部设置。 方法一&#xff1a;Windows设置 要想关闭Win10自动更新&#xff0c;比较简单的一种方法就是进入到Windows设置中&#xff0c;将Windows更新直接关闭。步骤如下&#xff1a; 1、按“Windows I”键&#xff0c;打开Windows设置&#xff0c;再…