时间在哪里853 2022-11-12 16:59 采纳率: 81.3%
浏览 164
已结题

建立一个通讯录的结构记录,包括姓名、生日、电话号码。 输入n(n<=20)个朋友的信息,再按他们的年龄从大到小的顺序依次输出其信息


#include<stdio.h>
struct friend
{
    char name[10],num[20];
    int birthday;
};
int main()
{
    int i,n,j,t;
    struct friend a[20];
    printf("Input n:");
    scanf("%d",&n);
    for(i=0;i<n;i++)
        printf("Input the name,birthday,number of the %d friend:",i+1);
    scanf("%s%d%s",a[i].name,&a[i].birthday,a[i].num);
    for(i=1;i<n;i++)
    for(j=0;j<n-1;j++)
        if(a[j].birthday<a[j+1].dirthday)
    {
        t=a[j];
        a[j]=a[j+1];
        a[j+1]=t;
    }
    for(i=0;i<n;i++)
    printf("%s%d%s",a[i].name,&a[i].birthday,a[i].num);
    return 0;
}

全是错误,我不知道怎么改了

  • 写回答

1条回答 默认 最新

  • hello_world&& 2022-11-12 20:21
    关注

    friend是c++的关键字,因此将结构体类型命名为friend是不合法的,后面的功能已帮你完善。

    
    #include<stdio.h>
    struct friends
    {
        char name[10];
        char num[20];
        int birthday;
    };
    int main()
    {
        int i,n,j;
        struct friends man[20];
        struct friends temp;
        printf("Input n:\n");
        scanf("%d",&n);
        for(i=0;i<n;i++)
        {
            printf("Input the name,birthday,number of the %d friend:\n",i+1);
            scanf("%s %d %s",man[i].name,&man[i].birthday,man[i].num);
        }
       //冒泡排序 
        for (i = 1; i <= n-1; i++)
        {
            for (j = 0; j <= n - i-1; j++)
            {
                if (man[j].birthday < man[j+1].birthday)
                {
                    temp = man[j];
                    man[j] = man[j + 1];
                    man[j + 1] = temp;
                }
            }
        }
        for(i=0;i<n;i++)
            printf("第%d个:姓名:%s 生日:%d 电话:%s\n",i+1,man[i].name,man[i].birthday,man[i].num);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月21日
  • 已采纳回答 11月13日
  • 创建了问题 11月12日

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能