简单的程序,从键盘读取6个数字,并返回所有偶数的总和。但是当我运行它时,它不会打印任何内容而只是退出。
我在这里缺少什么? (我知道向量会更好,但我正在练习决赛,这是一个使用数组指定的旧决赛问题。)
#include <iostream>
using namespace std;
void readNumbers();
void sumOfEven(int arr[6]);
int main(){
void readNumbers();
return 0;
}
void readNumbers(){
int myArray[6];
cout << "Enter 6 numbers:" << endl;
for(int i = 0; i < 6; i++){
cin >> myArray[i];
}
sumOfEven(myArray);
}
void sumOfEven(int arr[6]){
int sum = 0;
for(int i = 0; i <= 6; i++){
if(arr[i] % 2 == 0)
sum = sum + arr[i];
}
cout << "Sum of even numbers: " << sum;
}
答案 0 :(得分:2)
在main中有一个函数声明而不是函数调用
int main(){
void readNumbers();
^^^^^^^^^^^^^^^^^
return 0;
}
你应该写
int main(){
readNumbers();
^^^^^^^^^^^^^^
return 0;
}
第二个问题是你在循环中使用了错误的索引
for(int i = 0; i <= 6; i++){
^^^^^^^
必须有
for(int i = 0; i < 6; i++){
^^^^^