解题思路:
用if来判断正序还是逆序,两种情况只需要修改中间符号即可,用的依然是找到i的位置然后后移的方法
注意事项:
注意数组的下标,和循环的条件
参考代码:
#include<stdio.h> int main() { int a[10]; int x,i,j,n; for(i=0;i<=8;i++) { scanf("%d",&a[i]);//输入 } scanf("%d",&n); for(i=0;i<=8;i++) { if(a[1]<a[2])//判断正序 { if(n<=a[i]) { j=i;break; } }else //判断逆序 { if(n>=a[i]) { j=i;break; //找位置 } } } for(i=8;i>=j;i--) { a[i+1]=a[i];//后移 } a[j]=n; for(i=0;i<=9;i++) { printf("%d\n",a[i]); } return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:778 |
川哥的吩咐 (C语言代码)浏览:875 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:566 |
【绝对值排序】 (C++代码)浏览:672 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1039 |
【出圈】 (C语言代码)浏览:796 |
WU-蓝桥杯算法提高VIP-勾股数 (C++代码)浏览:1607 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:691 |
C语言训练-亲密数 (C语言代码)浏览:682 |
最小公倍数 (C语言代码)浏览:1029 |