结构体函数c语言录入数据 c语言结构体函数

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

用子函数实现结构体数据的输入与输出:对于多数子函数的输入与输出,有一定规律性可言。

创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、网站设计、庄浪网络推广、小程序开发、庄浪网络营销、庄浪企业策划、庄浪品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供庄浪建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

方法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);

}时间问题程序有点简洁,有问题请追问,很乐意与你分享。

C语言怎样将.txt文件中的数据写入到结构体中去

txt文件中的数据写入到结构体中去的源代码如下:

#includestdio.h

#include string.h

//可以退出的头文件

#include stdlib.h

//结构体的长度

#define DATALEN 15

//函数声明

//定义结构数组

struct wordUnit{

int id; //id

char word[10]; //词语

char depId[10]; //依存词语的id

char pos[10]; //词性

char depRel[10]; //依存目标的关系

};

int main(){

FILE *data;//要读取的文件指针

int i=0;//结构题数组移动

struct wordUnit words[DATALEN];

if((data=fopen("data3.txt","r"))==NULL){

printf("Can not open file\n");

return 0;

}

while(!feof(data)){

//原txt文档的数据之间是以空格隔开的

}

fclose(data);

for(int j=0;ji;j++){

}

return 0;

}

扩展资料

1、使用关键字struct,它表示接下来是一个结构体。

2、后面是一个可选的标志(book),它是用来引用该结构体的快速标记。

C语言结构体数组 的输入方式

1、如果从标准输入中输入,只有挨个输入每个结构体对象的成员。如果从文件输入,则可以用fread函数直接读入整个对象。

2、例程:

#include stdio.h

struct student

{

int num;

char name;

int score[3];

};

void main()

{

void print(struct student);

struct student stu[5];

int i;

for(i=0;i5;i++) //问题在%c前要一个空格,还有少了

{

scanf("%d %c%d%d%d",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2]);

}

printf("输入完成\n");

for(i=0;i5;i++)

print(stu[i]);

}

void print(struct student stu)

{

printf("%d%c%d%d%d\n",stu.num,stu.name,stu.score[0],stu.score[1],stu.score[2]);

}

c语言 结构体(struct)数据录入为什么失败

因为scanf("%d %d %d",stu_first.birthday.year,stu_first.birthday.month,stu_first.birthday.day);

当用户输入数据再输入了回车既是输入了\n,

所以当运行到while((*ptr++=getchar())!='\n');

就相当输入了空字符

你可以在scanf函数后再加个getchar();就能正确的跑了。

C语言 用函数实现结构体的输入

#includestdio.h

struct student //结构体在函数外部定义

{

int num;

char Class[20];

char name[40];

float music;

float art;

float math;

};

void in(struct student stu[],int n); //函数声明在函数外部,主函数向子函数传递stu、n,才能在子函数中使用stu、n

void ave(struct student stu); //函数声明在函数外部,求平均数程序整体有些错误,我给改了

void main()

{

struct student stu[100]; //已经定义好的结构体全名是struct +你定义的名字,鉴于内存有限,100的长度已经够用了

int n,i;

printf("输入人数\t"); //增强互动性

while(scanf("%d",n)!=0)

{

in(stu,n);

for(i=0;in;i++)

{

printf("%s ",stu[i].name);

ave(stu[i]);

}

}

}

void in(struct student stu[],int n)

{

int i;

printf("输入信息(学号,班级,姓名,音乐成绩,艺术成绩,数学成绩)\n"); //增强互动性

for(i=0;in;i++)

{

scanf("%d %s %s %f %f %f",stu[i].num,stu[i].Class,stu[i].name,stu[i].math,stu[i].music,stu[i].art);

}

}

void ave(struct student stu)

{

float average;

average=(stu.music+stu.math+stu.art)/3.000;

printf("%5.lf\n",average);

}

1、结构体,函数声明都在主函数外;

2、被调函数使用主调函数需要传值;

3、结构体名为struct +定义名;

4、程序注意互动性。


分享标题:结构体函数c语言录入数据 c语言结构体函数
文章转载:http://cdiso.cn/article/hhspjs.html

其他资讯