/*
*Copyright(c) 2015/5/11 CSDN博客
*All rights reserved.
*文件名称:main.c
*作 者:金叶
*完成日期:2015/5/11
*版本号:V1.0
*问题描述:项目3-有序数组中插入数据
*程序输出:定义好一个有10个元素的数组,先输入9个呈升序的数作为前9个元素,再输入一个数,要求按原来排序的规律将它插入数组中。
例如,9个呈升序的数为1 7 8 17 23 24 59 62 101,需要插入的数字为50,输出的序列则为1 7 8 17 23 24 50 59 62 101。
*/
#include <stdio.h>
int main()
{
int a[10]={1,7,98,17,23,24,59,62,101,};
int i;
for (i=10;i>0;i--){
a[i]=a[i-1];
} //第9元素为空,把前9元素后移一位,空出0位元素
int m;
printf("putin m=");
scanf("%d",&m);
a[0]=m; //0位元素放入m的值
//按序排列
for (i=0;i<10;i++){
int j;
for (j=0;j<10-i;j++){
if (a[j]>a[j+1]){
int t;
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
//输出元素值
for (i=0;i<10;i++){
printf("%d\t",a[i]);
}
return 0;
}
老师的答案里的
- int d[10];
- int i, n;
- for(i=0; i<9; i++)
- scanf("%d", &d[i]);
- scanf("%d", &n); //要插入的数
- i = 8; <----这个是怎么算的?