原题链接:[编程入门]数组插入处理
解题思路:
1.输入 9 个元素;
2.输入第 10 个元素;
3.插入数字并排序;
4.输出排序后的元素。
注意事项:
1.插入数字后,剩余数字需要从后往前移动;
2.插入数字后,记得退出循环。
参考代码:
// 输入 9 个元素
void arr_scanf(int arr[10])
{
int i = 0;
for (i = 0; i < 9; i++)
{
scanf("%d", &arr[i]);
}
}
// 插入数字并排序
void my_sort(int arr[10], int a)
{
int i = 0;
for (i = 0; i < 10; i++)
{
if (a < arr[i])//找到需要插入数字的位置
{
//标记插入数字位置
int pos = i;
//将插入位置之后的数字(59 62 101)从后往前移动
int j = 0;
for (j = 9; j > pos ; j--)
{
arr[j] = arr[j-1];
}
//插入数字 a
arr[pos] = a;
break;
}
}
}
// 输出 10 个元素
void arr_printf(int arr[10])
{
int i = 0;
for (i = 0; i < 10; i++)
{
printf("%d\n", arr[i]);
}
}
int main()
{
int arr[10] = { 0 };
// 输入 9 个元素
arr_scanf(arr);
// 输入第 10 个元素
int a = 0;
scanf("%d", &a);
// 插入数字并排序
my_sort(arr, a);
// 输出排序后的元素
arr_printf(arr);
return 0;
}0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复