日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

每日程序C语言28-有序数组插入元素

發布時間:2024/8/1 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 每日程序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; }

    運行結果

    在中間插入元素
    在末尾插入元素

    今日鞏固

  • 數組的插入方法:在數組插入時,插入位置后面的元素都要后移
  • break的使用,在這個問題解決時,如果一開始不使用break,就會出現錯誤,見示例default圖
  • 總結

    以上是生活随笔為你收集整理的每日程序C语言28-有序数组插入元素的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。