1481 - 《C语言程序设计》江宝钏主编-习题7-2-5科总分
时间限制 : 1 秒
内存限制 : 128 MB
输入10个学生的学号和5门课程的成绩,统计输出5门课总分最高和最低的学生的学号和他们的总分。
题目输入
每行6个整数,共10行。
其中,每行第一个整数表示学生的学号,剩下的5个数表示他5门课程的成绩。
题目输出
两行,每行两个整数。
其中第一行为总分最高的学生的学号,和他的总分,用空格隔开。
第二行为总分最低的学生的学号,和他的总分,用空格隔开。
输入/输出样例
输入格式
99211201 1 2 3 4 5 99211207 2 2 3 4 5 99211217 3 2 3 4 5 99211227 4 2 3 4 5 99211231 5 2 3 4 5 99211232 6 2 3 4 5 99211233 7 2 3 4 5 99211235 8 2 3 4 5 99211236 9 2 3 4 5 99211237 10 2 3 4 5
输出格式
99211237 24 99211201 15
C语言解答
#include <stdio.h> int main(void) { int a[10][6],i,j,min[2],max[2],sum; for (i=0;i<10;i++) { for (j=0;j<6;j++) { scanf("%d",&a[i][j]); } } for (i=0;i<10;i++) { sum=0; for (j=1;j<6;j++) { sum+=a[i][j]; } if (sum>max[1]) { max[0]=a[i][0]; max[1]=sum; } if (sum<min[1]) { min[0]=a[i][0]; min[1]=sum; } } printf("%d %d\n%d %d",max[0],max[1],min[0],min[1]); return 0; }
C++解答
#include<iostream> using namespace std; int main() { int a[11][7]={0}; for (int i=1; i<=10; i++) { cin>>a[i][1]; for (int j=2; j<=6; j++) { cin>>a[i][j]; a[i][0]+=a[i][j]; } } int max=a[1][7],pmax=1,min=a[1][7],pmin=1; for (int i=2; i<=10; i++) if (max<a[i][0]) { max=a[i][0]; pmax=i; } else if (min>a[i][0]) { min=a[i][0]; pmin=i; } cout<<a[pmax][1]<<" "<<a[pmax][0]<<endl; cout<<a[pmin][1]<<" "<<a[pmin][0]<<endl; return 0; }