尝试编写一个程序,该程序生成1000个随机整数b / w 0和1000的列表,然后找到第一个实例,该实例具有我选择的一定数量(在这种情况下,表示为“ iNum”,等于27),然后找到所述数字(iNum)在此数组中出现的总次数。
First()方法用于查找iNum首次出现在数组中的时间,Total()方法用于查找iNum出现在数组中的总次数。
尽管随机数生成器工作正常,但我似乎找不到找到将随机数组(表示为“ aRanArray”)和iNum“推入”该方法以执行操作的方法。
这是我的Main.c程序:
#include <stdlib.h>
#include <stdio.h>
#include "RanNum.h"
int main()
{
//The arbitrary number to be looked for
int iNum = 27;
int iFirst = 0;
int iTotal = 0;
int aRanArray[1000];
//Generating the random aRanArray
for(int i = 0; i <= 1000; i++)
{
//Fills array
aRanArray[i] = rand() % 1000;
//Prints out numbers within array
printf("%d ", aRanArray[i]);
}
//Finding the first time iNum appears in aRanArray
iFirst = First(aRanArray, iNum);
//Finding the number of times iNum appears in aRanArray
iTotal = Total(aRanArray, iNum);
//Printing out the values
printf ("%d", iFirst);
printf ("%d", iTotal);
}
在此随机数组中查找iNum的第一个实例的我的方法:
#include <stdlib.h>
#include <stdio.h>
#include "RanNum.h"
//Finding the first time iNum Appears in the array
int First(aRanArray*, iNum)
{
for(int i = 0; i <= 1000; i++)
{
if(*aRanArray[i] == iNum)
{
return *aRanArray[i];
break;
}
else
{
return -1;
}
}
}
查找数组中iNum出现的总次数的方法:
#include <stdlib.h>
#include <stdio.h>
#include "RanNum.h"
//Finding the total number of times iNum
//appears in aRanArray
int Total(aRanArray*, iNum)
{
int iTotal = 0;
for(int i = 0; i <= 1000; i++)
{
if(*aRanArray[i] == iNum)
{
iTotal++;
}
}
return iTotal;
}
还有我的方法的RanNum.h文件:
#ifndef RANCOUNT
#define RANCOUNT
int First(int*, int);
int Total(int*, int);
#endif
我不断收到的错误消息是First()和Total()中aRanArray和iNum的unkonw类型名称。
最佳答案
int First(aRanArray*, iNum)
需要是
int First( int *aRanArray, int iNum )
匹配
RanNum.h
中的原型:int First(int*, int);
与
Total
函数相同。