C语言文件问题,谁来救救我!!!!

有二个程序,第一是我做了一个文件,把一堆数据存入这个文件,然后,我在第二个程序把第一个文件的数据调出来,存入数组中,进行排序操作,当第一个程序运行完后,我在桌面看到了一个... 有二个程序,第一是我做了一个文件,把一堆数据存入这个文件,然后,我在第二个程序把第一个文件的数据调出来,存入数组中,进行排序操作,当第一个程序运行完后,我在桌面看到了一个文件,我以TC方式打开后,CTRL+F5看到的是乱七八糟的东西,以记事本的方式打开也是看到的乱七八糟的东西,??????
而且运行第二个程序,出现的是一堆0000,实在搞不清楚,就麻烦拉.
这两个程序对我非常的重要!!!
我的上机书上都有文件操作,那书,本来有盘,实际没了,所以,数据都要自己做,.
所以上面二个程序很重要呀!!!
谢谢!
#include<stdio.h>
main()
{ FILE *fp;
int i,j;
float x;
fp=fopen("a.t","wb");
if(fp==NULL){printf("can not open the file\n");exit(0); }
printf("\ninput 10 data into a.t:") ;
for(i=0;i<10;i++)
{scanf("%d",&x) ;
fwrite(&x,4,1,fp) ;
} fclose(fp) ;
}

************************************************************
#include<stdio.h>
#include<string.h>
int a[10] ;
void readdat()
{FILE *in;int i; in=fopen("a.t","r") ;
for(i=0;i<=9;i++) fscanf(in,"%d",&a[i]) ;fclose(in) ;
}
void jssort()
{int t, i,j;
for(i=0;i<9;i++) for(j=i+1;j<10;j++) if(a[i]>a[j]) {t=a[i];a[i]=a[j];a[j]=t;}
for(i=0;i<9;i++) printf("%d",a[i]); }
main()
{ readdat();jssort();
}

谁帮我解决了,我还要给他追加积分
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
还是不行那!!!谁帮我解决了,我再追加他200个积分,一定加!!!1
展开
 我来答
wanglongzhen
2007-07-04 · 超过57用户采纳过TA的回答
知道小有建树答主
回答量:240
采纳率:0%
帮助的人:193万
展开全部
你的第一个程序真确,我刚刚验证过,没有错误。你可以在看一下
忘至白葬不情必0T
2007-07-04 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:90%
帮助的人:1.2亿
展开全部
你的x是float型的,但你scanf时用了%d.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友cc0820bc9
推荐于2016-04-19 · 超过53用户采纳过TA的回答
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:200万
展开全部
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main()
{ FILE *fp;
int i;
int x;
fp=fopen("a.t","w+");
if(fp==NULL){printf("can not open the file\n");exit(0); }
printf("\ninput 10 data into a.t:") ;
for(i=0;i<10;i++)
{
scanf("%d",&x) ;
fprintf(fp,"%d ",x);
}
fclose(fp) ;
}

//*************************************************************
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int a[10] ;
void readdat()
{FILE *in;int i; in=fopen("a.t","r+") ;
for(i=0;i<=9;i++) fscanf(in,"%d",&a[i]) ;fclose(in) ;
}
void jssort()
{int t, i,j;
for(i=0;i<9;i++) for(j=i+1;j<10;j++) if(a[i]>a[j]) {t=a[i];a[i]=a[j];a[j]=t;}
for(i=0;i<=9;i++) printf("%d ",a[i]);
printf("\n");
}
void main()
{ readdat();jssort();
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式