每日程序C语言28-有序数组插入元素
生活随笔
收集整理的這篇文章主要介紹了
每日程序C语言28-有序数组插入元素
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:
有一個已經排好序的數組,現輸入一個數,要求按原來的規律將它插入數組中
程序分析
主要代碼
int main(){int a[11]={11,15,24,25,37,88,91,92,100,117};int num;//要插入的數int t1,t2;int i,j;printf("目前的數組:\n");for(i=0;i<10;i++){printf("%5d",a[i]);}printf("\n請輸入一個新的數插入其中\n");scanf("%d",&num);if (num>a[9])//比較這個數和數組的最后一個數的大小,如果大于最后一個數直接插入數組末尾即可{a[10]=num;}else{for(i=0;i<10;i++){//循環遍歷數組if (a[i]>num)//如果數組中元素大于這個數,就插入到這個位置,這個位置之后的數都向后移動一個單位{t1=a[i];//保存第i個位置的數值a[i]=num;//將新輸入的數插入到第i個位置for (j = i+1; j < 11; j++)//將i之后的元素向后移動一個單位{t2=a[j];a[j]=t1;t1=t2;}break;//這里的break很關鍵,如果不跳出循環,會繼續將a[i]和num比下去,繼續替換后面的值}}}printf("插入后的數組:\n");for(i=0;i<11;i++){printf("%5d",a[i]);}system("pause");return 0; }運行結果
在中間插入元素
在末尾插入元素
今日鞏固
總結
以上是生活随笔為你收集整理的每日程序C语言28-有序数组插入元素的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 每日程序C语言27-矩阵对角线求和
- 下一篇: 每日程序C语言29-将数组逆序输出