C语言结构体数组元素赋值

#include<stdio.h>>structstudent2{intnumber;charname[10];charsex;floatscore[3];//3科成绩}... #include<stdio.h>>
struct student2
{
int number;
char name[10];
char sex;
float score[3];//3科成绩
};
int main()
{
int i,j;
struct student2 stu[4];//结构体数组
printf("input\n");
for(i=0;i<4;i++)
{
scanf("%d%s%c",stu[i].number,stu[i].name,stu[i].sex);
printf("%d%s%c",stu[i].number,stu[i].name,stu[i].sex);
}
return 0;
}

这是怎么回事
展开
 我来答
梦醒南天
推荐于2016-01-24 · 学习乃进步之根本,创作是快乐的源泉
梦醒南天
采纳数:109 获赞数:361

向TA提问 私信TA
展开全部

你漏写了取地址符“&”,加上后就好了:

#include<stdio.h>
struct student2
{
    int number;
    char name[10];
    char sex;
float score[3];//3科成绩
};
int main()
{
    int i,j;
    struct student2 stu[4];//结构体数组

    printf("input\n");
    for(i=0;i<4;i++)
    {
scanf("%d %s %c", &stu[i].number,&stu[i].name,&stu[i].sex);
        printf("%d, %s, %c,",stu[i].number,stu[i].name,stu[i].sex);
    }

    return 0;
}

输出如下:

百度网友bdb74a5
2015-05-30 · TA获得超过416个赞
知道小有建树答主
回答量:259
采纳率:0%
帮助的人:178万
展开全部
scanf("%d%s%c",stu[i].number,stu[i].name,stu[i].sex);把这句分成三句输入试一下

scanf("%d",stu[i].number);
scanf("%s",stu[i].name);
scanf("%c",stu[i].sex);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式