华北水院高级语言程序设计(C语言)实验报告(五)
2015--2016学年第二学期
2015级专业:学号:姓名:………………………………………………………………………………………………
一、实验题目:数组(2)
二、实验目的:(略)
三、实验内容
1.有一个数值从小到大排好顺序的数组,要求从键盘输入一个数,将该数插入数组后,数组中的数仍按从小到大有序。
例如,数组中原来的顺序为{1,5,11,16,18,21},从键盘输入一个数15,将其插入到该数组后,数组中数的顺序为{1,5,11,15,16,18,21}
源代码:运行结果:
#include <string.h>
#include <stdio.h>
void main ()
{int a[20];
int i,t,j=0;
printf("请输入数字组");
for (t=0;t<6;t++)
{scanf("%d",a[t]);};
printf("请输入插入数字");
scanf("%d",&i);
for (t=0;i<a[t];t++);
while (j<t)
{printf("%d\n",a[j]);
j++;}
printf("%d\n",i);
while (a[t]!=0)
{printf ("%d\n",a[t]);t++;}
}
2.从键盘输入全班学生(如:10人)的学号及计算机课的成绩,编程按分数由高到低排序并输出排序后的学号和成绩,然后求全班该课程的平均成绩。
源代码:运行结果:
#include <stdio.h>
#include <string.h>
void main ()
{int xh[20];
int cj[20];
int i,j,k,m,sum=0;
double b;
printf("请输入学号");
for (i=0;i<10;i++)
scanf("%d",&xh[i]);
printf("请输入学号的成绩");
for (i=0;i<10;i++)
scanf ("%d",&cj[i]);
for (i=0;i<9;i++)
{k=i;
for (j=i+1;j<10;j++)
{if (cj[k]<cj[j])
k=j;};
if(k!=i)
{m=cj[i];
cj[i]=cj[k];
cj[k]=m;
m=xh[k];
xh[k]=xh[i];
xh[i]=m;}}
for (i=0;i<10;i++)
printf ("%d\t%d\t",xh[i],cj[i]); for(i=0;i<10;i++)
sum+=cj[i];
b=sum/10.0;
printf("平均成绩是%f",b);
}。