求将C语言翻译成C++语句 销售管理系统 程序如下 要是有现成的 也可以 小弟分数不多 全部奉上 在线等....

#include <stdio.h>
#include <stdlib.h>
struct commode
{
int salesperson_number;
int product_number[5];
int sales[5];
};
struct date
{
struct commode comm[4];
};
int main()
{
char ch;
bool sign=true;
int i,j,n,x,sum[4][5]={0},sum1[4]={0},biggest=0,sum2[5]={0},sum3[5]={0},sum4[4]={0},choice,result=0;
struct date f[31];
FILE* fp;
printf("请输入上个月的天数:");
scanf("%d",&n);

for(x=0;x<n;x++)
{
printf("请输入第%d天的销售额\n",x+1);
for(i=0;i<4;i++)
{
f[x].comm[i].salesperson_number=i+1;
for(j=0;j<5;j++)
{
f[x].comm[i].product_number[j]=j+1;
printf("请输入该天第%d人第%d种产品的销售额:",i+1,j+1);
scanf("%d",&f[x].comm[i].sales[j]);
}
}
}

if((fp=fopen("date.txt","w"))==NULL)
{
printf("File open error!\n");
exit(0);
}
for(x=0;x<n;x++)
{
for(i=0;i<4;i++)
{
fprintf(fp,"销售员代号%d\n",f[x].comm[i].salesperson_number);
for(j=0;j<5;j++)
{
fprintf(fp,"产品代号%d 销售额%d\n",f[x].comm[i].product_number[j],f[x].comm[i].sales[j]);
}
}
}
if(fclose(fp))
{
printf("Can't close the file!\n");
exit(0);
}
if((fp=fopen("date.txt","r"))==NULL)
{
printf("File open error!\n");
exit(0);
}
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
for(x=0;x<n;x++)
{
fscanf(fp,"%d",&f[x].comm[i].sales[j]);
sum[i][j]+=f[x].comm[i].sales[j];
}
}
}
system("cls");
while(true)
{
printf("0 退出\n1 输出每个人每种产品的销售额\n2 根据销售额对销售员的排名\n");
printf("3 统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果\n");
while(result==0)
{
fflush(stdin);
result=scanf("%d",&choice);
if(result==0)
printf("请输入一个数字:");
else
{
result=0;
break;
}
}
switch(choice)
{
case 0:
return 0;
case 1:
{
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
printf("第%d个人第%d件产品的销售额为%d\n",i+1,j+1,sum[i][j]);
}
}
}
break;
case 2:
{
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
sum1[i]+=sum[i][j];
}
sum4[i]=sum1[i];
}
printf("根据销售额对销售员的排名如下\n");
for(i=0;i<4;i++)
{
biggest=i;
for(j=i+1;j<4;j++)
{
if(sum1[biggest]<sum1[j])
biggest=j;
}
if(biggest!=i)
{
int temp;
temp=sum1[i];
sum1[i]=sum1[biggest];
sum1[biggest]=temp;
}
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(sum1[i]==sum4[j])
{
printf("%d\n",j+1);
sum4[j]=-1;
break;
}
}
}
for(i=0;i<4;i++)
{
sum1[i]=0;
}
}
break;
case 3:
{
biggest=0;
for(j=0;j<5;j++)
{
for(i=0;i<4;i++)
{
sum2[j]+=sum[i][j];
}
sum3[j]=sum2[j];
}
for(j=0;j<5;j++)
{
biggest=j;
for(i=j+1;i<5;i++)
{
if(sum2[biggest]<sum2[i])
biggest=i;
}
if(biggest!=j)
{
int temp;
temp=sum2[j];
sum2[j]=sum2[biggest];
sum2[biggest]=temp;
}
}
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
if(sum2[i]==sum3[j])
{
printf("产品号%d 销售额%d\n",j+1,sum2[i]);
sum3[j]=-1;
break;
}
}
}
for(i=0;i<5;i++)
{
sum2[i]=0;
}
}
break;
default:
printf("请输入正确的选择!\n");
break;
}
fflush(stdin);
printf("请问是否想继续选择查看(yes(y)或no(n):");
while(true)
{
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
{
system("cls");
break;
}
else
{
if(ch=='N'||ch=='n')
return 0;
else
{
fflush(stdin);
printf("请输入y或n\n");
}
}
}

}

if(fclose(fp))
{
printf("Can't close the file!\n");
exit(0);
}
return 0;
}

我给你一份,用MinGW和vc2008都编译通过,主要加了一句,设定locale,为了显示中文,其他printf用宽字符版本wprntf输出中文,程序逻辑一点没有修改!
#include <cstdio>
#include <cstdlib>
#include<clocale>
using namespace std;

