输入10个有序的数,保存到数组中,再输入一个数,> 插入到这10个数,保存有序。

分析:
1.定义一个保存11个元素的数组,a[11]
2.输入10个有序(从小到大)的数a[0]到a[9]
3.输入要插入的数num
4.遍历数组中前10个数。
5.如果num小于数组中某个元素,说明找到我们插入的>位置。
6.把这个位置以及后的元素往后一位
7.在该位置放入num
8.如果没有位置,把这个元素最后一个。
9.打印

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5    int a[11] = {0}, num, i;
 6    puts("请输入10个从小到大有序的数:");
 7    for(i=0; i<10; i++){
 8       scanf("%d", &a[i]);
 9    }
10    puts("请输入num:");
11    scanf("%d", &num);
12    for(i=0; i<10; i++){
13       if(num<a[i]){
14          int j;
15          for(j=10; j>i; j--){
16             a[j] = a[j-1];
17          }
18          a[i] = num;
19          break;
20       }
21    }
22    if(i==10)
23       a[10] = num;
24    for(i=0; i<11; i++){
25       printf("%d ", a[i]);
26    }
27    putchar('\n');
28 }

 

posted @ 2013-11-08 22:34  intj_zhouy  阅读(914)  评论(0)    收藏  举报