请编写一个函数void fun(int a[],int n, int *max,int *d)

作者&投稿:滑范 (若有异议请与网页底部的电邮联系)
用C语言编写函数 void fun(int m,int *k,int xx[])~

#include#include#define max 100void fun(int m , int *k, int xx[]){ int i,j,k=0; int num=0; for(i=2;isqrt(j)) xx[k++]=i; } //return k;//返回素数个数 } void main(){int m;int xx[max];int i;int k=0;for(i=0;i<max;i++) xx[i]=0;printf("
Input your num: ");]scanf("%d",&m);fun(m,k,xx);for(i=0;i<=k;i++){ if(i%5==0) printf("
"); printf("%4d ",xx[i]); }}

你写的fun函数没问题,问题看注释
#include
#include
#include
void fun(int a[], int n , int *max, int *d )
{
int i;
*max=a[0];
*d=0;
for(i=1;i<n;i++) //i从1开始循环
if(a[i]>*max)
{
*max=a[i];
*d=i;
}
}
int main()
{
int i, x[20], max , index, n = 10;
srand(time(0)) ; //设置随机种子
for (i=0;i < n;i++)
{
x[i] = rand()%50;
printf("%4d", x[i]) ;
}
printf("
");
fun( x, n , &max, &index);
printf("Max =%5d , Index =%4d
",max, index );
return 0;
}

输出结果:
31 42 32 8 3 39 11 23 11 20
Max = 42 , Index = 1
请按任意键继续. . .

#include<iostream>
using namespace std;
void fun(int a[],int n, int *max,int *d);
void main()
{
int x[10]={1,2,3,4,5,6,7,8,9,10},max=0,*p_max=&max,index=0,*p_index=&index;
fun(x,10,p_max,p_index);
cout<<"max="<<*p_max<<'\t'<<"index="<<*p_index<<endl;

}
void fun(int a[],int n, int *max,int *d)
{
int i;
*max=a[0];
for(i=0;i<n;i++)
{
if(*max<a[i])
{
*max=a[i];
*d=i;
}
}
}

#include<iostream>
using
namespace
std;
void
fun(int
a[],int
n,
int
*max,int
*d);
void
main()
{
int
x[10]={1,2,3,4,5,6,7,8,9,10},max=0,*p_max=&max,index=0,*p_index=&index;
fun(x,10,p_max,p_index);
cout<<"max="<<*p_max<<'\t'<<"index="<<*p_index<<endl;
}
void
fun(int
a[],int
n,
int
*max,int
*d)
{
int
i;
*max=a[0];
for(i=0;i<n;i++)
{
if(*max<a[i])
{
*max=a[i];
*d=i;
}
}
}