#include<iostream>#include<fstream>using namespace std;int Sum(int a,int b,int c){ int sum; sum=a+b+c; return sum;}double Ave(int a,int b,int c){ double ave; ave=(a+b+c)/3; return ave;}int main(void){ cout<<"2016111893 蔡睿"<<endl; int i=1; char number[5],chinese[5],english[5],c[5],total[5],average[5]; FILE *file2; ifstream file1("d:\\test\\score.dat.txt",ios::out); //文件打开,成功返回文件流对象值为非零值,不成功为0 if(!file1) { cout<<"打开文件不存在!"<<endl; exit(0); } file2=fopen("d:\\test\\statics.dat.txt","w"); while(!file1.eof())//文件未结束循环 { file1>>number>>chinese>>english>>c; total[i]=chinese[i]+english[i]+c[i]; average[i]=total[i]/3; i++; fprintf(file2, "%-15s%-15s%-15s%-15s%-15s\n", number,chinese,english,c,total,average); } file1.close();}不知道该怎么弄呢???
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
void main(void)
{
const int N=16;
string c[N];
string aver="total average";
int b[3][3];
int i,j;
double ave[3],sum[3];
fstream f1("d:\\test\\score.dat.txt");
if(!f1)
{
cout<<"打开文件不存在"<<endl;
}
else
{
cout<<"读取的数据为"<<endl;
for(i=0;i<16;i++)
{
f1>>c[i];
}
for(i=0;i<16;i++)
{
cout<<c[i]<<" ";
if((i+1)%4==0)
cout<<endl;
}
for(i=0;i<3;i++)
{
sum[i]=0;
for(j=0;j<3;j++)
{
b[i][j]=std::stoi(c[i*4+j+5]);
sum[i]=sum[i]+b[i][j];
}
ave[i]=sum[i]/3;
}
f1.close();
}
ofstream f2("d:\\test\\statics.dat.txt");
if(!f2)
{
cout<<"打开文件错误"<<endl;
}
else
{
for(i=0;i<4;i++)
{
f2<<c[i]<<" ";
}
f2<<aver<<endl;
for(i=4;i<16;i++)
{
f2<<c[i]<<" ";
if((i+1)%4==0)
f2<<""<<sum[(i+1)/4-2]<<" "<<ave[(i+1)/4-2]<<endl;
}
cout<<"请打开 statics.dat.记事本查看结果"<<endl;
}
}