c语言, error C2440: '=' : cannot convert from 'char [8]' to 'char'怎么解决

#include<stdio.h>structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr... #include<stdio.h>
struct student
{
int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
struct student*next;
};
void main()
{
struct student s1,s2,s3,*head,*p;
head=&s1;
s1.num=001;s1.name[10]="Li Ming";s1.sex='F';s1.age=18;s1.score=82;s1.addr[10]="xiaoqu1";s1.next=&s2;
s2.num=002;s2.name[10]="Zhang Hua";s2.sex='M';s2.age=17;s2.score=90.5;s2.addr[10]="xiaoqu2";s2.next=&s3;
s3.num=003;s3.name[10]="Wang Bin";s3.sex='F';s3.age=19;s3.score=87;s3.addr[10]="xiaoqu3";s3.next=NULL;
p=head;
whlie(p!=NULL)
{
printf("%d,%s,%s,%d,%5.1lf,%s\n",p->num,p->name,p->sex,p->age,p->score,p->addr);
p=p->next;
}
}
展开
 我来答
qscorpius_fly
2014-06-16 · TA获得超过1860个赞
知道小有建树答主
回答量:811
采纳率:80%
帮助的人:317万
展开全部
主函数中对每个结构体的赋值错误
s1.num=001;
strcpy(s1.name,"Li Ming");//字符串赋值不能用s1.name="Li Ming";得用strcpy函数
s1.sex='F';
s1.age=18;
s1.score=82;
strcpy(s1.addr,"xiaoqu1");//同理
s1.next=&s2;

后面的修改一样
porker2008
推荐于2016-08-15 · TA获得超过1.4万个赞
知道大有可为答主
回答量:7066
采纳率:62%
帮助的人:1.1亿
展开全部
s1.name[10]="Li Ming";

->

strcpy(s1.name, "Li Ming");

类似也一并修改

更多追问追答
追问
改完之后又出现了error C2065: 'strcpy' : undeclared identifier,要怎么解决
追答

添加头文件

#include <string.h>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式