第十次作业

1 生日大小
#include<stdio.h>
struct brithday{
int year;
int month;
int day;
};
struct student{
char name[10];
int tel;
struct brithday brith;
};
int main(void)
{
int i,n;

struct student students[10],t;
printf("Input n");
scanf("%d",&n);
for(i=0;i<n;i++){
printf("Input the info of No.%d:\n",i+1);
printf("name:");
scanf("%s:",students[i].name);
printf("tel:");
scanf("%d",&students[i].tel);
printf("brithday:");
scanf("%d%d%d:",&students[i].brith.year,&students[i].brith.month,&students[i].brith.day);}
for(i=0;i<n;i++)
printf("name=%s\ttel=%d\t%d\t%d\t%d\n",students[i].name,students[i].tel,students[i].brith.year,students[i].brith.month,students[i].brith.day);
for(i=0;i<n-1;i++){
if(students[i].brith.year>students[i+1].brith.year){
t=students[i];
students[i]=students[i+1];
students[i+1]=t;
}
if(students[i].brith.year==students[i+1].brith.year){
if(students[i].brith.month>students[i+1].brith.month){
t=students[i];
students[i]=students[i+1];
students[i+1]=t;}
}
if(students[i].brith.month==students[i+1].brith.month){
if(students[i].brith.day>students[i+1].brith.day)
t=students[i];
students[i]=students[i+1];
students[i+1]=t;}
}
for(i=0;i<n;i++)
printf(" name=%s\ttel=%d\t%d\t%d\t%d\n",students[i].name,students[i].tel,students[i].brith.year,students[i].brith.month,students[i].brith.day);

return 0;
}

 

 

2.分数等级

 #include<stdio.h>
struct student{
int num;
char name[10];
char grade;

};
char set_grade(int mark);
int main(void)

int i,n,count=0,mark;
struct student students[10];
printf("Input n:");
scanf("%d",&n);
for(i=0;i<n;i++){
printf("Input the info of No.%d:\n",i+1);
printf("number:");
scanf("%d",&students[i].num);
printf("name:");
scanf("%s",students[i].name);
printf("mark:");
scanf("%d",&mark);
printf("11 num=%d\tname=%s\t",students[i].num,students[i].name);
students[i].grade=set_grade(mark);
printf("22 %c\n",students[i].grade);}
for(i=0;i<n;i++){
if(students[i].grade='D')
count++;
printf("count=%d\n",count);}

return 0;
}
char set_grade (int mark)
{ int A,B,C,D;

if(mark>=85&&mark<=100)
return 'A';
if(mark>=70&&mark<=84)
return 'B';
if(mark>=60&&mark<=69)
return 'C';
if(mark>=0&&mark<=59)
return 'D';

}

 

 
 
 
满满的成就感,刚开始出现错误之后慢慢找出来了,在比较生日大小的时候用到了结构体,用到了冒泡排序,在分数等级划分的时候也用到了结构体,所以要熟练掌握结构体的定义及引用。
 
posted @ 2019-06-25 20:22  ☞miss☜  阅读(162)  评论(0)    收藏  举报