Description
某小组5人,每人三项数据:姓名、年龄、分数,键盘输入这些人的数据,求小组的平均分及成绩最高者的数据
说明:年龄和分数都是整数
Input
键盘输入5个人的数据
Output
输出平均分及成绩最高者的数据
注:后台数据可以保证平均分是一个整数,没有小数
Sample Input
Sample Output
#include<stdio.h>
struct grade
{
char a[5];
int age;
int grade;
};
int main()
{
struct grade A[5];
int i;
for(i=0;i<5;i++)
{
scanf("%s",A[i].a);
scanf("%d%d",&A[i].age,&A[i].grade);
}
int sum=0;
for(i=0;i<5;i++)
{
sum+=A[i].grade;
}
sum=sum/5;
int k=0;
for(i=0;i<5;i++)
{
if(A[i].grade>A[k].grade)
{
k=i;
}
}
printf("%d\n",sum);
printf("%s,%d,%d",A[k].a,A[k].age,A[k].grade);
return 0;
}
Description
写两个函数:
1、一个函数中输入10个学生的数据,每个人都包括三项基本资料:学号,生日,分数(整数)。
2、另一个函数可以按照分数由高到低的顺序将每个人的资料排列输出。
主函数已在后台,提交时会自动添加在你的代码之后。
主函数如下:
int main()
{
struct student s[10];
input(s,10);
sort(s,10);
return 0;
}
请编写所需代码。
Input
10个学生的数据,每人一行
Output
输出排序后的数据,每人一行
Sample Input
Sample Output
#include<stdio.h>
struct birthday
{
int year;
int month;
int day;
};
struct student
{
int num;
struct birthday t;
int grade;
};
void input(struct student *p,int n)
{
int i;
for(i=0;i<n;i++)
{
scanf("%d",&p->num);
scanf("%d %d %d",&p->t.year,&p->t.month,&p->t.day);
scanf("%d",&p->grade);
p++;
}
}
void sort(struct student *p,int n)
{
int i;
struct student temp;
int j;
for(i=0;i<n-1;i++)
{
for(j=0;j<n-i-1;j++)
{
if((p+j)->grade<(p+j+1)->grade)
{
temp=*(p+j);
*(p+j)=*(p+j+1);
*(p+j+1)=temp;
}
}
}
for(i=0;i<n;i++)
{
printf("%d,%d/%d/%d,%d\n",p->num,p->t.year,p->t.month,p->t.day,p->grade);
p++;
}
}
int main()
{
struct student s[10];
input(s,10);
sort(s,10);
return 0;
}
Description
主函数如下:
int main()
{
struct time a,b,c;
scanf("%d%d%d",&a.h,&a.m,&a.s);
scanf("%d%d%d",&b.h,&b.m,&b.s);
sub(&a,&b,&c);
printf("%d:%d\'%d\"\n",c.h,c.m,c.s);
return 0;
}
主函数已在后台,您只需提交结构体定义以及sub函数的定义即可,系统会自动将主函数代码追加到您提交(修改)的代码之后。
Input
输入6个整数作为两个时间的小时、分钟、秒
Output
输出两个时间相加之后的总时间
Sample Input
Sample Output
#include<stdio.h>
struct time
{
int h;
int m;
int s;
};
void sub(struct time *a,struct time *b,struct time *c)
{
c->s=a->s+b->s;
c->m=a->m+b->m;
c->h=a->h+b->h;
if(c->s>=60)
{
c->s-=60;
c->m+=1;
}
if(c->m>=60)
{
c->m-=60;
c->h+=1;
}
}
int main()
{
struct time a,b,c;
scanf("%d%d%d",&a.h,&a.m,&a.s);
scanf("%d%d%d",&b.h,&b.m,&b.s);
sub(&a,&b,&c);
printf("%d:%d\'%d\"\n",c.h,c.m,c.s);
return 0;
}
Description
某小组5人,每人三项数据:姓名、年龄、考试分数,键盘输入这些人的数据,输出小组中成绩最高者的数据
说明:年龄和分数都是整数,姓名中没有空格
Input
输入5个人的数据
Output
输出成绩最高者的信息
Sample Input
Sample Output
#include<stdio.h>
struct grade
{
char a[5];
int age;
int grade;
};
int main()
{
struct grade A[5];
int i;
for(i=0;i<5;i++)
{
scanf("%s",A[i].a);
scanf("%d %d",&A[i].age,&A[i].grade);
}
int k=0;
for(i=0;i<5;i++)
{
if(A[i].grade>A[k].grade)
{
k=i;
}
}
printf("%s,%d,%d",A[k].a,A[k].age,A[k].grade);
}