C语言编程:将字符串连接及转换大写

需积分: 7 1 下载量 93 浏览量 更新于2024-07-29 收藏 208KB PDF 举报
"全国计算机等级考试(NCRE)二级考试C语言相关题目,包含填空题和改错题,旨在考察考生对C语言字符串操作的掌握程度。" 在计算机二级考试中,C语言部分通常会涉及到基础语法、数据类型、运算符、流程控制、函数、数组以及字符串等核心知识点。在这个特定的题目中,我们看到的是与字符串操作密切相关的题目。 首先,让我们深入分析填空题。题目要求编写一个函数`fun()`,将输入的字符串`str2`接在字符串`str1`的后面。这个功能涉及到字符串长度的计算、字符拷贝以及字符串终止符`\0`的处理。在给出的代码中,有三个填空位置需要填写: 1. `while(【1】)` 这里需要填写一个条件,使得循环直到找到字符串`str1`的结束标志`\0`。因此,正确的填空内容是`*(p1+i) != '\0'`,这表示在`p1`指向的字符不等于`\0`时,循环继续。 2. `for(;【2】;i++)` 这个for循环用于将`str2`的字符复制到`str1`的末尾。`【2】`处应填入初始化条件,即`p2`指向`str2`的第一个字符,所以正确填写是`*p2 != '\0'`。 3. `*(p1+i)=【3】;` 在每次循环中,需要将`str2`当前指针位置的字符赋值给`str1`的新位置。这里要用到指针的自增操作,所以填空内容是`*p2++`,这样`p2`会在每次循环后向后移动一位,指向下一个字符。 接下来是改错题,目标是将字符串中的小写字母转为大写。根据题目描述,输入的字符串可能是混合大小写的,函数`fun()`需要处理这种情况。改错题通常需要考生仔细检查程序逻辑和语法错误,但题目没有给出具体的代码,因此无法直接提供改正后的代码。通常,这类问题可以通过使用`toupper()`函数来转换小写字母为大写字母,这是一个标准库函数,位于`<ctype.h>`头文件中。 这两个题目覆盖了C语言中的基本字符串操作,包括字符数组的遍历、字符的拷贝以及字符串的连接。对于备考二级考试的考生,熟练掌握这些基本操作是非常重要的,因为它们是解决更复杂问题的基础。同时,了解并能正确使用C标准库函数也是必要的技能。