C语言第四次作业

手写笔记:

 

 

 

 

 

 

 pta问题:编程题

输入n个朋友的信息,包括姓名、生日、电话号码,本题要求编写程序,按照年龄从大到小的顺序依次输出通讯录。题目保证所有人的生日均不相同。

解决办法:百度查询

 

#include<stdio.h>
struct era{
    char name[30];
    int date;
    char num[30];
};
int main(){
    int n,i,j;
    scanf("%d",&n);
    struct era s1[n],max[n];
    for( i=0;i<n;i++){

        scanf("%s %d %s",s1[i].name,&s1[i].date,s1[i].num);
    }

    for(i=0;i<n-1;i++){
        for( j=1+i;j<n;++j){
            if(s1[i].date>s1[j].date){
                max[i]=s1[i];
                s1[i]=s1[j];
                s1[j]=max[i];
            }
        }
    }
    for(i=0;i<n;i++){
        printf("%s %d %s\n",s1[i].name,s1[i].date,s1[i].num);
    }
    
}
学习中的问题:
结构与数组的区
1、定义不同
数组是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,
也称为数组的元素,有时也称为下标变量;结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,叫做结构。
2、数据类型不同
数组是相同类型元素(元素可以是原子类型的整型、浮点型、字符型或者结构体、数组等)的集合;
结构体是不同类型元素(元素可以是原子类型的整型、浮点型、字符型或者结构体、数组等)的集合。
3、调用方式不同
数组可以直接利用下标访问;
而结构体必须使用结构中成员的变量名。

 

 

 

 

 

 

 

 

 

 

 

 


 

 

posted @ 2020-03-29 20:30  过er  阅读(383)  评论(0编辑  收藏  举报