循环语句
统计学生成绩 本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则: ● 大于等于90分为A; ● 小于90且大于等于80为B; ● 小于80且大于等于70为C; ● 小于70且大于等于60为D; ● 小于60为E。 输入格式: 输入在第一行中给出一个正整数N(≤1000),即学生人数;第二行中给出N个学生的百分制成绩,其间以空格分隔。 输出格式: 在一行中输出A、B、C、D、E对应的五分制成绩的人数分布,数字间以空格分隔,行末不得有多余空格 while循环 #include<iostream> using namespace std; int main() { int a=0,b=0,c=0,d=0,e=0,n,x; cin>>n; while (n--)//这道题很好的一个思路就是利用while循环,当表达式结果为0时,跳出循环,那么要如何达到呢?让n--即可 { cin>>x; if(x>=90) a++; else if (x>=80) b++; else if (x>=70) c++; else if (x>=60) d++; else e++ ; } cout<<a<<'\t'<<b<<'\t'<<c<<'\t'<<d<<'\t'<<e; return 0; } //whlie循环,for循环,do while循环还有,switch(default)语句当表达式是多语句时,要记得加花括号
数组
#include<iostream>
using namespace std;
int main(){
int a=0,b=0,c=0,d=0,e=0,n,x;
int grade[9999];//当数组元素不知道为几个时,可以把它的元素设置得很大
cin>>n;
for(x=0;x<n;x++)
cin>>grade[x];//这一步是保证数组的输入满足要求
for(x=0;x<n;x++)//这里是保证数组中的每一个元素可以进行比较
{ //for语句要记得加小括号。花括号
if (grade[x]>=90) a++;//if语句要记得加小括号,对于判断表达式
if (grade[x]>=80&&grade[x]<90) b++;
if (grade[x]>=70&&grade[x]<80) c++;
if (grade[x]>=60&&grade[x]<70) d++;
if (grade[x]<60) e++; }
cout<<a<<'\t'<<b<<'\t'<<c<<'\t'<<d<<'\t'<<e;
return 0;
}
do while语句——-有点点难
#include <iostream>
using namespace std;
int main()
{
int n,m,level,a=0,b=0,c=0,d=0,e=0,i=0;
cin>>n;
if(n<=1000)
do{
cin>>m;
i++;/*do while 语句要设置一直一个
循环跳出语句,
否则就会一直执行下去 */
level=m/10;
switch(level)
{
case 10:
case 9:a++;break;
case 8:b++;break;
case 7:c++;break;
case 6:d++;break;
default:e++;
}
}while(i<n);
cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e;
return 0;
}