
C语言编程:字符串连接与数组平均值计算

"这是一个关于2011年3月计算机二级C语言上机考试的题库,其中包含了两个填空题目,分别涉及字符串拼接和数组平均值计算的问题。"
第一题解析:
题目要求编写一个函数`fun()`,该函数接收两个字符串`str1`和`str2`作为参数,然后将`str2`拼接到`str1`的末尾。在提供的代码中,`void fun(char* str1, char* str2)`是待填充的函数。在解答过程中:
1. `while(【1】)`:这部分的目的是计算`str1`的长度。应填入`*(p1+i) != '\0'`,当`p1`指向的字符不是字符串结束标志'\0'时,继续执行循环,直到找到'\0'为止。
2. `for(;【2】; i++)`:这个for循环用于将`str2`的字符逐个复制到`str1`的末尾。`【2】`的条件应该是`*p2 != '\0'`,表示在`p2`未到达`str2`的结束标志之前,继续复制。
3. `*(p1+i)=【3】;`:这部分要将`str2`当前指针位置的字符赋值给`str1`的新位置。所以应填入`*p2`,这样可以将`p2`指向的字符复制到`p1+i`的位置。然后,`*p2++`会使得`p2`指向下一位字符,以便下一次循环。
完整后的代码段如下:
```c
void fun(char* str1, char* str2)
{
int i = 0;
char* p1 = str1;
char* p2 = str2;
while (*(p1 + i) != '\0')
i++;
for (; *p2 != '\0'; i++)
*(p1 + i) = *p2++;
*(p1 + i) = '\0';
}
```
第二题解析:
题目要求编写一个函数`fun()`,计算一维数组`x[N]`的平均值,并四舍五入保留两位小数。函数的原型可能类似于`double fun(double x[], int N)`。解答如下:
1. 首先,初始化一个变量`sum`来存储数组元素的总和,然后遍历数组,将每个元素累加到`sum`。
2. 计算平均值`avg`,即`sum`除以数组长度`N`。
3. 使用`printf`或其他方法将结果格式化为保留两位小数的浮点数。可以使用`%.2lf`格式说明符来实现这一需求。
示例代码可能如下:
```c
double fun(double x[], int N)
{
double sum = 0.0;
for (int i = 0; i < N; i++)
sum += x[i];
double avg = sum / N;
return avg;
}
// 在main函数中调用
double array_avg = fun(x, 10);
printf("avg = %.2lf\n", array_avg);
```
这两个题目涵盖了C语言的基础知识,包括字符串操作、指针的使用以及数组的处理,这些都是C语言学习者必须掌握的关键概念。
相关推荐










jiangminjun007
- 粉丝: 4
最新资源
- ZineMaker模板制作器:打造个性化电子杂志模板
- C#编程获取本机IP、子网掩码及网关信息
- 北大青鸟ACCP5.0S1考试试题参考
- 深入解析Apache JMeter 2.3.2在性能测试中的应用
- 深入解析QQ在线客服系统的功能与优势
- 在Windows下安装Linux系统的虚拟光驱VMware教程
- VC封装DELPHI Socket控件:稳定实用的FTP解决方案
- 深入解析ArcGIS Engine控件在GIS应用开发中的使用
- 用托管WebBrowser控件自制简易网页浏览器
- 笔记本屏幕保护新工具:一键开关管理
- JSP与MyEclipse结合实例教程分享
- 深入解析单片机原理及其接口技术
- 深入了解jasper软件:C语言实现JPEG2000源代码解析
- 深入探索ASP.NET 2.0程序设计源代码
- VB图表控件实例教程:teechart展示与应用
- 全面的JavaScript编辑器:fjse.exe特辑
- C++遗传算法:控制软件的实现与学习指南
- 进程查看器:方便软件开发人员的线程窗口查看工具
- 探索新世代人力资源管理系统(ext版本)功能与应用
- 深入解析FCFS调度算法:进程控制与作业管理
- DWR技术实现无数据库简单购物车示例
- WebReader:网页内容分割保存软件开发
- 简易Flash图片播放器:美观实用的设计
- 掌握Java应用转换为Windows可执行文件的技巧