【算法筆記】Codeup 100000569A

本專欄僅僅用於個人記錄刷題過程,如有更好的解決方法,可以留言哦

題目要求

有一個已排好序的數組,要求輸入一個數後,按原來排序的規律將它插入到數組中。
假設數組長度爲10,數組中前9個數(這9個數要求從鍵盤上輸入,輸入時要滿足自小到大的輸入順序)已經按從小到大進行排序。
然後再從鍵盤上輸入一個整數,將此整數插入到前有序的9個數中,使得最終的10個數依然是從小到大有序的。
定義數組時,把數組長度定義爲10.

要求輸入

第一行輸入以空格分隔的9個整數數,要求按從小到大的順序輸入。
第二行輸入一個整數

樣例

1 11 21 31 41 51 61 71 81
45

要求輸出

從小到大輸出這10個數,每個數一行。

樣例

1
11
21
31
41
45
51
61
71
81

可AC代碼如下

#include<stdio.h>
int main(){
	int a[10];
	for(int i = 0; i < 9;i++){
		scanf("%d",&a[i]);		
	}
	scanf("%d",&a[9]);
	for(int i = 9; i > 0 ; i--){
		if(a[i]<a[i-1]){
			int temp = a[i-1];
			a[i-1] = a[i];
			a[i] = temp;
		}	
	}
	for(int i = 0; i < 10; i++){
		printf("%d\n",a[i]); 
	}
	return 0;
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章