2 larry ke Larry_Ke 于 2014.12.12 21:20 提问

用for循环输入二维数组的时候,第一组数为什么为0?

代码如下
#include
int main()
{
void paixu(float food[100][2], int N);
float M,total = 0;
int N,j,i;
while (scanf("%f%d", &M, &N)&&M != -1 && N != -1)
{

float food[100][2] = { 0 };
for (i = 0; i < N; i++)
{
for (j = 0; j < 2; j++)
scanf("%f", &food[i][j]);
}
paixu(food, N);
for (i = 0; M>food[i][1]; i++)
{
M = M - food[i][1];
total += food[i][0];
}
total = total + M / food[i][1] * food[i][0];
printf("%.3f\n", total);
}
return 0;
}
void paixu(float food[100][2],int N)
{
int i, j, k;
float t_1, t_2;
for (i = 0; i < N; i++)
{
k = i;
for (j = i + 1; j < N; j++)
{
if (food[k][1] < food[j][1])
k = j;
}
if (i != k)
{
t_1 = food[i][1];
t_2 = food[i][0];
food[i][1] = food[j][1];
food[i][0] = food[j][0];
food[j][1] = t_1;
food[j][0] = t_2;
}
}
}求高手帮忙找下哪里错了

2个回答

u013451048
u013451048   2014.12.12 21:58
已采纳

数组的下标就是从0开始的啊

Larry_Ke
Larry_Ke 对啊。但是我对food【0】【0】和food【0】【1】输入7 2但是里面保存的却是0 0
大约 3 年之前 回复
qq_24464727
qq_24464727   2014.12.12 22:49

不知道,应该就是从0开始的。、

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!