关于C语言结构体函数的运用

我先定义了一个学生的结构体,现在想把这个结构体定义为函数,函数里对结构体的各项进行输入,然后把整个结构体的所有内容返回到main函数里面,应该如何实现?想得头都爆炸了,也... 我先定义了一个学生的结构体,现在想把这个结构体定义为函数,函数里对结构体的各项进行输入,然后把整个结构体的所有内容返回到main函数里面,应该如何实现?想得头都爆炸了,也试了好多办法,就是不断的报错,郁闷啊!
结构体如下:
struct student
{
char name[18];
int id;
char sex;
float chinese;
float math;
float english;
}stu[70];
暂时还没有能解决问题的答案!大家请继续帮帮忙啊!
我的代码是这样的:
struct student
{
char name[18];
int id;
char sex;
float chinese;
float math;
float english;
}stu[70];

struct student inputstu_bylist()
{
struct student stuin[70];
for(int i=0;i<70;i++)
{
fflush(stdin);
printf("请输入学生的姓名");
gets(stuin[i].name);
………
………

}
return stuin;

}

应该怎样在main函数里面写一个句子把这个学生的姓名等的数据返回到main里面去呢?
展开
 我来答
吉米有态度
2007-08-01 · TA获得超过119个赞
知道小有建树答主
回答量:256
采纳率:0%
帮助的人:238万
展开全部
定义的函数必须有一个结构体的指针参数,将结构体数组首地址传递进去,返回值也应该是一个指针。你的那个操作结构体的函数应该改写,例如这样:
struct student* inputstu_bylist(struct student* stuin)
{

for(int i=0;i<70;i++)
{
fflush(stdin);
printf("请输入学生的姓名");
gets(stuin[i]->name);
………
………

}
return stuin;

}
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
蛮蛮工作室
2007-07-31 · TA获得超过367个赞
知道小有建树答主
回答量:800
采纳率:0%
帮助的人:440万
展开全部
首先得包含一些头文件,比如#include<stdio.h>
然后用结构体声明一个变量
struct student stu[70];
用循环进行它的变量的输入
for( int i = 0; i < 70; i++)
{
scanf("%s", stu[i].name);
...
}
最后可以用类似于
的形式得到它的变量值。
char str[18] = stu[i].name;
当然,如果要全部取出来也得用循环。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
warmwormn
2007-08-01 · TA获得超过737个赞
知道小有建树答主
回答量:1694
采纳率:0%
帮助的人:1341万
展开全部
struct student inputstu_bylist()
{
struct student stuin[70]; //你在函数体里定义了变量,在函数返回后,该内存就被释放了

for(int i=0;i<70;i++)
{
fflush(stdin);
printf("请输入学生的姓名");
gets(stuin[i].name);
………
………

}
return stuin;

建议改成指针
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5d2d01fa0
2007-07-31 · TA获得超过2158个赞
知道小有建树答主
回答量:943
采纳率:0%
帮助的人:1416万
展开全部
"现在想把这个结构体定义为函数"不能明白这句话的意思,"函数里对结构体的各项进行输入,然后把整个结构体的所有内容返回到main函数里面",这句话也不太理解.
把你想象中的函数形式写一下,或是写段伪码,再或者把你有问题的程序发出来,这样才能明白你到底想要什么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式