原题链接:[编程入门]结构体之成绩记录
解题思路:1.定义结构体变量,并以此变量定义一个二维数组。
2.先定义并输入二维数组的行数,之后再用正常的input和output输入输出即可。
3.输入输出的形参为指针类型(也可以认为是输入自己所定义的结构体变量的数组的首位)
4.每行是每个变量的内容是for循环一次的操作内容,而for要循环几次取决于列数
参考代码:
#include <stdio.h>
struct stu
{
char num[100];
char name[100];
int score[3];
};
void input(struct stu* a,int n);
void output(struct stu* a,int n);
int main(void)
{
int n;
scanf("%d",&n);
struct stu a[n];
input(a,n);
output(a,n);
return 0;
}
void input(struct stu * a,int n)
{
int i;
for(i=0;i<n;i++)
{
scanf("%s%s%d%d%d",&(a[i].num),&(a[i].name),&(a[i].score[0]),&(a[i].score[1]),&(a[i].score[2]));
}
}
void output(struct stu* a,int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%s,%s,%d,%d,%d\n",a[i].num,a[i].name,a[i].score[0],a[i].score[1],a[i].score[2]);
}
}0.0分
41 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复