在大一C语言编程的重点复习题中,涵盖了多个核心知识点,包括数组操作、条件判断、循环控制、函数的使用以及基本算法的实现。下面将详细解释这些知识点。
1. **众数查找**:
- 代码中寻找众数的算法是通过遍历数组`a[]`,统计每个元素出现的次数并存储在`b[]`数组中。`b[i]`表示`a[i]`出现的次数。
- 使用两个嵌套循环,首先检查`a[i]`与`a[j]`是否相等,若相等则`b[i]`加一。
- 计算出现次数最多的元素(最大值`max`),最后遍历`b[]`找到与`max`相等的元素,即为众数。如果众数不存在(出现次数为1),输出"No";否则输出众数及其出现次数。
2. **平方数的查找**:
- 这个程序用于找出千位数上与个位数上的数字之和等于该数平方的四位数。
- 使用循环遍历1000到9999的整数,对每个数进行分解,`a=i/100`获取千位数,`b=i%100`获取个位数。
- 检查条件`i==(a+b)*(a+b)`,如果满足,输出该数。
3. **数组排序**:
- 简单的冒泡排序算法,通过两层循环进行比较和交换元素,将数组从小到大排列。
- 内层循环用于相邻元素之间的比较,若前一个元素大于后一个元素,则交换它们的位置。
- 外层循环控制总的比较轮数,确保所有元素都有机会被正确排序。
4. **插入排序**:
- 当输入一个新值`n`时,这个程序会将`n`插入到已排序的数组中,并保持数组有序。
- 如果`n`大于数组最后一个元素,将其添加到数组末尾。否则,找到`n`应插入的位置,移动较大的元素向后,然后将`n`插入。
5. **计算平均值**:
- 计算二维数组中所有元素的总和以及各列的平均值。
- 遍历数组,累加每个元素的值,同时计算每列的和(存储在`sum[]`中)。
- 最后计算总平均值,输出各列平均值和总平均值。
6. **查找最小值及下标**:
- 找出二维数组中的最小值以及它的行号和列号。
- 初始化最小值为数组的第一个元素,然后遍历整个数组,如果找到更小的值,更新最小值及其对应的行和列下标。
- 输出找到的最小值及其位置。
7. **计算平均值的函数**:
- 定义了一个名为`avernum`的函数,接收一个整型数组作为参数,返回数组的平均值。
- 使用循环累加数组元素,然后除以数组长度得到平均值。
这些题目旨在帮助初学者掌握C语言的基本语法、控制结构和算法实现,是学习C语言编程的重要练习。通过解决这些问题,学生可以加深对数组、条件语句、循环、函数调用等概念的理解,并提高编程能力。