上机实验六 一维数组 学号: 姓名: 一.目的要求 1. 掌握一维数组的基本概念,如何定义一维数组,如何初始化一维数组。 2. 掌握数组的基本操作:引用数组元素、行(列)求和,行(列)最大最小值,整个数组的输入输出等。 3. 掌握与数组有关的算法,如排序、找最大最小值(或位置)等。 二.实验内容 第1题、输入 n(n 不超过 10),然后输入 n 个数组元素,要求将数组元素在同一个数组中按逆序重新存放并输出。 如输入 5 1 2 3 4 5 应输出 5 4 3 2 1 #include void main(){ int a[10], i, n ; printf("请输入小于 10 的数n:\n"); scanf("%d", &n); printf("请输入%d 个整数:\n", n); for (i=0; i=0; i--) printf("%d ", a[i]); printf("\n", n); } 第2题、输入一个数组的所有元素,再输入一个整数m,把该数组的后 m 个数字移到数组的前头。 比如数组元素为:1 2 3 4 5 6 7 8 9 10,m=4,应输出:7 8 9 10 1 2 3 4 5 6 #include void main(){ int a[10], i, m, t, j ; printf("请输入10 个整数:\n"); for (i=0; i < 10; i++) scanf("%d", &a[i]); printf("请输入一个小于10 的数m:"); scanf("%d", &m); // 下面循环重复m 次, 每次将最后一个元素放到第一个位置 for (i=0; i0; j--) { a[j] = a[j-1]; } a[0] = t; //将最后那个元素放到第一个位置 } // 下面逐个打印数组元素 for (i=0; i<10; i++) printf("%d ", a[i]); printf("\n"); } 第3题、输入一个数组的所有元素值,将最大的元素与第一个元素交换,最小的元素与最后一个元素交换,然后输出数组所有元素。 (注:这是选择排序的一个改进方案,每一轮循环可以找出最大和最小两个元素,可以使循环次数减少一半,请在此方法的基础之上进行改进,编出完整的排序程序来,降序) #include void main(){ int a[10], i, m, n; printf("请输入10 个整数:\n"); for (i=0; i < 10; i++) scanf("%d", &a[i]); m = 0; // m 保留数组中最大...