fork download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. int data[11] = {1, 2, 4, 6, 8, 9, 12, 15, 149, 156}; // 最大11個まで格納できるように確保
  5. int n = 10; // 現在の要素数
  6. int x;
  7.  
  8. scanf("%d", &x); // 挿入する整数を読み込む
  9.  
  10. // 挿入位置を見つける
  11. int pos = 0;
  12. while (pos < n && data[pos] < x) {
  13. pos++;
  14. }
  15.  
  16. // 要素を後ろにずらす
  17. for (int i = n; i > pos; i--) {
  18. data[i] = data[i - 1];
  19. }
  20.  
  21. // 挿入
  22. data[pos] = x;
  23. n++; // 要素数を1つ増やす
  24.  
  25. // 出力(%5dを使用)
  26. for (int i = 0; i < n; i++) {
  27. printf("%5d", data[i]);
  28. }
  29. printf("\n");
  30.  
  31. return 0;
  32. }
  33.  
  34.  
Success #stdin #stdout 0s 5328KB
stdin
1 2 4 5 6 8 9 12 15 149 156
stdout
    1    1    2    4    6    8    9   12   15  149  156