c中怎么从键盘输入赋值为结构体变量

2025-02-26 00:20:02
推荐回答(3个)
回答1:

先定义结构体,依次对结构体中的元素赋值即可:

//参考代码 
#include
typedef struct stu{//定义结构体类型 
int a;
int b;
int c;
};
int main()
{
stu s;//定义结构体 
scanf("%d%d%d",&s.a,&s.b,&s.c);//依次输入各元素 
printf("结构体元素为:%d %d %d",s.a,s.b,s.c);//输出各元素 
return 0;
}
/*运行结果: 
1 2 3
结构体元素为:1 2 3
*/

回答2:

直接看例子吧 我刚写的 运行没有问题
#include
int main()
{
typedef struct stud{
int clas;
int sex;
int line;
}stud;
stud stu1;
stud *stu2=malloc(sizeof(stud));
int k=0;//没用 只是让控制台执行完了暂停
stu1.sex=1;
stu2->sex=2;
printf("%d,%d\n",stu1.sex,stu2->sex);
scanf("%d,%d",&(stu1.line),&(stu2->line));
printf("%d,%d\n",stu1.line,stu2->line);
scanf("%d",&k);//没用 只是让控制台执行完了暂停
free(stu2);
}

回答3:

很简单呀:
首先你必须要有一个结构体名吧:
struct stud{
int clas;
int sex;
int line;
}stdunt
stdunt.clas=205;
stdunt.sex=男;
stdunt.line=...

而可以去在定义的就可以赋初值:
struct stud{
int clas;
int sex;
int line;
}stdunt={“205”,“男”,“”}
如果是数组的话可以这样写:
struct stud{
int clas;
int sex;
int line;
}stdunt[3]={{“205”,“男”,“”},
{ ,,} ,
{,,} }

明白了吗?有什么不懂再联系!