这是程序:
#include "conio.h"
struct xinxi
{
int a;
char b;
int c;
int d;
int e;
}z[15];
main()
{
int i;
int y=0;
int k;
int x;
int f=0;
struct xinxi z1;
printf("qing xun xu shu ru shang pin bian hao ,shang pin ming cheng ,shang pin dan jia ,shang pin shu liang\n");
for(i=0;i<15;i++)
{
scanf("%d%s%d%d",&z[i].a,&z[i].b,&z[i].c,&z[i].d);
z[i].e=z[i].c*z[i].d;
}
for(i=0;i<15;i++)
{
for(k=0;k<15-i;k++)
{
if(z[k].e>z[k+1].e)
{
z1=z[k];
z[k]=z[k+1];
z[k+1]=z1;
}
}
}
for(i=14;i>=0;i--)
{
printf("a=%d ,b=%s ,c=%d ,d=%d ,e=%d \n",z[i].a,z[i].b,z[i].c,z[i].d,z[i].e);
}
for(i=0;i<15;i++)
{
y=z[i].c+y;
}
x=y/15;
for(i=0;i<15;i++)
{
if(z[i].c>>x)
{
f++;
}
}
printf("shang pin dan jia bi shang pin dan jia ping jun zhi da de ge shu shi %d\n",f);
getch();
}
如果100分满的话我做这个能打多少分啊?
谢了啊 、 可是为什么最后一组数据全是0啊?
不行啊
追答for(k=0;kz[k+1].e) //当i=0,k=14时,那么z[k+1]就越界了,错误应该就是这里了,楼主显示的错误应该就是数组越界,自己看看其他地方还有没有这样的错误
还是不对啊
本回答被网友采纳