C语言编程练习:南开100题解析

版权申诉
0 下载量 62 浏览量 更新于2024-07-02 收藏 91KB DOC 举报
"这是一份关于二级C语言的练习题集,包含四道题目,主要涉及数组、条件判断、循环和函数的应用。" 第一题详解: 该题要求编写一个名为`fun`的函数,功能是找出`score`数组中低于平均分的元素,并将它们存储在`below`数组中。首先计算`score`数组的平均分,然后遍历数组,如果元素小于平均分,则将其存入`below`数组,并更新计数器`k`。函数返回值为低于平均分的元素个数。 代码解析: 1. 初始化变量`i`,`k`(用于记录低于平均分的元素个数),以及`aver`(用于计算平均分)。 2. 使用for循环计算`score`数组的平均分。 3. 再次使用for循环遍历数组,比较每个元素与平均分,若小于平均分则将其存入`below`数组并增加`k`的值。 4. 函数返回`k`。 第二题详解: 此题要求编写一个`fun`函数,找出1到100之间能被7或11整除,但不能同时被7和11整除的数字,并将这些数字存入`a`数组中,通过指针`n`返回这些数的个数。 代码解析: 1. 初始化变量`i`(用于遍历1到100)和`j`(记录满足条件的数字个数)。 2. for循环遍历1到100,使用if条件判断检查是否满足题目要求,即能被7或11整除但不能被77整除。 3. 如果满足条件,将数字存入`a`数组并增加`j`的值。 4. 函数返回`j`。 第三题详解: 本题的任务是编写`fun`函数,找出所有能整除给定整数`x`且不是偶数的数,并按照从小到大的顺序存入`pp`数组中,返回这些除数的个数。 代码解析: 1. 初始化变量`i`,`j`(记录满足条件的除数个数),`k`(用于后续数组操作),以及指向`pp`数组的指针`t`。 2. 使用两个for循环,先将所有非偶数整数(1到x)存入`t`数组,然后再次遍历`t`数组,查找能整除`x`的非偶数除数。 3. 将找到的非偶数除数存入`pp`数组并增加`k`的值。 4. 函数返回`k`。 第四题详解: 题目要求编写`fun`函数,统计输入字符串`tt`中26个小写字母各自出现的次数,并将结果存储在`pp`数组中。 代码解析: 1. 初始化`pp`数组的所有元素为0,用于存储每个字母出现的次数。 2. 使用while循环处理字符串直到遇到空字符。 3. 在循环内,使用switch-case结构对每个字符进行判断,根据字符对应的字母序号增加`pp`数组相应位置的计数。 4. 循环结束后,`pp`数组中的元素就表示了对应字母在字符串`tt`中出现的次数。 这四道题目分别考察了C语言中基本的数据操作、逻辑判断、函数调用以及字符串处理等基础知识,对于学习C语言的初学者来说,是很好的练习题目。