永发信息网

C程序设计中的疑问

答案:2  悬赏:10  手机版
解决时间 2021-04-14 12:08

这是《C程序设计(第三版)》的340页中浩强哥给我们的例题。。说是输入学生的数据,,然后储存到一个磁盘文件中。。很容易的题目。浩强哥写得也没错。但是我发现一个问题。。就是只有字符型的数据才是正确的。。整型数据不能完成正确存储。这是为什么呀 。。真奇怪。真奇怪。。

#include<stdio.h>

#define SIZE 1

struct student_type

{

char name[10];

int num;

int age;

char addr[15];

}

stud[SIZE];

void save()

{

FILE *fp;

int i;

if ((fp=fopen("d:\\stu_list","wb"))==NULL)

{

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

return;

}

for (i=0;i<SIZE;i++)

if(fwrite(&stud[i],sizeof(struct student_type),1,fp)!=1)

printf("file write error");

fclose(fp);

}

void main()

{

int i;

for(i=0;i<SIZE;i++)

scanf("%s%d%d%s",stud[i].name,&stud[i].num,&stud[i].age,stud[i].addr);

save();

}

这是输入的数据。

这是输出文件里的内容。

心都碎了。。

最佳答案
字符型的那是因为本身存的就是ascii码,fwrite进去还是ascii码,所以能显示出来
int,double之类的本身存的是二进制表示,fwrite进去仍然是二进制,在你把1转成'1'之前,相信fwrite进去你是看不到你所期待的答案的
全部回答
qq上我告诉你,你到底想不想知道???
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
已知一个数的30%是45,求这个数。
学软件要多少钱,office办公软件培训班多少钱
一二三寿司(潮州卜蜂莲花店)地址有知道的么?
万达住宅A区我想知道这个在什么地方
在手游里面充了钱,但是觉得不大值得.但是已
单选题下列几种物质中,可用来测定空气组成的
和男生聊天怎么找话题,新手主播怎么主动找话
神州行家园卡可挂超级QQ吗
some people can't tell one colour fro
关于歌曲内疚MP3格式问题!
现在务本桃花开了吗?务本有什么好玩的?
王标小前村怎么去啊,有知道地址的么
为什么总是那么容易犯不该犯的错?
文凭是不是一切?
我们治疗疾病所需的抗生素大多是从微生物中制
推荐资讯
填空题某大学对1000名学生的自主招生水平测试
地下城我光白把人上挑后(上挑加满了)想第一时
天祝藏族自治县广播电影电视局石门广播电视管
估算298×4≈122×5≈58×6≈318×8≈
阿迪达斯运动裤180/86a。86a据说是指腰围
风味轩黄焖鸡米饭地址在哪,我要去那里办事
摩登家庭第一季中英文字幕
有没有好看的 画风好的 校园类的动漫
单选题商品的需求量与其自身价格的变化成
姓袁的在古代有没有开国元老的
人是否有癌基因
要怎么才能抓住时间呢??
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?