第一部分:考点与作答区
考点:
- 输入输出流:使用
cin
和cout
进行基本的输入输出操作。 - 控制流语句:使用
if-else
语句进行条件判断。
作答区: 请编写一个C++程序,包含以下功能:
- 提示用户输入一个整数。
- 根据用户输入的整数,判断并输出该整数是正数、负数还是零。
第二部分:解题思路与答案
解题思路:
- 使用
cout
输出提示信息,提示用户输入整数。 - 使用
cin
获取用户输入的整数。 - 使用
if-else
语句判断整数的正负,并使用cout
输出结果。
答案:
#include <iostream>
using namespace std;
int main() {
int number;
cout << "请输入一个整数: ";
cin >> number;
if (number > 0) {
cout << "您输入的是正数。" << endl;
} else if (number < 0) {
cout << "您输入的是负数。" << endl;
} else {
cout << "您输入的是零。" << endl;
}
return 0;
}
这个练习题的答案创建了一个简单的C++程序,用于判断用户输入的整数是正数、负数还是零。这个练习题适合那些已经掌握了C++基础,并希望练习基本输入输出操作的开发者。
第三部分:扩展考点与扩展作答区
扩展考点:
- 字符串处理:使用
string
类和getline()
函数处理字符串输入。 - 控制台颜色设置:使用
cout
的setw()
和setcolor()
函数设置控制台输出颜色。
扩展作答区:
- 修改程序以使用
getline()
函数获取用户输入的整数,而不是cin
。 - 添加代码以在输出结果前设置控制台颜色。
第四部分:扩展解答思路与答案
扩展解答思路:
- 使用
getline()
函数获取用户输入的整数,以处理可能的输入错误,如非数字字符串。 - 使用
setw()
和setcolor()
函数设置控制台输出颜色,以提高用户界面的可读性。
扩展答案:
#include <iostream>
#include <string>
#include <conio.h> // 包含控制台颜色设置的库
using namespace std;
void setColor(int ForgC) {
WORD wColor;
HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_SCREEN_BUFFER_INFO csbi;
if (GetConsoleScreenBufferInfo(hStdOut, &csbi)) {
wColor = (csbi.wAttributes & 0xF0) + (ForgC & 0x0F);
SetConsoleTextAttribute(hStdOut, wColor);
}
return;
}
int main() {
string input;
int number;
int ForgC = 10; // 设置颜色
setColor(ForgC);
cout << "请输入一个整数: ";
getline(cin, input);
setColor(ForgC);
if (isdigit(input[0])) {
number = stoi(input);
if (number > 0) {
setColor(10); // 设置正数颜色
cout << "您输入的是正数。" << endl;
setColor(ForgC);
} else if (number < 0) {
setColor(4); // 设置负数颜色
cout << "您输入的是负数。" << endl;
setColor(ForgC);
} else {
setColor(7); // 设置零颜色
cout << "您输入的是零。" << endl;
setColor(ForgC);
}
} else {
setColor(12); // 设置错误颜色
cout << "输入无效,请输入一个整数。" << endl;
setColor(ForgC);
}
www.cdqyrcw.com
www.cdjnrcw.com
www.cdqbjzp.com
www.cdslrc.com
www.cdpdrc.com
return 0;
}
在这个扩展答案中,我们通过getline()
函数获取用户输入的整数,以处理可能的输入错误。同时,我们使用setw()
和setcolor()
函数来设置控制台输出颜色,以提高用户界面的可读性。这个练习题的扩展部分适合那些已经掌握了C++基础,并希望学习如何处理字符串输入和控制台颜色的开发者。