2013计算机二级C语言上机试题:倒数和与字符计数
需积分: 0 77 浏览量
更新于2024-08-04
收藏 31KB DOC 举报
本资源是一份针对2013年计算机二级考试的《C语言》上机试题及答案文档,主要包含两个部分:填空题和改错题。
1. **填空题**
- 函数`fun`的功能是计算并输出N(包括N)以内能被3或7整除的所有自然数的倒数之和。题目给出的代码中,首先定义了变量`i`和`sum`用于存储计数和累加倒数。填空部分如下:
```
for(i=1; i<=n; i++) // 第1处填空,表示循环条件,直到i等于n
{
if(i%3==0 || i%7==0) // 第2处填空,使用逻辑或运算符(||),表示同时满足3或7的整除条件
sum += 1.0/i; // 第3处填空,将每个符合条件的数的倒数累加到sum
}
```
这段代码确保了只有当`i`能同时被3或7整除时,才会将`1/i`加入到`sum`中。
2. **改错题**
- 考察的是统计字符串中大写字母和小写字母的个数。给定的`fun`函数存在以下错误:
- `voidfun(char*s,inta,intb)`函数声明中,`inta`和`intb`参数应该是指针类型,以便正确修改它们的值,所以应改为`int* a`和`int* b`。相应地,函数调用也需要使用指针操作,将`&upper`和`&lower`传递给函数。
- 更正后的代码如下:
```c
void fun(char* s, int* a, int* b) // 第1处修改:指针类型的参数声明
{
while (*s)
{
if (*s >= 'A' && *s <= 'Z') // 第2处保持不变
(*a)++;
if (*s >= 'a' && *s <= 'z') // 第2处保持不变
(*b)++;
s++;
}
}
```
在`main`函数中调用`fun`时,需传入指针变量`&upper`和`&lower`:
```c
main()
{
...
fun(s, &upper, &lower); // 通过指针传递变量地址
...
}
```
综上,这份文档提供了2013年计算机二级考试C语言上机试题的实践练习,有助于考生熟悉C语言编程,并掌握如何处理基础的数据结构、控制流程以及字符处理等知识点。通过解答这些问题,考生可以检验自己对C语言的理解和应用能力。
xinkai1688
- 粉丝: 388
- 资源: 8万+
最新资源
- nanonote:一种简约的笔记应用程序
- IT-manuale-del-software-developer:软件开发人员指南
- TrackingDoc-crx插件
- C_Repository:C ++代码
- tsv2vcf-开源
- pandas_gbq_magic-1.1.2.tar.gz
- apollo-ps3:阿波罗保存工具(PS3)
- snews v1.7.1 英文版
- rmt:SUSE Customer Center的RPM存储库镜像工具和注册代理
- my_vim:我的vimrc
- RebootInBot
- dmnmgr-client:DMN管理器-具有附加功能的DMN编辑器,例如验证,模拟和基本git支持
- pandas_genomics-0.12.0.tar.gz
- 参考资料-基于STC单片机的电动客车空调控制系统设计.zip
- 金蝶虚拟机补丁-编码:#13397609虚拟机补丁.zip
- ToyChat-开源