在C语言中如何导入一个含有100000个随机数的文件到一个数组里,然后用冒泡法排序...

#include<stdio.h>
#include<stdlib.h>
int main()
{
int i,j,temp;
int a[100000];
FILE *fp ;
if((fp=fopen("bedoresort.txt","rb"))==NULL)
{printf("can not open file\n");
exit(0);
}
for(i=0;i<100000;i++)
fscanf (fp,"%d,",&a[i]);
for(j=0;j<100000;j++)
{ for (i=0;i<100000-j;i++)
if (a[i]>a[i+1])
{ temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;}
}
for(i=0;i<100000;i++)
printf("%5d",a[i] );
printf("\n"); }
以上是我编的算法可是运行不了。。。

你必需要保证有一个bedoresort.txt文件跟你的cpp文件放在一起。
其次,你的冒算法写错了,应该写为:
for(j=0;j<100000;j++)
for (i=j;i<100000;i++)
if (a[i]>a[i+1])
{
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}追问

改掉运行之后啥也木有。。。是这个界面。。

追答

你的文件里面有一万个数吗?一万个数的读取和排序,需要时间要很久的

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-06-26
你有十万个数字的文件吗? 不然你怎么运行的。
相似回答
大家正在搜