c语言中如何用子函数调用结构体中的变量实现数据的输入与输出。 5
比如定义了学生这个结构体,要在主函数中调用date_in和date_pout子函数来实现一个学生的姓名,年龄,性别的输入与输出。...
比如定义了学生这个结构体,要在主函数中调用date_in和date_pout子函数来实现一个学生的姓名,年龄,性别的输入与输出。
展开
展开全部
用子函数实现结构体数据的输入与输出:对于多数子函数的输入与输出,有一定规律性可言。
方法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);
}时间问题程序有点简洁,有问题请追问,很乐意与你分享。
方法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);
}时间问题程序有点简洁,有问题请追问,很乐意与你分享。
展开全部
用子函数实现结构体数据的输入与输出:对于多数子函数的输入与输出,有一定规律性可言。
方法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);
}时间问题程序有点简洁,有问题请追问,很乐意与你分享。
方法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);
}时间问题程序有点简洁,有问题请追问,很乐意与你分享。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#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");
}
#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");
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询