如何实现简单的C++函数
我试图解决的编程挑战是国家为:编写接受三个参数的函数:数组,则大小 阵列的,和数n。假定数组包含整数。该函数应该显示数组中所有大于数字n的数字。如何实现简单的C++函数
#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
void largerThanN(int a[], int size, int n);
int main()
{
int size = 3,
n = 1,
arr[3] = { 0,5,6 };
largerThanN(arr, size, n);
}
void largerThanN(int a[], int size, int n)
{
for (int i = 0; i < size; i++)
{
if (a[i] > n)
{
cout << a[size] << " is greater than n " << endl;
}
}
}
这是我至今令人费解,但我不知道这是否甚至远程接近解决的挑战,也许从pro C与一些方向++开发者会助阵。
编辑:我已经找到了一些帮助,你们在评论中,谢谢你们帮助新手出来。那意义重大。
你可以不喜欢这个 -
#include <iostream>
using namespace std;
void largerThanN(int[], int size, int n);
int main()
{
int size;
cin >> size;
int a[size];
for(int i=0; i < size; i++)
cin >> a[i];
int n;
cin >> n;
largerThanN(a, size, n);
return 0;
}
void largerThanN(int a[], int size, int n)
{
for(int i = 0; i < size; i++)
{
if(a[i] > n)
cout << a[i] << endl;
}
}
我对它进行了更多的修改,并且对函数做了相同的事情,但是你在main()中做了什么确实帮助我完全理解了如何将值传递给函数。谢谢@arnab –
#include "stdafx.h"
#include <iomanip>
#include <iostream>
using namespace std;
double largerThanN(int[], int size, int n);
int main() {
int arr_size; // array size
cin >> arr_size;
vector<int> arr(n);
cout << "Enter values: ";
for (int i=0; i<n; i++)
cin >> arr[i];
int n;
cin >> n; // the no. to search for
largerThanN(arr, arr_size, n);
return 0; }
void largerThanN(int[], int size, int n) {
int index;
for (index = 0; index < size; index++)
{
if (values[index] > n)
cout << values[n] << endl;
} }
是否有用? – CSRP
这有帮助,谢谢@ csrp –
'stdafx.h'是一个非标准的头。 SO不是我的家庭作业服务。阅读关于C++的[更多](http://en.cppreference.com/w/cpp),使用它的标准[容器](http://en.cppreference.com/w/cpp/container)。编译所有警告和调试信息,并使用调试器。 'largerThanN'的签名是错误的,该函数应该给出'bool'或者可能是一个'void'(然后它被命名得很糟糕) –
@OP为什么你用'cin'接受用户输入?从问题描述中,int []数组(你没有在'largerThanN'中命名)应该包含所有你想测试的值 – wKavey
你可能想要抓住一个[很好的C++书](https://*.com/q /1782465分之388242)。 – Angew