在幼稚园做义工,幼稚园中共有 n 颗树,第 1 天中午时它们的高度分别为:h1,h2,…,hnh_1,h_2,…,h_nh1,h2,…,hn (单位:厘米)。
每一天的晚上每棵树的高度都会增加 a 厘米,任务则是在第二天的清晨检查每一颗树的高度,若某颗树的高度超过了 k 厘米就会将它的高度修剪为 b 厘米
请你计算一下第 m 天中午每一颗树的高度。
求指正
#include
int main()
{
int t=0,n=0,a=0,b=0,k=0,h[1001]={0},i=0,m=0,j=0,p=0;
scanf("%d",&t);
for(i=0;i"%d",&n);
for(j=0;j"%d",&h[j]);
scanf("%d %d %d",&a,&k,&b);
scanf("%d",&m);
for(j=0;jfor(p=0;pif(h[j]>k)
h[j]-=b;
}
for(j=0;j"%d ",h[i]);
printf("\n");
}
return 0;
}
参考GPT和自己的思路:
这段代码看起来没有明显的错误,可以正常运行。但是建议在输入和输出的时候加上相应的提示信息,以便更清楚地了解程序的运行状态。另外,数组的大小是固定的,如果输入的n超过了1001就会出现越界访问的问题。可以改用动态内存分配来解决这个问题。
参考:https://blog.csdn.net/qq_73973905/article/details/128071801
有两个错误: