C++ 编程,找了好久不知哪里出错了,望大神指教
我想要打开一个文件,文件里的数据格式如下5
Franks,Tom 2 3 8 3 6 3 5
Gates,Bill 8 8 3 0 8 2 0
Jordan,Michael 9 10 4 7 0 0 0
Bush,George 5 6 5 6 5 6 5
Heinke,Lonnie 7 3 8 7 2 5 7
这是我的程序
#include <iostream>
#include <fstream>
# include <cstring>
# include <string>
using namespace std;
int main()
{
ifstream fin;
fin.open("empdata.txt");
int themax;
string name[50];
int time[50][50];
fin >> themax;
int sumtime[themax];
for(int i = 0; i < themax; i++)
{
sumtime[i] = 0;
}
for(int i=0;i<themax;i++)
{
fin>>name[i];
for(int j=0;j<7;j++)
{
fin>>time[i][j];
sumtime[i]=sumtime[i]+time[i][j];
}
}
for (int a = 0;a<themax-1;a++)
{
for (int b=0;b<themax-a;b++)
{
int minnum=sumtime[b];
if (sumtime[b]<sumtime[b+1])
{
minnum=sumtime[b];
sumtime[b]=sumtime[b+1];
sumtime[b+1]=sumtime[b];
swap(name[b],name[b+1]);
for (int b=0;b<themax;b++)
{
for (int k=0;k<7;k++)
{
swap(time[b][k],time[b+1][k]);
}
}
}
}
}
cout << name<< " ";
cout << time<< " ";
cout << sumtime;
cout << endl;
fin.close();
return 0;
}
为什么运行结果是
0x28fd50 0x28d640 0x28d570
Process returned 0 (0x0) execution time : 0.220 s
Press any key to continue.
我的程序是打开一个文件,将文件里的数据存储在数组当中,然后计算出总和以后用冒泡排序法排序,每个人的名字和工作时间也要随之移动,我的程序对吗?为什么会出这种情况?还有我的swap函数用的对吗?望指教。