1、C语言 定义一个数组a[11],用以存放学生的成绩,2、从键盘输入10个学生成绩,

3. 采用冒泡法,将学生成绩按照从高到低进行排序

4. 再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组

5. 将排好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列。

#include<stdio.h>
void main()
{
int b[11];
int i,j,t;
printf("请输入10个学生成绩:\n");
for(i=0;i<10;i++)
scanf("%d",&b[i]);
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(b[i]<b[i+1])
{t=b[i];b[i]=b[i+1];b[i+1]=t;}
printf("首次排序结果:\n");
for(i=0;i<10;i++)
printf("%4d",b[i]);
printf("\n");
printf("请再输入另一个学生成绩¨:");
scanf("%d",&b[10]);
for(i=0;i<11;i++)
if(b[10]>b[i])
{
t=b[10];
for(j=10;j>i;j--)
b[j]=b[j-1];
b[j]=t;
}
printf("再次结果为:\n");
for(i=0;i<11;i++)
printf("%3d ",b[i]);
printf("\n");
printf("最后结果为: \n");
for(i=0,j=10;i<j;i++,j--)
{
t=b[i];
b[i]=b[j];
b[j]=t;
}
for(i=0;i<11;i++)
printf("%3d ",b[i]);
printf("\n");
}
温馨提示:答案为网友推荐,仅供参考
相似回答