计算一个班学生某门功课的总评成绩
『壹』 编写程序,输入一个班40个学生某门课程的成绩,求所有成绩的平均分数,并输出到显示器。
#include<stdio.h>
void main(){
float a[10],b[10],sum=0;
int i,j,count=0;
for(i=0;i<10;i++){
scanf("%f",&a[i]);
sum=sum+a[i];
if(a[i]<60)
count++;
}
printf("不及格抄人数袭为:%d\n平均成绩为:%f\n",count,sum/10);
}
『贰』 编写一个程序,计算若干学生的某门功课的平均成绩,找出最高分和最低分(c语言作业,不太会,拜托了)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define N 5
void main()
{
float a[N],aver,stdev,max,min;
int i;
for(i=0;i<N;i++)
scanf("%f",&a[i]);
aver=0;max=min=a[i]=0;
for(i=0;i<N;i++)
{aver=aver+a[i];
if(max<a[i]) max=a[i];
if(min>a[i]) min=a[i];}
aver=aver/N;
stdev=0;
for(i=0;i<N;i++)
stdev=stdev+(a[i]-aver)*(a[i]-aver);
stdev=sqrt(stdev/N);
for(i=0;i<N;i++)
printf("%f,%f,%f,%f,%f",aver,stdev,max,min);
}
『叁』 如何用结构体和链表实现输入一个班学生的所有成绩求每门课的总成绩
#include<stdio.h>
#include<stdlib.h>
#define N 5
float score[N]={0};
float sum[N]={0};
struct student
{
int iNum;
float fScore[N];
struct student *pStrNext;
};
/*创建链表*/
struct student * create()
{ struct student *pStrStuHead=0,*pStrStuTemp,*pStrStuTail=0;
int iNumTemp,i,j;
float fScoreTemp[N];
printf("input num (>=0, <0 end):\n");
scanf("%d",&iNumTemp);
printf("input score\n");
for(i=0;i<N;i++){scanf("%f",&fScoreTemp[i]);}
/* 添加结点,当输入成绩值为负数时结束 */
while(fScoreTemp[1]>0)
{ /*申请结点并填入数据,结点的指针域为0,因为新结点将作为最后一个结点*/
pStrStuTemp=(struct student*)malloc(sizeof(struct student));
pStrStuTemp->iNum=iNumTemp;
for(j=0;j<N;j++)pStrStuTemp->fScore[j]=fScoreTemp[j];
pStrStuTemp->pStrNext=0;
/*接入链表*/
if(!pStrStuHead)
/*接入第一个结点,头指针、尾指针均指向该结点*/
pStrStuHead=pStrStuTail=pStrStuTemp;
else {
/*接入非第一个结点*/
pStrStuTail->pStrNext=pStrStuTemp;/*接在尾指针所指结点之后*/
pStrStuTail=pStrStuTemp;/*尾指针指向新加入结点*/ }
printf("input num (>=0, <0 end):\n");
scanf("%d",&iNumTemp);
printf("input score\n");
for(i=0;i<N;i++){scanf("%f",&fScoreTemp[i]);} }
return pStrStuHead; }
/*输出链表*/
void average(struct student *pStrStuHead)
{
int i=0;
int j;
int number=0;
while(pStrStuHead)
{for(j=0;j<N;j++)
{sum[i]+=pStrStuHead->fScore[j];}/*输出*/
pStrStuHead=pStrStuHead->pStrNext;/*移动到下一个结点*/
number++;
}
for(i=0;i<N;i++)
{ score[i]=sum[i]/number;
printf("第%d门平均分:%f",i,score[i]);
}
}
int main()
{
struct student *pStrStuHead;
/*创建链表*/
pStrStuHead=create();
/*输出链表所有平均分*/
average(pStrStuHead);
return 0;
}
『肆』 c#编写一个学生成绩计算程序,统计出一个班学生的某门课程各分数段的人数(分数段:90分以上,80-90,70-80,
int[] score = new int[10]; string[] m = { };
int i, a, b, c, d, e;
a = b = c = d = e = 0;
double t = 0, max, min, r;
Console.WriteLine("请输入名学生的成绩 以回车符区分");
for (i = 0; i < 10; i++)
{
int inputScore = 0;
if (!int.TryParse(Console.ReadLine(), out inputScore))
{
Console.WriteLine("请输入数字类型成绩");
i--;
}
score[i] = inputScore;
}
for (i = 0; i < 10; i++)
{
switch (score[i] / 10)
{
case 10:
case 9: a++; break;
case 8: b++; break;
case 7: c++; break;
case 6: d++; break;
default: e++;
break;
}
}
max = score[0];
min = score[0];
for (i = 0; i < 10; i++)
{
t += score[i];
if (score[i] > max) max = score[i];
if (score[i] < min) min = score[i];
}
r = t / 10;
Console.WriteLine("平均分为:{0}", r);
Console.WriteLine("最高分为:{0}", max);
Console.WriteLine("最低分为:{0}", min);
Console.WriteLine("得优人数 :{0}", a);
Console.WriteLine("得良人数 : {0}", b);
Console.WriteLine("得好人数 :{0}", c);
Console.WriteLine("及格人数 :{0}", d);
Console.WriteLine("不及格人数 :{0}", e);
Console.ReadLine();
『伍』 编写一个程序实现一个班级学生某门课程的成绩管理,学生(姓名,学号,出生日期(日期类),成绩)。
using System; using System.Collections.Generic; using System.Text; namespace stuConsole { //定义学生类 class student { //字段定义 private string name; //姓名 private string no; //学号 private double engScore; //英语成绩 private double cScore; //C++成绩 private double mathScore; //数学成绩 //定义属性,通过属性访问、修改相应字段 public string Name { set{name = value;} get{return name;} } public string No { set{no = value;} get{return no;} } public double EngScore { set{engScore = value;} get{return engScore;} } public double CScore { set{cScore = value;} get{return cScore;} } public double MathScore { set { mathScore = value; } get { return mathScore; } } //输入相应的数据 public void inputText() { Console.WriteLine("请输入姓名:"); Name = Console.ReadLine(); Console.WriteLine("请输入学号:"); No = Console.ReadLine(); Console.WriteLine("请输入英语成绩:"); EngScore = double.Parse(Console.ReadLine()); Console.WriteLine("请输入C++成绩:"); CScore = double.Parse(Console.ReadLine()); Console.WriteLine("请输入数学成绩:");
『陆』 找错!c++设计一个学生类,求N名学生某门功课的总成绩和平均分 ;链栈
错误有点多, 下面改了几个。
#include<iostream.h>
#include"malloc.h"
struct student
{char name[20];
int score;
}stu[5];
class informatoin
{
public:
informatoin(int a,int b,int c,int d,int e,int f);
void GetName();
void GetScore();
int GetSum();
float GetAverage();
private :
char name[20];
float score;
static int Sum;
static float Average;
};
/*int informatoin::Sum(0); 你这里是想初始化吧,私有成员不能在类外直接使用
float informatoin::Average(0);*/
informatoin:: informatoin(int a,int b,int c,int d,int e,int f)
{
int i;
stu[0].score=a;stu[1].score=b;stu[2].score=c;stu[3].score=d;stu[4].score=e;
for(i=0;i<5;i++)
{
Sum+=stu[i].score;
}
Average=float (Sum/5);
}
void informatoin::GetScore()
{
int i=0;
for(i=0;i<5;i++)
cout<<stu[i].score<<endl;
}
int informatoin::GetSum()
{return informatoin::Sum;}
float informatoin::GetAverage()
//float informatoin::GetAverage();
{return informatoin::Average;}
void main()
{
int i;
student stu[5];
informatoin ss();
//information ss(); //你的类名是informatoin不是information
cout<<"input the name and the score:"<<endl;
for(i=0;i<5;i++)
{
cin>>stu[i].name>>stu[i].score;
}
cout<<"sum score is:"<<ss.GetSum()<<endl;
cout<<"average score is:"<<ss.GetAverage()<<endl;
}
//#include "malloc.h" 最好放在程序的开头处(和#include<iostream.h>在一起)
struct list
{
int data;
list *next;
};
class stack
{
list *ptr;
public:
stack(){ptr=NULL;}
void push(int i);
int pop();
int getTop();
bool IsEmpty();};
bool stack::IsEmpty()
{if ( ptr ==NULL )
{return true;
cout<<"this stack is empty"<<endl;}
else
return false;
}
void stack::push(int x)
{
list *newnode=new list;
int i;
for(i=0;i<malloc(sizeof(list));i++) cin>>x;
newnode->data=x;
newnode->next=ptr;
ptr=newnode;
}
int stack::pop()
{list *top;
int value;
while(!IsEmpty())
{
value=ptr->data;
top=ptr;
ptr=ptr->next;
delete top;
return value;
}
}
int stack:: getTop()
{int value;
while(!IsEmpty())
{value=ptr->data;
return value;}
}
//#include <iostream.h>
//#include"stack.h"
/*void main()
{int i; int x;
stack st;
cout<<"input a stack :"<<endl;
st.push(x);
cout<<"the stack is:"<<endl;
st.pop();
st.IsEmpty();
{if(true)
cout<<"stack is empty"<<endl;
else if(false)
cout<<"stack is not empty"<<endl;}
}*/
『柒』 c语言。编写一个程序,输入全班同学某门课考试成绩,计算平均成绩并统计大于等于平均成绩的人数。
#include<stdio.h>
main()
{
doublegrade[200];
doublesum,avg,temp;
intcount,i,n;
i=0;
count=0;
sum=0;
printf("请依次输入每个同学的成绩,输入-1结束 ");
scanf("%lf",&temp);
while(temp!=-1)
{
grade[i++]=temp;
count++;
sum=sum+temp;
scanf("%lf",&temp);
}
avg=sum/count;
n=0;
for(i=0;i<count;i++)
{
if(grade[i]>=avg)
n++;
}
printf("全班平均分%.2lf,成绩大于等于平版均分的人有权%d人 ",avg,n);
}
『捌』 已知某班有n个学生一门课的成绩,计算平均成绩,最高成绩和最低成绩
平均成绩=(总成绩÷班里学生n)
最高成绩和最低成绩可以通过
Excel表格
升序或者降序排列看出
『玖』 下列程序要求: 输入学生某门功课的成绩,计算各成绩等级的人数
#include <stdio.h>
int main(int argc, constchar * argv[])
{
int score[100]={0};
int a=0,b=0,c=0;
printf("请输入学生的成绩,总人数为14\n");
for (int i=0; i<14; i++) {
scanf("%d",&score[i]);
}
for (int i=0; i<14; i++) {
if (score[i]>=80) {
a++;
}
elseif (score[i]>=60&&score[i]<=79){
b++;
}
elseif (score[i]<60){
c++;
}
}
printf("a等级的人数为:内容%d,b等级的人数为:%d,c等级的人数为:%d",a,b,c);
return0;
}