程序的任务是计算两个连续整数的值超过40的次数。因此,这里的问题是程序的结果是错误的。
为解决此问题,我尝试更改一些初始值并调查代码的机制,但我没有发现任何错误。代码如下。
#include <stdio.h>
int main() {
int a,i,e=0;
int A[31];
for(i=0; i<=30; i++) {
scanf("%d",&a);
A[i]=a;
}
if (A[i]>40 && A[i+1]>40) {
e=e+1;
}
printf("%d",e);
return 0;
}
如果我们在矩阵的所有31个位置中输入整数41,则预期结果为30,而结果始终为零(0)
预先感谢您的帮助。
答案 0 :(得分:1)
“ if语句”必须在循环中。 并且,请注意第二个循环的条件,我将其设置为“ <30”而不是“ <= 30”,因为您的程序希望将下一个变量一起比较为“ if(A [i]> 40 && A [i + 1]> 40)”。
SolutionPivotTreeView