#include

struct student

{

    char xuehao[20];

    char name[20];

    int cj[3];

     

};

 void input(struct student *a)/*这里需要用结构体指针做函数形参,传递结构体指针可以方便地修改结构体的内容。如果传递结构体本身,那么如果函数(方法)需要修改结构体中的某个字段,则需要将整个结构体都复制一遍,修改之后再返回,这样效率低下并且容易出错。而如果传递结构体指针,则可以直接在指针指向的结构体中进行修改,效率更高并且更容易。

 {

     scanf("%19s %19s",a->xuehao,a->name);//a->xuehao等价于(*a).xuehao

     int i;

     for(i=0;i<3;i++){

        scanf("%d",&a->cj[i]);

     }

 }

 void print(struct student a)

 {

     printf("%s,%s,%d,%d,%d\n",a.xuehao,a.name,a.cj[0],a.cj[1],a.cj[2]);

 }

int main()

{

    int N;

    scanf("%d",&N);

    int i=0;

    while(i<N){

        struct student a;

        input(&a);

        print(a);

        i++;

    }

    return 0;

}

欢迎提意见!!!


点赞(0)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论