C语言编程:从键盘任意输入三个数,编写求其最大值、最小值的函数,用指针作函数参数实现。 20

 我来答
晴说科技
2019-07-15 · 科技数码资讯分析,解读不一样视角!
晴说科技
采纳数:7 获赞数:8913

向TA提问 私信TA
展开全部

程序如下:
#include<stdio.h>
#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是一个返回值为整型指针的函数。

刺友互
高粉答主

2019-07-11 · 每个回答都超有意思的
知道答主
回答量:3979
采纳率:100%
帮助的人:74万
展开全部

1、首先定义一个Max最大值变量。

2、然后把首地址的值赋予最大值。

3、接下来就可以开始便利查找。

4、如果有个数大于最大值便替换。

5、然后我们把最大值输出。

6、运行后, 哦我们可以看到屏幕上显示最大值。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风若远去何人留
2017-08-21 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450134
专业C/C++软件开发

向TA提问 私信TA
展开全部
int max(int *a, int *b, int *c)
{
    int r;
    r = *a>*b?*a:*b;
    if(r<*c) r=*c;
    return r;
}
int min(int *a, int *b, int *c)
{
    int r;
    r = *a<*b?*a:*b;
    if(r>*c) r=*c;
    return r;
}
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    printf("%d %d\n", max(&a,&b,&c), min(&a,&b,&c));
    return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-11-06
展开全部
(比较方法仅供参考)
if(a>=b)
{
min=b;
max=a;
if(c>=a)
{
max=c;
}
if(c<=b)
{
min=c;
}
}
Console.WriteLine("min={0},max={1}",min,max);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-11-06
展开全部
最易懂的算法
#include<stdio.h>
void main()
{
float max(float a,float b,float c);
float min(float a,float b,float c);
float a,b,c;
float Max,Min;
printf("a=");
scanf("%f",&a);
printf("b=");
scanf("%f",&b);
printf("c=");
scanf("%f",&c);
Max=max(a,b,c);
Min=min(a,b,c);
printf("The biggest is %f\n",Max);
printf("The smallest is %f\n",Min);
}

float max(float a,float b,float c)
{
float max;
if(a>b&&a>c)max=a;
else if(b>a&&b>c)max=b;
else max=c;
return(max);
}

float min(float a,float b,float c)
{
float min;
if(a<b&&a<c)min=a;
else if(b>a&&b<c)min=b;
else min=c;
return(min);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式