成绩转换
输入一个百分制的成绩M,将其转换成对应的等级,具体转换规则如下:
-
90-100 为 A;
-
80-89 为 B;
-
70-79 为 C;
-
60-69 为 D;
-
0-59 为 E;
思路
用if-else if-else条件判断即可,对应的判断条件输出相对应的结果。
具体实现
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
if(n>=90 && n<=100)
cout<<"A";
else if(n>=80 && n<=89)
cout<<"B";
else if(n>=70 && n<=79)
cout<<"C";
else if(n>=60 && n<=69)
cout<<"D";
else
cout<<"E";
return 0;
}
数值统计
统计给定的n个数中,负数、零和正数的个数。
输入描述
输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数值的个 数,然后是n个实数;如果n=0,则表示输入结束,该行不做处理。
输出描述
对于每组输入数据,输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。
示例
输入:3 0 9 -1
输出:111
输入:2 -10 8
输出:101
思路
输入个数n,然后for循环输入n次,每次输入都对其进行判断是否>0、<0、=0,然后相应的计数器加1。最后输出计数器的值。
具体实现
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
int x;
while(cin>>n){ //输入多组数据
if(n>0){
int a=0,b=0,c=0; //a:负数个数,b:0的个数,c:正数个数
for(int i=0; i<n; i++){
cin>>x;
if(x>0) c++;
else if(x<0) a++;
else b++;
}
cout<<a<<b<<c;
cout<<endl;
}
else return 0; //若=0或<0,直接结束程序
}
return 0;
}
小结
-
两道题都不是很难,都应用if-else if-else进行条件判断,然后输出结果即可。但是写的时候还是会出错,检查之后发现是一些很小的语法格式出了问题。比如条件判断时双等号写成了单等号、定义变量时赋值为0的书写等等。格式要牢记,下次避免出错!
-
一个等号表示赋值,双等号表示判断前后条件是否相等!