Day08 2023/03/07
题目1
11、成绩转换 输入一个百分制的成绩款M,将其转换对应的等级,具体转换规则如下:
90-100为A
80-89为B
70-79为C
60-69为D
0-59为E
题目2
统计给定的个数中,负数、季和正数的个数。
输入描述:
输入数据有多组,每组占一行,每行的第一个数是整数(n<100),表示需要统计的数值的个数,然后是个实数:如果=0,则表示输入结束,该行不做处理。
输出描述:
对于每组输入数据,输出一行a,b和c,分别表示给定的数据中负数、季和正数的个数。
1、思路
题1思路-c++
if-else if-判断。
题2思路-c++
for循环cin在缓冲区找n个数字,再if-else if判断负数、零、正数的个数。
2、具体实现
题目1
#include <iostream>
using namespace std;
char gradeConversion(int grade)
{
if (grade >= 90 && grade <= 100)
return 'A';
else if (grade >= 80 && grade <= 89)
return 'B';
else if (grade >= 70 && grade <= 79)
return 'C';
else if (grade >= 60 && grade <= 69)
return 'D';
else if (grade >= 0 && grade <= 59)
return 'E';
else
return ' ';
}
结果
题目2
#include <iostream>
using namespace std;
void valueCount(int n)
{
if (n == 0)
cout << "该行不做处理。";
else
{
int num, countA = 0, countB = 0, countC = 0;
for (size_t i = 0; i < n; i++)
{
cin >> num;
if (num < 0)
countA++;
else if (num == 0)
countB++;
else
countC++;
}
cout << "a = " << countA << " "
<< "b = " << countB << " "
<< "c = " << countC << " " << endl;
}
}
结果