中国石油大学华东C语言在线测评答案 第8章数组级亲测正确.docx
- 文档编号:29456770
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:21
- 大小:72.81KB
中国石油大学华东C语言在线测评答案 第8章数组级亲测正确.docx
《中国石油大学华东C语言在线测评答案 第8章数组级亲测正确.docx》由会员分享,可在线阅读,更多相关《中国石油大学华东C语言在线测评答案 第8章数组级亲测正确.docx(21页珍藏版)》请在冰豆网上搜索。
中国石油大学华东C语言在线测评答案第8章数组级亲测正确
8.7求最大值
问题描述要求从键盘输入10个整型数据,找出其中的最大值并显示出来。
输入范例3 0 54 -710 27 32767 10 1 500 2
输出范例32767
提示先假定第一个元素时最大值,然后和其他的元素一个一个的进行比较,直到找到最大值。
#include
intmain()
{
inta[10],max,i;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
for(i=0;i<10;i++)
if(a[i]>max)
max=a[i];
printf("%d\n",max);
return0;
}
8.6数组逆序输出
问题描述
从键盘上输入一个数组(10个元素),将原数组逆序重新排列后输出。
要求输出每个元素时以一个空格隔开。
提示:
用第一个与最后一个交换。
#include
intmain()
{
inta[10],i;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=9;i>=0;i--)
printf("%d",a[i]);
printf("\n");
return0;
}
8.1谁能出线
背景:
电视台举办“超级学生”才艺大赛,由于报名人数狂多,所以要先进行分组预赛。
按规定,每10名学生为一个预赛小组,评委打出分数(0~100分),各小组第一名可以进入下一轮;如果有多名学生得分相同都是第一名,则可同时进入下一轮。
输入:
按顺序给出一个小组10个人的最后得分(int)。
输出:
能够出线的学生序号(0~9)。
#include
intmain()
{
inta[10],i,max;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
for(i=0;i<10;i++)
if(a[i]>max)max=a[i];
for(i=0;i<10;i++)
if(a[i]==max)
printf("%d\n",i);
return0;
}
8.2统计素数的个数
求出 2到m之间(含m,m<=1000)所有素数并放在数组a中。
输入:
正整数m
输出:
从小到大的所有素数,及个数(素数输出的时候用%4d来控制)
#include
intmain()
{
inta[1001],m,n,i,j;
scanf("%d",&m);
for(i=1;i<=m;i++)
a[i]=i;
a[1]=0;
for(i=2;i<=m;i++)
for(j=i+1;j<=m;j++)
{
if(a[j]!
=0&&a[i]!
=0)
if(a[j]%a[i]==0)
a[j]=0;
}
n=0;
for(i=2;i<=m;i++)
if(a[i]!
=0)
{printf("%4d",a[i]);
n++;}
printf("\n%d\n",n);
return0;
}
8.3冒泡法排序
冒泡排序(BubbleSort)的基本概念是:
依次比较相邻的两个数,将小数放在前面,大数放在后面。
即在第一趟:
首先比较第1个和第2个数,将小数放前,大数放后。
然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。
至此第一趟结束,将最大的数放到了最后。
在第二趟:
仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。
如此下去,重复以上过程,直至最终完成排序。
由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,所以称作冒泡排序。
编写程序,对输入的十个数按照从小到大排序
#include
intmain()
{
inta[10],i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
for(i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
return0;
}
8.4插入法排序
如果一个数组中保存的元素是有序的(由小到大),向这个数组中插入一个数,使得插入后的数组元素依然保持有序。
定义一个数组,长度为11,初始元素为10个,按照从小到大的方式输入,然后输入一个要插入的元素,使得插入后仍然有序。
8.5求各位数字组成的最大数
任意输入一个自然数,输出该自然数的各位数字组成的最大数。
输入:
自然数n输出:
各位数字组成的最大数
#include
intmain()
{
inta[100]={0},k,n,i,j,t;
scanf("%d",&n);
for(k=0;n!
=0;k++)
{a[k]=n%10;
n=n/10;}
for(j=0;j<99;j++)
for(i=0;i<99-j;i++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中国石油大学华东C语言在线测评答案 第8章数组级亲测正确 中国 石油大学 华东 语言 在线 测评 答案 数组 级亲测 正确