c语言中如何用子函数调用结构体中的变量实现数据的输入与输出。 5

比如定义了学生这个结构体,要在主函数中调用date_in和date_pout子函数来实现一个学生的姓名,年龄,性别的输入与输出。... 比如定义了学生这个结构体,要在主函数中调用date_in和date_pout子函数来实现一个学生的姓名,年龄,性别的输入与输出。 展开
 我来答
娃娃教育小能手
高粉答主

2019-12-05 · 我擅长答教育标签,希望回答可以帮助到您。
娃娃教育小能手
采纳数:2194 获赞数:73159

向TA提问 私信TA
展开全部
用子函数实现结构体数据的输入与输出:对于多数子函数的输入与输出,有一定规律性可言。
方法1:void型不传值传址调用与声明。main中声明void date_in(),void date_pout()。函数定义前一定在main()前先定义结构体变量(全局变量),然后定义输入或输出程序段。此时再main()调用即可。
如下:
struct student
{
char name[20];
int old;
char sex;
}stu;
void date_in();
void main()
{ date_in();
}
void date_in()
{ scanf("%s%d/c,"stu.name,stu.old,stu.sex);
}时间问题程序有点简洁,有问题请追问,很乐意与你分享。
ldyhrln
推荐于2018-03-13 · TA获得超过211个赞
知道小有建树答主
回答量:142
采纳率:100%
帮助的人:109万
展开全部
用子函数实现结构体数据的输入与输出:对于多数子函数的输入与输出,有一定规律性可言。
方法1:void型不传值传址调用与声明。main中声明void date_in(),void date_pout()。函数定义前一定在main()前先定义结构体变量(全局变量),然后定义输入或输出程序段。此时再main()调用即可。
如下:
struct student
{
char name[20];
int old;
char sex;
}stu;
void date_in();
void main()
{ date_in();
}
void date_in()
{ scanf("%s%d/c,"stu.name,stu.old,stu.sex);
}时间问题程序有点简洁,有问题请追问,很乐意与你分享。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dtimes6
2011-12-28 · TA获得超过691个赞
知道小有建树答主
回答量:347
采纳率:0%
帮助的人:121万
展开全部
#include <stdio.h>
#include <string>

enum Gender { M = 0, F };
typedef struct struct_student {
char name[30];
unsigned age;
unsigned gender;
} student;

student data_in() {
student st;
printf("please enter your name: ");
scanf("%s", st.name);
printf("please enter your age:");
scanf("%d",st.age);
int set = 0;
char s [1000];
while(!set) {
printf("please enter your gender: (F/M)");
scanf("%s", s);
if(!strcmp(s,"F")) { set = 1; st.gender = F; }
if(!strcmp(s,"M")) { set = 1; st.gender = M; }
}
return st;
}

void data_pout( student st) {
printf("name:%s/tage %d gender %s", st.name, st.age, st.gender ? "F" : "M");
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式