struct commode
{
int salesperson_number;
int product_number[5];
int sales[5];
};
struct date
{
struct commode comm[4];
};
int main()
{
char ch;
bool sign=true;
int i,j,n,x,sum[4][5]= {0},sum1[4]= {0},biggest=0,sum2[5]= {0},sum3[5]= {0},sum4[4]= {0},choice,result=0;
struct date f[31];
FILE* fp;
setlocale(LC_ALL ,"chs"); // 为了显示中文
wprintf(L"请输入上个月的天数:");
scanf("%d",&n);

for(x=0; x<n; x++)
{
wprintf(L"请输入第%d天的销售额\n",x+1);
for(i=0; i<4; i++)
{
f[x].comm[i].salesperson_number=i+1;
for(j=0; j<5; j++)
{
f[x].comm[i].product_number[j]=j+1;
wprintf(L"请输入该天第%d人第%d种产品的销售额:",i+1,j+1);
scanf("%d",&f[x].comm[i].sales[j]);
}
}
}

if((fp=fopen("date.txt","w"))==NULL)
{
wprintf(L"File open error!\n");
exit(0);
}
for(x=0; x<n; x++)
{
for(i=0; i<4; i++)
{
fwprintf(fp,L"销售员代号%d\n",f[x].comm[i].salesperson_number);
for(j=0; j<5; j++)
{
fwprintf(fp,L"产品代号%d 销售额%d\n",f[x].comm[i].product_number[j],f[x].comm[i].sales[j]);
}
}
}
if(fclose(fp))
{
printf("Can't close the file!\n");
exit(0);
}
if((fp=fopen("date.txt","r"))==NULL)
{
printf("File open error!\n");
exit(0);
}
for(i=0; i<4; i++)
{
for(j=0; j<5; j++)
{
for(x=0; x<n; x++)
{
fscanf(fp,"%d",&f[x].comm[i].sales[j]);
sum[i][j]+=f[x].comm[i].sales[j];
}
}
}
system("cls");
while(true)
{
wprintf(L"0 退出\n1 输出每个人每种产品的销售额\n2 根据销售额对销售员的排名\n");
wprintf(L"3 统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果\n");
while(result==0)
{
fflush(stdin);
result=scanf("%d",&choice);
if(result==0)
wprintf(L"请输入一个数字:");
else
{
result=0;
break;
}
}
switch(choice)
{
case 0:
return 0;
case 1:
{
for(i=0; i<4; i++)
{
for(j=0; j<5; j++)
{
wprintf(L"第%d个人第%d件产品的销售额为%d\n",i+1,j+1,sum[i][j]);
}
}
}
break;
case 2:
{
for(i=0; i<4; i++)
{
for(j=0; j<5; j++)
{
sum1[i]+=sum[i][j];
}
sum4[i]=sum1[i];
}
wprintf(L"根据销售额对销售员的排名如下\n");
for(i=0; i<4; i++)
{
biggest=i;
for(j=i+1; j<4; j++)
{
if(sum1[biggest]<sum1[j])
biggest=j;
}
if(biggest!=i)
{
int temp;
temp=sum1[i];
sum1[i]=sum1[biggest];
sum1[biggest]=temp;
}
}
for(i=0; i<4; i++)
{
for(j=0; j<4; j++)
{
if(sum1[i]==sum4[j])
{
printf("%d\n",j+1);
sum4[j]=-1;
break;
}
}
}
for(i=0; i<4; i++)
{
sum1[i]=0;
}
}
break;
case 3:
{
biggest=0;
for(j=0; j<5; j++)
{
for(i=0; i<4; i++)
{
sum2[j]+=sum[i][j];
}
sum3[j]=sum2[j];
}
for(j=0; j<5; j++)
{
biggest=j;
for(i=j+1; i<5; i++)
{
if(sum2[biggest]<sum2[i])
biggest=i;
}
if(biggest!=j)
{
int temp;
temp=sum2[j];
sum2[j]=sum2[biggest];
sum2[biggest]=temp;
}
}
for(i=0; i<5; i++)
{
for(j=0; j<5; j++)
{
if(sum2[i]==sum3[j])
{
wprintf(L"产品号%d 销售额%d\n",j+1,sum2[i]);
sum3[j]=-1;
break;
}
}
}
for(i=0; i<5; i++)
{
sum2[i]=0;
}
}
break;
default:
wprintf(L"请输入正确的选择!\n");
break;
}
fflush(stdin);
wprintf(L"请问是否想继续选择查看(yes(y)或no(n):");
while(true)
{
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
{
system("cls");
break;
}
else
{
if(ch=='N'||ch=='n')
return 0;
else
{
fflush(stdin);
wprintf(L"请输入y或n\n");
}
}
}

}

if(fclose(fp))
{
printf("Can't close the file!\n");
exit(0);
}
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-28
#include <iostream>
#include <cstdlib>
using namespace std;

struct commode
{
int salesperson_number;
int product_number[5];
int sales[5];
};
struct date
{
struct commode comm[4];
};
int main()
{
char ch;
bool sign=true;
int i,j,n,x,sum[4][5]={0},sum1[4]={0},biggest=0,sum2[5]={0},sum3[5]={0},sum4[4]={0},choice,result=0;
struct date f[31];
FILE* fp;
cout<<"请输入上个月的天数:";
scanf("%d",&n);

for(x=0;x<n;x++)
{
cout<<"请输入第"<<x+1<<"天的销售额"<<endl;
for(i=0;i<4;i++)
{
f[x].comm[i].salesperson_number=i+1;
for(j=0;j<5;j++)
{
f[x].comm[i].product_number[j]=j+1;
cout<<"请输入该天第"<<i+1<<"人第"<<j+1<<"种产品的销售额:";
scanf("%d",&f[x].comm[i].sales[j]);
}
}
}

if((fp=fopen("date.txt","w"))==NULL)
{
cout<<"File open error!"<<endl;
exit(0);
}
for(x=0;x<n;x++)
{
for(i=0;i<4;i++)
{
fprintf(fp,"销售员代号%d\n",f[x].comm[i].salesperson_number);
for(j=0;j<5;j++)
{
fprintf(fp,"产品代号%d 销售额%d\n",f[x].comm[i].product_number[j],f[x].comm[i].sales[j]);
}
}
}
if(fclose(fp))
{
cout<<"Can't close the file!"<<endl;
exit(0);
}
if((fp=fopen("date.txt","r"))==NULL)
{
cout<<"File open error!"<<endl;
exit(0);
}
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
for(x=0;x<n;x++)
{
fscanf(fp,"%d",&f[x].comm[i].sales[j]);
sum[i][j]+=f[x].comm[i].sales[j];
}
}
}
system("cls");
while(true)
{
cout<<"0 退出\n1 输出每个人每种产品的销售额\n2 根据销售额对销售员的排名"<<endl;
cout<<"3 统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果"<<endl;
while(result==0)
{
fflush(stdin);
result=scanf("%d",&choice);
if(result==0)
cout<<"请输入一个数字:";
else
{
result=0;
break;
}
}
switch(choice)
{
case 0:
return 0;
case 1:
{
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
cout<<"第"<<i+1<<"个人第"<<j+1<<"件产品的销售额为"<<sum[i][j]<<endl;
}
}
}
break;
case 2:
{
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
sum1[i]+=sum[i][j];
}
sum4[i]=sum1[i];
}
cout<<"根据销售额对销售员的排名如下"<<endl;
for(i=0;i<4;i++)
{
biggest=i;
for(j=i+1;j<4;j++)
{
if(sum1[biggest]<sum1[j])
biggest=j;
}
if(biggest!=i)
{
int temp;
temp=sum1[i];
sum1[i]=sum1[biggest];
sum1[biggest]=temp;
}
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(sum1[i]==sum4[j])
{
cout<<j+1<<endl;
sum4[j]=-1;
break;
}
}
}
for(i=0;i<4;i++)
{
sum1[i]=0;
}
}
break;
case 3:
{
biggest=0;
for(j=0;j<5;j++)
{
for(i=0;i<4;i++)
{
sum2[j]+=sum[i][j];
}
sum3[j]=sum2[j];
}
for(j=0;j<5;j++)
{
biggest=j;
for(i=j+1;i<5;i++)
{
if(sum2[biggest]<sum2[i])
biggest=i;
}
if(biggest!=j)
{
int temp;
temp=sum2[j];
sum2[j]=sum2[biggest];
sum2[biggest]=temp;
}
}
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
if(sum2[i]==sum3[j])
{
cout<<"产品号"<<j+1<<" 销售额"<<sum2[i]<<endl;
sum3[j]=-1;
break;
}
}
}
for(i=0;i<5;i++)
{
sum2[i]=0;
}
}
break;
default:
cout<<"请输入正确的选择!"<<endl;
break;
}
fflush(stdin);
cout<<"请问是否想继续选择查看(yes(y)或no(n):"<<endl;
while(true)
{
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
{
system("cls");
break;
}
else
{
if(ch=='N'||ch=='n')
return 0;
else
{
fflush(stdin);
cout<<"请输入y或n"<<endl;
}
}
}

}

if(fclose(fp))
{
cout<<"Can't close the file!"<<endl;
exit(0);
}
return 0;
}本回答被网友采纳
第2个回答  2011-12-28
以我的水平来看,就是单词拼写错误了、、、、追问

那您能再修改下 有点小问题 跑不起来

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网