C语言编程练习:阶乘计算、素数因子与查找低分
需积分: 13 154 浏览量
更新于2024-07-29
2
收藏 882KB DOC 举报
“2011年计算机二级C语言99套上机操作题及答案.doc”
本资源包含的是关于计算机二级考试中C语言部分的99套上机操作题目及对应的答案,旨在帮助考生熟悉考试格式,提升C语言编程能力。以下是其中三道典型题目及其解析:
### 填空题
题目要求编写一个计算阶乘的递归函数`fun`。已给出部分代码如下:
```c
long fun(int n)
{
if(___1___)
return(n*fun(___2___));
return___3___;
}
```
正确答案如下:
- 第1处填空:`n>1`。这是递归的基础条件,只有当`n`大于1时,才继续进行递归调用。
- 第2处填空:`n-1`。每次递归调用时,将`n`减1,直到`n`等于1。
- 第3处填空:`1`。当`n`等于1时,结束递归,返回1作为阶乘的基本值。
### 改错题
该程序的目标是找出输入整数的所有素数因子。代码中的错误如下:
```c
IsPrime(int n)
{
int i, m;
m = 1;
for(i = 2; i < n; i++)
if!(n % i) // 错误1:需要添加括号
{
m = 0;
break;
}
return(m);
}
```
改正后的代码:
```c
IsPrime(int n)
{
int i, m;
m = 1;
for(i = 2; i < n; i++)
if (!(n % i)) // 正确1:添加括号
{
m = 0;
break;
}
return(m);
}
```
### 编程题
题目要求编写一个函数`fun`,找出数组`score`中低于平均分的分数,并将其存储到另一个数组`below`中。示例数据如下:
```c
int score[] = {10, 20, 30, 40, 50, 60, 70, 80, 90};
```
函数`fun`可能的实现如下:
```c
#include <stdio.h>
void fun(int score[], int M, int below[], int *count)
{
int avg = 0, i, j = 0;
for(i = 0; i < M; i++) // 计算平均分
avg += score[i];
avg /= M;
for(i = 0; i < M; i++) // 找出低于平均分的分数
if(score[i] < avg)
{
below[j++] = score[i]; // 将分数存入below数组
(*count)++;
}
}
int main()
{
int score[] = {10, 20, 30, 40, 50, 60, 70, 80, 90}, below[10], count = 0;
fun(score, 9, below, &count);
printf("Below average scores: ");
for(int i = 0; i < count; i++)
printf("%d ", below[i]);
printf("\n");
return 0;
}
```
以上代码首先计算了数组`score`的平均分,然后遍历数组,将低于平均分的分数存入`below`数组。在主函数`main`中调用`fun`,并输出结果。
通过这些题目,考生可以复习和练习C语言的基础语法、递归、循环、数组操作以及错误排查等技能,为计算机二级考试做好充分准备。
2023-06-02 上传
2014-01-18 上传
2011-10-13 上传
2021-11-25 上传
2022-07-13 上传
2022-10-27 上传
2022-07-11 上传
2021-09-21 上传
2021-09-21 上传
云开雾散
- 粉丝: 0
- 资源: 2
最新资源
- 单片机串口通信仿真与代码实现详解
- LVGL GUI-Guider工具:设计并仿真LVGL界面
- Unity3D魔幻风格游戏UI界面与按钮图标素材详解
- MFC VC++实现串口温度数据显示源代码分析
- JEE培训项目:jee-todolist深度解析
- 74LS138译码器在单片机应用中的实现方法
- Android平台的动物象棋游戏应用开发
- C++系统测试项目:毕业设计与课程实践指南
- WZYAVPlayer:一个适用于iOS的视频播放控件
- ASP实现校园学生信息在线管理系统设计与实践
- 使用node-webkit和AngularJS打造跨平台桌面应用
- C#实现递归绘制圆形的探索
- C++语言项目开发:烟花效果动画实现
- 高效子网掩码计算器:网络工具中的必备应用
- 用Django构建个人博客网站的学习之旅
- SpringBoot微服务搭建与Spring Cloud实践