1414:【17NOIP普及组】成绩
题目描述
牛牛最近学习了 C++入门课程,这门课程的总成绩计算方法是:总成绩 = 作业成绩 × 20% + 小测成绩 × 30% + 期末考试成绩 × 50%。牛牛想知道,这门课程自己最终能得到多少分。
解题思路
- 读取输入:从输入中读取牛牛的作业成绩、小测成绩和期末考试成绩。
- 计算总成绩:按照给定的比例计算总成绩。
- 输出结果:输出计算得到的总成绩。
代码实现
#include <iostream>
using namespace std;
int main() {
int A, B, C; // 定义牛牛的作业成绩、小测成绩和期末考试成绩
cin >> A >> B >> C; // 从输入读取成绩
// 按照给定的比例计算总成绩
int totalScore = A * 20 / 100 + B * 30 / 100 + C * 50 / 100;
cout << totalScore; // 输出总成绩
return 0; // 程序结束
}
代码解析
- 使用三个整数变量
A
、B
、C
来存储输入的作业成绩、小测成绩和期末考试成绩。 - 根据给定的百分比计算总成绩,每个成绩乘以相应的百分比然后求和。
- 使用
cout
输出计算出的总成绩。 - 程序使用标准输入输出流
cin
和cout
进行数据的读取和输出。
1016:整型数据类型存储空间大小
题目描述
分别定义int,short类型的变量各一个,并依次输出它们的存储空间大小(单位:字节)。
解题思路
- 使用
sizeof
运算符来获取int
和short
类型的变量的存储空间大小。 - 输出这两个数据类型的存储空间大小,单位为字节。
代码实现
#include <iostream>
using namespace std;
int main() {
// 定义int和short类型的变量
int intVar;
short shortVar;
// 输出int和short类型的变量的存储空间大小
cout << sizeof(intVar) << " " << sizeof(shortVar);
return 0; // 程序结束
}
代码解析
- 使用
sizeof
运算符来获取intVar
(int
类型变量)和shortVar
(short
类型变量)的存储空间大小。 - 使用
cout
输出这两个变量的存储空间大小,单位为字节。 - 程序不需要输入,直接输出
int
和short
类型的存储空间大小。
1017:浮点型数据类型存储空间大小
题目描述
分别定义float,double类型的变量各一个,并依次输出它们的存储空间大小(单位:字节)。
解题思路
- 使用
sizeof
运算符来获取float
和double
类型的变量的存储空间大小。 - 输出这两个数据类型的存储空间大小,单位为字节。
代码实现
#include <iostream>
using namespace std;
int main() {
// 定义float和double类型的变量
float floatVar;
double doubleVar;
// 输出float和double类型的变量的存储空间大小
cout << sizeof(floatVar) << " " << sizeof(doubleVar);
return 0; // 程序结束
}
代码解析
- 使用
sizeof
运算符来获取floatVar
(float
类型变量)和doubleVar
(double
类型变量)的存储空间大小。 - 使用
cout
输出这两个变量的存储空间大小,单位为字节。 - 程序不需要输入,直接输出
float
和double
类型的存储空间大小。
1018:其他数据类型存储空间大小
题目描述
分别定义bool,char类型的变量各一个,并依次输出它们的存储空间大小(单位:字节)。
解题思路
- 使用
sizeof
运算符来获取bool
和char
类型的变量的存储空间大小。 - 输出这两个数据类型的存储空间大小,单位为字节。
代码实现
#include <iostream>
using namespace std;
int main() {
// 定义bool和char类型的变量
bool boolVar;
char charVar;
// 输出bool和char类型的变量的存储空间大小
cout << sizeof(boolVar) << " " << sizeof(charVar);
return 0; // 程序结束
}
代码解析
- 使用
sizeof
运算符来获取boolVar
(bool
类型变量)和charVar
(char
类型变量)的存储空间大小。 - 使用
cout
输出这两个变量的存储空间大小,单位为字节。 - 程序不需要输入,直接输出
bool
和char
类型的存储空间大小。
1019:浮点数向零舍入
题目描述
输入一个单精度浮点数,将其向零舍入到整数。说明:向零舍入的含义是,正数向下舍入,负数向上舍入。提示:可以使用强制类型转换来实现。
解题思路
- 读取一个单精度浮点数。
- 使用强制类型转换将其向零舍入到整数。
- 输出舍入后的整数。
代码实现
#include <iostream>
using namespace std;
int main() {
float num; // 定义单精度浮点数变量
cin >> num; // 从输入读取浮点数
int roundedNum = static_cast<int>(num); // 将浮点数向零舍入到整数
cout << roundedNum; // 输出舍入后的整数
return 0; // 程序结束
}
代码解析
- 使用
float
类型变量num
来存储输入的单精度浮点数。 - 通过强制类型转换(
static_cast<int>
),将浮点数转换为整数,实现向零舍入。 - 使用
cout
输出向零舍入后的整数。 - 程序使用标准输入输出流
cin
和cout
进行数据的读取和输出。
1020:打印ASCII码
题目描述
输入一个除空格以外的可见字符,输出其ASCII码。
解题思路
- 读取一个字符。
- 输出该字符的ASCII码。
代码实现
#include <iostream>
using namespace std;
int main() {
char ch; // 定义字符变量
cin >> ch; // 从输入读取字符
int asciiCode = static_cast<int>(ch); // 获取字符的ASCII码
cout << asciiCode; // 输出ASCII码
return 0; // 程序结束
}
代码解析
- 使用
char
类型变量ch
来存储输入的字符。 - 通过强制类型转换(
static_cast<int>
),将字符转换为其对应的ASCII码值。 - 使用
cout
输出该字符的ASCII码。 - 程序使用标准输入输出流
cin
和cout
进行数据的读取和输出。
1021:打印字符
题目描述
输入一个整数,即字符的ASCII码,保证存在对应的可见字符。输出相对应的字符。
解题思路
- 读取一个整数,表示ASCII码。
- 将这个整数转换为对应的字符。
- 输出这个字符。
代码实现
#include <iostream>
using namespace std;
int main() {
int asciiCode; // 定义整数变量
cin >> asciiCode; // 从输入读取ASCII码
char ch = static_cast<char>(asciiCode); // 将整数转换为对应的字符
cout << ch; // 输出字符
return 0; // 程序结束
}
代码解析
- 使用
int
类型变量asciiCode
来存储输入的ASCII码。 - 通过强制类型转换(
static_cast<char>
),将整数ASCII码转换为对应的字符。 - 使用
cout
输出转换后的字符。 - 程序使用标准输入输出流
cin
和cout
进行数据的读取和输出。
1022:整型与布尔型的转换
题目描述
将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少?
解题思路
- 读取输入:读取一个整数。
- 进行类型转换:
- 首先将整数赋给布尔型变量。
- 然后将布尔型变量的值赋给一个整型变量。
- 输出结果:输出转换后的整型变量的值。
代码实现
#include <iostream>
using namespace std;
int main() {
int initial; // 定义初始的整型变量
cin >> initial; // 从输入读取整数
bool boolVar = initial; // 将整数赋给布尔型变量
int result = boolVar; // 将布尔型变量的值赋给整型变量
cout << result; // 输出结果
return 0; // 程序结束
}
代码解析
- 使用
int
类型变量initial
来存储输入的整数。 - 将
initial
的值赋给布尔型变量boolVar
。在C++中,任何非0的整数赋值给布尔型后都会转换为true
,而true
赋值回整型变量会转换为1
。 - 输出转换后得到的整型值
result
,这里应该是1
,因为任何非0的整数转换到布尔型都是true
,然后true
转换回整型是1
。 - 程序使用标准输入输出流
cin
和cout
进行数据的读取和输出。
1023:Hello,World!的大小
题目描述
输出“Hello, World!”这个字符串所占用的空间大小。
解题思路
- 使用
sizeof
函数来获取字符串"Hello, World!"
所占用的空间大小。 - 输出该字符串的大小。
代码实现
#include <iostream>
using namespace std;
int main() {
// 使用sizeof获取"Hello, World!"字符串所占用的空间大小
cout << sizeof("Hello, World!");
return 0; // 程序结束
}
代码解析
"Hello, World!"
是一个字符串字面量,包括了所有字符和末尾的空字符\0
。- 使用
sizeof
运算符获取这个字符串的大小,它会计算出字符串中所有字符的大小,包括末尾的空字符。 - 使用
cout
输出字符串的大小。 - 程序不需要输入,直接输出字符串
"Hello, World!"
的空间大小。