C++计算机二级考试上机实战:改错题、应用题与日期类实现
需积分: 1 171 浏览量
更新于2024-08-02
收藏 20KB DOCX 举报
在计算机二级考试C++上机考试中,考生将面临三个不同类型的题目:程序改错、简单应用以及综合应用。这些题目考察了C++语言的基础知识和编程技巧。
1. **程序改错题**
考生需使用Visual C++ 6.0编辑器打开名为1.cpp的文件,该程序功能是接收用户输入的字符串,将其中的小写字母转换为大写字母。程序中存在三个错误需要修改。首先,在提示用户输入字符串的提示符处(//********error********)应删除注释。其次,在`getline`函数调用后忘记添加结束读取的标识,应在这一行添加`'\n'`。最后,在处理小写字母的`if`条件判断中,`if(str[i] == 'a')`的条件不正确,应该用`==`比较,且不需要在等号后加单引号。正确代码示例:
```cpp
// 修改后的代码
#include <iostream>
void main()
{
int i = 0;
char str[120];
cout << "Enter a string end with ‘?’.\n";
cin.getline(str, 120);
while (str[i])
{
if (str[i] == 'a') // 修正这里
str[i] = str[i] - 'a' + 'A';
i++;
}
cout << "The result is: " << str << "\n";
return;
}
```
2. **简单应用题**
2.cpp文件中的任务是实现`fun`函数,该函数接受两个字符串`s1`和`s2`,将`s1`中下标为偶数的字符复制一次并追加到`s2`。考生需在`fun`函数的实现部分完成代码,注意保持函数参数和返回值类型不变。示例代码:
```cpp
// 在fun函数中添加实现
void fun(char* s1, char* s2)
{
for (int i = 0; s1[i]; i++)
{
if (i % 2 == 0) // 下标为偶数
s2[strlen(s2)] = s1[i]; // 将字符追加到s2末尾
s2[strlen(s2) + 1] = '\0'; // 每次追加后添加终止符
}
}
// main函数部分保持不变
```
3. **综合应用题**
在3.cpp文件中,已有一个日期类Date的定义不完整。考生需要在注释1之后定义私有成员变量year、month、day,并为类添加必要的构造函数、赋值运算符等。这部分需要熟悉类的封装和继承原则,以及基本的构造与赋值操作。完整的类定义可能如下:
```cpp
class Date
{
private:
int year;
int month;
int day;
public:
// 构造函数
Date(int y, int m, int d) : year(y), month(m), day(d) {}
// 赋值运算符
Date& operator=(const Date& other)
{
if (this != &other)
{
year = other.year;
month = other.month;
day = other.day;
}
return *this;
}
// 其他方法(如显示日期、比较等)
};
// 在注释1后的具体实现区域补充以上代码
```
以上是计算机二级考试C++上机考试的主要知识点,涵盖了基础的字符串操作、条件判断、函数实现以及面向对象编程中的类定义。考生需要熟练掌握这些概念并能灵活运用到实际编程中。
点击了解资源详情
208 浏览量
149 浏览量
2022-10-23 上传
2022-10-23 上传
2022-10-23 上传
2022-07-13 上传
2022-07-13 上传
105 浏览量

极客11
- 粉丝: 700
最新资源
- 深入解析JDK 1.8源码:非并发与并发数据结构
- 深入探讨51单片机P0口上拉电阻工作原理与应用
- 笔记本共享WiFi的设置方法及操作指南
- C#窗体技术实现字型窗体应用
- 兼容多版本的安卓解锁网易云音乐工具
- 115 DiscRobot详细教程与常见问题解答
- Cortex M3小型操作系统:实时多任务处理
- Java技术打造的网上订餐系统详解
- HTML网站源码基础:初学者的项目实践指南
- 深入学习Oracle数据库设计与Java应用实践
- Java.Httpclient-4.5必备jar包,提升网站连接效率
- SEOer必备工具:免费长尾关键词搜索神器
- 《Windows Phone 7高级编程》随书源代码深度解析
- 揭秘机锋市场高仿应用下载与评分机制
- MATLAB二维三维图形绘制教程
- 我的个人网站源代码分享-HTML网站开发