中易网

c语言 结构体输入输出问题。。。

答案:3  悬赏:30  
解决时间 2021-02-16 19:55
程序如下:

#include "stdio.h"
void main()
{
struct score
{
int chi;
int math;
};
struct student
{
int num;
char name;
struct score study;
}a[3],*p;
int i;
for(i=0;i<3;i++)
scanf("%d%s%%d%d",&a[i].num,a[i].name,&a[i].study.chi,&a[i].study.math);
for(p=a;p<a+3;p++)
printf("%-3d%-5s%-4d%-4d\n",(*p).num,(*p).name,(*p).study.chi,(*p).study.math);
}

输入:1 hg 85 95 2 dg 86 54 3 se 56 98
输出结果不对啊。。。。有一些数据可以输出,有一些是乱码。。。请大家帮帮忙。。。谢了。。。
scanf("%d%s%d%d……………
请问多了哪个百分号阿?输出4个数据 不是应该4个百分号吗? 那么输出printf后面是不是也用3个百分号阿?
最佳答案
#include "stdio.h"
void main()
{
struct score
{
int chi;
int math;
};
struct student
{
int num;
char name[10];//这儿应该是数组吧。。
struct score study;
}a[3],*p;
int i;
for(i=0;i<3;i++)
scanf("%d%s%d%d",&a[i].num,a[i].name,&a[i].study.chi,&a[i].study.math);//多了一个“%”号
for(p=a;p<a+3;p++)
printf("%-3d%-5s%-4d%-4d\n",(*p).num,(*p).name,(*p).study.chi,(*p).study.math);
}
全部回答
小心
哦,是scanf的问题。你这样写:scanf("%s,%s,%d",&a.name[0],&a.sex[0],&a.fenshu);
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
五大洲名字是怎么来的!~~四大洋是怎么区分的
朴孝济和郑元熙是同一个人吗
大一体育生理论课怎么复习
如图桩承台高度后面括号中的两个数字表示的意
昔日曾游此,如今九十春,红尘多少客,谁是识
《三国演义》刘备为什么要使用双股剑作为武器
具体时间 立春为什么要吃春饼
请翻译成白话文:“安营既毕,便画四至八道地
黎明照相馆(草厂北路)地址好找么,我有些事要
医院妇产科医生态度不好责任感不强该怎么写投
在什么地方约会接吻好
不计较个人得失打一成语
新园幼儿园(横新塘路)地址在哪,我要去那里办
凭胸而论,什么国产啤酒最好喝
cad安装中出现1308错误,然后打开的图纸,文
推荐资讯
明知电脑中了病毒还长时间不杀,会不会对电脑
从深圳机场到罗湖区沿河东路19号河东宾馆座几
微型气相色谱仪 可检测哪些气体
为何宋朝进士数量比明朝多得多
我有一独资有限公司现拟转让30%股份给他人,
蜀山战纪中哪一集公孙无我被发现
手指甲中间切掉一块流血怎么办
一首歌里面有句夜变得好冷是什么歌
腐殖质和地下深层养料有什么区别?
如果他人持有身份证复印件和存折复印件能不能
吸血鬼骑士的开头曲的中文翻译
天马一文表达了作者对什么的赞美之情
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?