gpt4 book ai didi

c - C 中索引 0 处的数组值在循环结束时发生变化

转载 作者:太空宇宙 更新时间:2023-11-04 06:19:49 25 4
gpt4 key购买 nike

<分区>

下面是我的 C 代码。我不知道为什么数组 mins(以及 meds 和 maxs)中索引 0 处的值在循环的最后一次迭代中发生变化。请帮忙。

很抱歉添加了太多打印语句。这些主要用于调试。

#include<stdio.h>
#include<stdlib.h>
#define SZ 10000

typedef long long LL;


LL min(LL x, LL y)
{
return x<y?x:y;
}

LL max(LL x, LL y)
{
return x>y?x:y;
}

struct triangle
{
LL sm, md, lg;
};

int main()
{
int n, i, ans;
struct triangle obj[n];
LL mins[n], meds[n], maxs[n];
LL a, b, c;
scanf("%d%*c", &n);
for(i=0;i<n;i++)
{
scanf("%lld%lld%lld%*c", &a, &b, &c);
printf("Scanned : %lld%lld%lld\n", a, b, c);
obj[i].sm = mins[i] = min(a, min(b,c));
obj[i].lg = maxs[i] = max(a, max(b, c));
obj[i].md = meds[i] = max(min(a,b), min(max(a,b),c));
printf("min : %lld\t med = %lld\t max = %lld\n", mins[i], meds[i], maxs[i]);
printf("min[0] = %lld\n", mins[0]);
}

printf("Outside : min[0] = %lld\n", mins[0]);
printf("mins : ");
for(i=0;i<n;i++)
printf("%lld ", mins[i]);
printf("\n");
printf("meds : ");
for(i=0;i<n;i++)
printf("%lld ", meds[i]);
printf("\n");
printf("maxs : ");
for(i=0;i<n;i++)
printf("%lld ", maxs[i]);
printf("\n");

//printf("%d\n", ans);
return 0;
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com