#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分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复