當前位置:編程學習大全網 - 編程軟體 - c語言編程 結構體

c語言編程 結構體

#include<stdio.h>

#include<stdlib.h>

typedef struct tagsalesperson

{

char name[20];

float task,sales,bonus;

}salesperson;

int main()

{

int n,i,j,min;

double wch;

salesperson t,*ptsales;

printf("請輸入銷售員人數:");

scanf("%d",&n);

ptsales=(salesperson*)calloc(n,sizeof(salesperson));

for(i=0;i<n;i++)

{

printf("請輸入第%d個銷售人員的姓名:",i+1);

scanf("%s",ptsales[i].name);

printf("請輸入第%d個銷售人員的任務量,完成量:",i+1);

scanf("%f %f",&ptsales[i].task,&ptsales[i].sales);

wch=ptsales[i].sales/ptsales[i].task;

ptsales[i].bonus=0;

if(wch>0.4 && wch<=0.8)

{

ptsales[i].bonus+=(wch-0.4)*0.008*ptsales[i].task;

}

else if(wch>0.8)

{

ptsales[i].bonus+=(wch-0.8)*0.01*ptsales[i].task+0.4*0.008*ptsales[i].task;

}

}

for(i=0;i<n-1;i++)

{

min=i;

for(j=i+1;j<n;j++)

{

if(ptsales[j].bonus<ptsales[min].bonus)

{

min=j;

}

}

t=ptsales[i];

ptsales[i]=ptsales[min];

ptsales[min]=t;

}

puts("按效益工資升序排序後,各銷售員的信息如下:");

printf("%-12s%-18s%-18s%-22s\n","name","task","sales","bonus(萬元)");

for(i=0;i<n;i++)

{

printf("%-12s%-18f%-18f%-22f\n",ptsales[i].name,ptsales[i].task,ptsales[i].sales,ptsales[i].bonus);

}

system("PAUSE");

return EXIT_SUCCESS;

}

  • 上一篇:誰能幫我用matlab做壹道運籌學的題,急,在線等,要交作業的
  • 下一篇:什麽叫水晶報表?
  • copyright 2024編程學習大全網