编写一个程序,要求随机生成61个学生的成绩(从0到100的整数),在将成绩排序(由高到低)后保存到文件"sc

如题所述

//如有问题,再探讨~
#include<iostream.h>
#include<stdlib.h>
#include<fstream.h>

#define N 61
void saveTofile(int array[],int n);//保存结果到文件
void print(int array[],int n);//打印数组函数
void popsort(int array[],int n);//排序

void main()
{
int i;
int array[N];
for(i=0;i<N;i++)
{
array[i]=rand()%100;
}
cout<<"排序前数组:"<<endl;
print(array,N);
cout<<"\n排序之后数组:"<<endl;
popsort(array,N);
print(array,N);
saveTofile(array,N);//保存到文件
}
void popsort(int array[],int n)
{
int t;
for(int i=0;i<n-1;i++)
{
for(int j=0;j<n-i-1;j++)
{
if(array[j]>array[j+1])
{
t=array[j];
array[j]=array[j+1];
array[j+1]=t;
}
}
}
}
void print(int array[],int n)
{
for(int i=0;i<n;i++)
{
if(i%10==0&&i!=0)
{
cout<<endl;
}
cout<<array[i]<<"\t";
}
cout<<endl;
}
void saveTofile(int array[],int n)
{
ofstream file("d:\\sc.txt",ios::in|ios::out|ios::trunc);
for(int i=0;i<n;i++)
{
char *buffer=new char[1];
if(i%10==0&&i!=0)
file<<endl;
file<<array[i];
file.write("\t",sizeof("\t"));
}
file.close();
cout<<"文件写入成功!!!"<<endl;
}
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答