用C语言编写一个函数,返回3个整数中最大的数。要求用指针作为参数得到最大数,在主函数中输入输出数据

用C语言编写一个函数,返回3个整数中最大的数。要求用指针作为参数得到最大数,在主函数中输入输出数据,第1张

#include<stdioh>void

maxfunction(int);void

main(){

int

max;

maxfunction(&max);

printf("三个数中最大值是%d",max);

fflush(stdin);

getchar();}void

maxfunction(int

i){

int

a,b,c,max;

printf("输入三个数?");

scanf_s("%d%d%d",&a,&b,&c);

max=a>ba:b;

max=max>cmax:c;

i=max;}如有疑问欢迎提问

正确代码:

#include<stdioh>

int max(int a,int b,int c);

int main()

{

int a = 0,b = 0,c = 0,x;

scanf("%d %d %d",&a,&b,&c);

x=max(a,b,c);

printf("max=%d\n",x);

return 0;

}

int max(int a,int b,int c)

{

int d=a;

if(b>d)d=b;

if(c>d)d=c:

return d;

}

运行截图:

分析

你的错误1现在main函数是不能用void修饰的,如果你用的是旧的编译器,是可以使用void的,但是建议你用int,在main函数里面最后加个return 0;就好。

错误2,函数声明应该放在main函数外头,这里放在main函数上面。

错误3,字符问题,你的a,b,c不知道用的什么格式,就是这件事困恼了我好久,建议你在纯英文输入环境输入。

错误4,max函数里头“if(c>d)d=c:”最后冒号要改成分号。

#include <stdioh>

void max(int a,int b,int c);

int main(void)

{

int i,j,k;

printf("  请输入3个整数(数与数之间用空格隔开):");

scanf("%d %d %d",&i,&j,&k);

max(i,j,k);

return 0;

}

void max(int a,int b,int c)

{

int temp;

if(a<b)

{

temp=b;

b=a;

a=temp;

}

if(a<c)

{

temp=c;

c=a;

a=temp;

}

if(b<c)

{

temp=c;

c=b;

b=temp;

}

printf("              输入的3个整数中最大值为:%d\n",a);

}

程序如下:

#include<stdioh>

#define MAXSIZE 10

main()

{

int a[MAXSIZE];

int k;

printf("please inter ten number:");

for(k=0;k<MAXSIZE;k++)

{

scanf("%d",&a[k]);

}

Fun(a);

for(k=0;k<MAXSIZE;k++)

printf("%d,",a[k]);

}

void Fun(int a[])

{

int i;

int temp;

int MaxNum=a[0];

int maxIndex = 0;

int minIndex = 0;

int MinNum=a[0];

for(i=0;i<10;i++)

{

if(a[i]>MaxNum)

{

MaxNum=a[i];

maxIndex = i;

}

else if(a[i]<MinNum)

{

MinNum=a[i];

minIndex = i;

}

}

temp = a[maxIndex];

a[maxIndex] = a[minIndex];

a[minIndex] = temp;

}

扩展资料:

指针定义格式

类型名 函数名(函数参数列表);

其中,后缀运算符括号“()”表示这是一个函数,其前缀运算符星号“”表示此函数为指针型函数,其函数值为指针,即它带回来的值的类型为指针,当调用这个函数后,将得到一个“指向返回值为的指针(地址),“类型名”表示函数返回的指针指向的类型”。

“(函数参数列表)”中的括号为函数调用运算符,在调用语句中,即使函数不带参数,其参数表的一对括号也不能省略。其示例如下:int pfun(int, int);由于“”的优先级低于“()”的优先级,因而pfun首先和后面的“()”结合,也就意味着,pfun是一个函数。即:int (pfun(int, int));

接着再和前面的“”结合,说明这个函数的返回值是一个指针。由于前面还有一个int,也就是说,pfun是一个返回值为整型指针的函数。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/11671265.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存