12.26学习笔记

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef enum gender{
    MALE,
    FEMALE,
}Gender;
typedef struct score{
    int c_score;//4
    int java_score;//4
    int python_score;
}Score;
typedef struct musician{
    char*name;//8type
    Gender gender;//1
    char* album;//8
    Score score;
}Musician;
void PrintMusician(Musician *m){
    printf("%s \n%c \n%s \n%d \n%d \n%d\n",m->name,m->gender,m->album,m->score.c_score,m->score.java_score,m->score.python_score);
};
int Cmp(const void *p1,const void*p2){//这一函数用于按照名字拼音顺序比较结构体数组。
    const Musician*left_musician=p1;/*
 * 由于本题比较的char*name在第一项,所以类似二维数组,可以先解一次引用得到指向字符串的指针。
 *也即:const char* const *left=p1;
 * strcmp(*left,*right);
 */
    const Musician*right_musician=p2;
    return strcmp(left_musician->name,right_musician->name);
}
int main(){
    Musician Luo={
        .name="Luo Dayou",
        .gender='M',
        .album="Zhihuzheye",
        .score={
            .c_score=10,
            .java_score=100,
            .python_score=80
        }
    };
    Musician Zhang={
            .name="Zhangchu",
            .gender='M',
            .album="hahaha",
            .score={
                    .c_score=30,
                    .java_score=50,
                    .python_score=90
            }
    };
    Zhang=Luo;
    PrintMusician(&Zhang);
    PrintMusician(&Luo);
return 0;
}
  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值