输入n个学生的成绩
A. 输入n个学生的成绩(n从键盘输入),输出低于60的人数
#include<stdio.h>
intmain(){
printf("请输入一个整数n ");
intn,i,a,sum;
sum=0;
scanf("%d",&n);
printf("请输入%d个成绩 ",n);
for(i=1;i<=n;i++){
scanf("%d",&a);
if(a<60)sum++;
}
printf("低于60分的人数为%d",sum);
}
B. 输入n个学生的成绩,求平均分
用C语言编程 以10人为例
void readdata(float score[10])
{
int i;
printf("enter 10 studer's scores:\n");
for(i=0;i<0;i++);
scanf("%f",&score{i});
return;
}
float aver(float score[10])
{
float sum;
int i;
for(sum=0,i=0;i<10;i++)
sum=sum+score[i];
return;
}
main()
{
void resddata(float score[10]);
float aver(float score[10]);
float ave,score[10];
readdata(score);
ave=aver(score);
printf("average=%6.2f\n",ave)
}
C. 输入一个正整数n,再输入n个学生的成绩,计算平均分,并统计各等级成绩的个数
#include<stdio.h>
main()
{
int n,i;
int A=0,B=0,C=0,D=0,E=0;//用来统计各阶段学生成绩的人数,初始值都为0;
float score;//定义成绩变量;
float ave=0;//定义平均成绩
float num=0;//定义全部成绩总和
scanf("%d",&n);//从键盘输入学生成绩的个数
for(i=1;i<=n;i++)
{
scanf("%f",&score);//输入每个学生的成绩,共有n个学生
num+=score;//计算总成绩
switch(score)//switch 语句来计算各个分数段的成绩个数
{
case score>=90&&score<=100:A++;
case score>=80&&score<=89:B++;
case score>=70&&score<=79:C++;
case score>=60&&score<=69:D++;
case score>=0&&score<=59:E++;
default:break;
}
}
ave=num/n;//计算平均成绩
printf("%f",ave);//输出平均成绩
printf("%d",A);//输出成绩在90-100的个数
printf("%d",B);//输出成绩在80-89的个数
printf("%d",C);//输出成绩在70-79的个数
printf("%d",D);//输出成绩在60-69的个数
printf("%d",E);//输出成绩在0-59的个数
}
(3)输入n个学生的成绩扩展阅读:
正整数,为大于0的整数,也是正数与整数的交集。正整数又可分为质数,1和合数。正整数可带正号(+),也可以不带。如:+1、+6、3、5,这些都是正整数。 0既不是正整数,也不是负整数(0是整数)。
以0为界限,将整数分为三大类:
1、正整数,即大于0的整数,如,1,2,3…
2、0既不是正整数,也不是负整数(0是整数)。
3、负整数,即小于0的整数,如,-1,-2,-3…
D. c语言先输入一个整数n,再输入n个学生成绩,统计及格学生的人数并输出
/*
把这个复制,并编译即可得到你想要的结果,同时你也可以追问。向我索取exe文件。
*/
# include <stdio.h>
# include <malloc.h>
struct Student//创造结构体变量
{
float score;
};
int main (void)
{
int len;
struct Student * pArr;
int i;
int j = 0;
printf("请输入学生的人数:\n");
printf("人数 = ");
scanf("%d",&len);
pArr = (struct Student *)malloc(len * sizeof(struct Student));
for(i=0;i<len;++i)//输入
{
printf("请输入第%d个学生的成绩;\n",i+1);
printf("成绩:");
scanf("%f", &pArr[i].score);
}
for(i=0; i<len;++i)
{
if(pArr[i].score > 60)
j += 1;
}
printf("及格的人数为:%d人。", j);
return 0;
}
E. 输入n个学生的姓名和百分制成绩,分段统计学生的成绩。
数组在定义的时候是要定义大小的。我理解的你的意思是:先输入要统计的学生的数目N,也既是定义一个大小为N的数组,有一个偷懒的方法就是你预先定义一个很大的数组,远超过你能使用的极限,比如你可能统计100人的成绩,你可以预先定义一个大小为1000的数组来存储成绩,这样就可以用for循环了,只是在输入成绩的时候你要有一个判断来告诉程序你的输入结束,比如当你输入的成绩超过100时判定输入结束。但是这样的定义浪费了内存。
更好的方法是动态建立一个数组,我用C++实现,下面是程序,你看看
#include <iostream>
using namespace std;
int main()
{
int i,n,count[6]={0,0,0,0,0,0};
cout<<"输入要统计的学生人数:"<<endl;
cin>>n;
int *score=new int[n];
cout<<"输入"<<n<<"位学生成绩:"<<endl;
for(i=0;i<n;++i)
cin>>score[i];
for(i=0;i<n;++i)
{
if(score[i]<60)
count[0]++;
else if(score[i]<=69&&score[i]>=60)
count[1]++;
else if(score[i]<=79&&score[i]>=70)
count[2]++;
else if(score[i]<=89&&score[i]>=80)
count[3]++;
else if(score[i]<=99&&score[i]>=90)
count[4]++;
else if(score[i]==100)
count[5]++;
}
cout<<"统计结果如下:"<<endl;
for(i=0;i!=6;++i)
cout<<count[i]<<" ";
cout<<endl;
delete [] score;
return 0;
}
F. 输入n个学生成绩,通过函数求平均成绩
float average(float b[], int n)
{
int i;
float sum = b[0];
for (i = 1; i < n; i++);
{
sum += b[i];
}
return(sum / n);
}
void main()
{
float a[80], aver;
int i, n;
printf("请输入学生人数:\r\n");
scanf("%d", &n);
printf("input %d scores:\n",n);
for (i = 0; i < n; i++)
scanf("%f", &a[i]);
aver = average(a, n);
printf("average score is %7.2f", aver);
getchar();
}
G. c语言编程题: 输入n个学生的姓名和百分制成绩,分段统计学生的成绩。
#include<stdio.h>
#define MAXN 100
struct student
{
char name[20];
int score;
};
void cnt_score( struct student *p, int n );
int main()
{
int i, n;
struct student stu[MAXN];
scanf("%d", &n);
for(i = 0; i < n; i++)
{
scanf("%s %d", stu[i].name, &stu[i].score);
}
cnt_score(stu, n);
return 0;
}
void cnt_score(struct student *p, int n)
{
int cnt_a = 0, cnt_p = 0, cnt_f = 0;
struct student *q=p+n-1;
while ( p <= q )
{
if ((*p).score>=80&&(*p).score<=100) cnt_a++;
else if ((*p).score>=60&&(*p).score<=79) cnt_p++;
else cnt_f++;
p++;
}
printf("%d %d %d\n", cnt_a, cnt_p, cnt_f);
}
H. C语言 输入N个学生成绩,求他们的名次
运行结果如图专:属
#include<stdio.h>
intmain()
{intn,i,j,a[100][2];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i][0]);
for(i=0;i<n;i++)
{a[i][1]=1;
for(j=0;j<n;j++)
a[i][1]+=a[j][0]>a[i][0];
}
for(i=0;i<n;i++)
printf("%d%d
",a[i][0],a[i][1]);
return0;
}
I. c++编程,输入,n,再输入n个学生的成绩,用数组,再输出平均分。
#include<iostream>
using namespace std;
int main()
{
int a[100],s=0,n,i;
cin >> n;
for(i=0;i<n;i++)
{
cin >> a[i];
s+=a[i];
}
cout<<"平均内分容="<<(float)s/n<<endl;
system("pause");;
}
J. 入一个正整数n,再输入n个学生的成绩,统计各等级成绩的个数。
#include
main()
{
int n,i;
int A=0,B=0,C=0,D=0,E=0;//用来统计各阶段学生成绩的人数,初始值都为0;
float score;//定义成绩变量;
float ave=0;//定义平均成绩
float num=0;//定义全部成绩总和
scanf("%d",&n);//从键盘输入学生成绩的个数
for(i=1;i<=n;i++)
{
scanf("%f",&score);//输入每个学生的成绩,共有n个学生
num+=score;//计算总成绩
switch(score)//switch 语句来计算各个分数段的成绩个数
{
case score>=90&&score<=100:A++;
case score>=80&&score<=89:B++;
case score>=70&&score<=79:C++;
case score>=60&&score<=69:D++;
case score>=0&&score<=59:E++;
default:break;
}
}
ave=num/n;//计算平均成绩
printf("%f",ave);//输出平均成绩
printf("%d",A);//输出成绩在90-100的个数
printf("%d",B);//输出成绩在80-89的个数
printf("%d",C);//输出成绩在70-79的个数
printf("%d",D);//输出成绩在60-69的个数
printf("%d",E);//输出成绩在0-59的个数
}