您好,我正在编写一个程序,用于获取存储在数组中的数字,如果它们是偶数,则将它们相加。但是我一直遇到这个错误
"main.c:9:16: warning: comparison between pointer and integer [enabled by default]
for (i = 0; i < MAX_LEN; ++i){
这是我的程序我不知道它是否会正确计算,因为我从来没有能够成功运行它。感谢您的帮助
#include <stdio.h>
int main() {
int MAX_LEN[15] = {10,12,52,131,15,84,3,4,11,14,32,2,1,6,7};
int i = 0;
int sum = 0;
for (i = 0; i < MAX_LEN; ++i){
if (MAX_LEN[i] % 2 == 0){
sum = sum + MAX_LEN[i];
}
else {
sum = sum;
}
}
printf("Sum: %d", sum);
return 0;
}
最佳答案
您的 for 循环中几乎没有错误(并且您为数组命名 MAX_LEN 有点令人困惑)
for (i = 0; i < sizeof(MAX_LEN)/sizeof(int); ++i){ //size of the array not the array
if (MAX_LEN[i] % 2 == 0){
sum = sum + MAX_LEN[i];
}
else {
sum = sum;
}
}
关于c - 计算偶数或奇数然后将它们相加的 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40210626/