编写一个程序,输入学生姓名和分数。输出以下部分数据

1.班级平均分
2.考试分数低于班级平均分的学生的姓名。
3.最高分以及最高分学生的姓名。
(假定每个班级最多30个学生)

我觉得分数可以用一个数组表示,那如何与学生姓名联系起来呢?
不好意思,是用C++语言。不是C语言

第1个回答  2010-02-25
可以将学生姓名和成绩的下标联系在一起,下标一样的姓名和数据表示的就是一个人。
程序代码如下:
#include<iostream.h>
#include<string.h>
#include<stdio.h>
void main()
{
char name[30][10];
float score[30];
float ave;
int n;
int i, j;

cout<<"请输入学生的人数:";
cin>>n;
ave = 0;
cout<<"请输入学生的姓名和成绩"<<endl;
for(i = 0; i < n; i++)
{
cin>>name[i]>>score[i];
ave = ave + score[i];
}
ave = ave / n;
cout<<"本班级平均分是:"<<ave<<endl;
cout<<"考试成绩低于班级平均分的学生姓名如下:"<<endl;
for(i = 0; i < n; i++)
if(score[i] < ave)
cout<<name[i]<<endl;
cout<<"最高分以及最高分学生的姓名:"<<endl;
j = 0;
for(i = 1; i < n; i++)
if(score[i] > score[j])
j = i;
cout<<score[j]<<endl;
for(i = 0; i < n; i++)
if(score[i] == score[j])
cout<<name[i]<<endl;
}

编写一个程序,输入学生姓名和分数。输出以下部分数据
cout<<"本班级平均分是:"<<ave<<endl;cout<<"考试成绩低于班级平均分的学生姓名如下:"<<endl;for(i = 0; i < n; i++)if(score[i] < ave)cout<<name[i]<<endl;cout<<"最高分以及最高分学生的姓名:"<<endl;j = 0;for(i = 1; i < n; i++)if(score[i] > score[j]...

Python 输入全班30名学生的姓名和成绩,输出其中的最高分和最低分,并...
然后,通过一个循环结构,输入30名学生的姓名和成绩。例如:python for i in range(1, 31):name = input(f"请输入第{i}名学生的姓名:")score = float(input(f"请输入第{i}名学生的成绩:"))student_data[name] = score 在输入过程中,确保正确存储每个学生的姓名和对应的分数。为了找出最...

编写一个程序,提示用户输入学生个数,学生姓名和他们的成绩,然后按照学 ...
System.out.println("请输入第"+(i+1)+"个学生的姓名");sNames[i] = reader.nextLine();System.out.println("请输入"+sNames[i]+"的分数");sScore[i] = Integer.parseInt(reader.nextLine());} int tempScore;String tempName;for (int i = stuNum - 1; i > 0; --i) { boolea...

编写一个程序,提示用户输入学生个数,学生姓名和他们的成绩,然后按照学 ...
System.out.println("请输入第"+(i+1)+"个学生的姓名");sNames[i] = reader.nextLine();System.out.println("请输入"+sNames[i]+"的分数");sScore[i] = Integer.parseInt(reader.nextLine());} int tempScore;String tempName;for (int i = stuNum - 1; i > 0; --i) { boolea...

...的名字及其分数,按从高到低的顺序数输出分数及与其对应同学的名字...
include "stdio.h"struct student{char name[20];float cj;int rank;};int main(){struct student std[6];int n;int i,j,k;printf("输入5个人的姓名和成绩:\\n");for(i=0;i<5;i++){scanf("%s %f",std[i].name,&std[i].cj);}for(j=0;j<5;j++){n=j;for(k=j+1;k<5...

...姓名,成绩,然后构造方法,初始化,输出学生的基本信息
}public String getNumber() {return number;}public void setNumber(String number) {this.number = number;}public int getScore() {return score;}public void setScore(int score) {this.score = score;}public String toString() {return "Name: " + name+ ",Number: " + number+ ",...

编程实现一个班级二十个学生姓名及成绩的输入和输出,计算班级平均成绩...
cout<<"请输入学生1的姓名:";cin>>a[0].name;cout<<"请输入学生1的成绩:";cin>>a[0].score;double sum=a[0].score,max=a[0].score,min=a[0].score;for(i=1;i<N;i++){ cout<<"请输入学生"<<i+1<<"的姓名:";cin>>a[i].name;cout<<"请输入学生"<<i+1<<"的成绩...

...用类编一个程序实现输入姓名、学号、四科分数,输出姓名、学号、平...
);void average_y();};void stu::init(){cin.get(name, 20, ',');cin >> k >> age >> k;cin.get(num, 20, ',');cin >> k >> y1 >> k >> y2 >> k >> y3 >> k >> y4;}void stu::print(){cout << name << "," << age << "," << num << ","...

c++编写程序,实现从终端输入学生信息,根据学号查询并输出相应学生的信息...
struct Student *stu = NULL; stu = (struct Student*)malloc(sizeof(struct Student)*M); \/\/创建一个结构体含有N个数据 for(i = 0; i < M; i++) { printf("Please input the No%d student's number:",i+1); scanf("%d",&stu[i].num); printf("Please input...

编写程序,提示用户输入学生的个数,每个学生的名字及其分数,最后显示...
public static void main(String[] args) throws Exception { Scanner in=new Scanner(System.in); System.out.println("请输入学生的个数:"); int num=in.nextInt(); String names[]=new String [num];\/\/学生姓名数组 double scores[]=new double [num];\/\/学生分数数组 ...

相似回答