首页 > 电脑 > 使用指针作为函数参数,写一个求数组中最大值和最小值的函数

使用指针作为函数参数,写一个求数组中最大值和最小值的函数

电脑 2023-06-13

C语言,使用指针作为函数参数,写一求数组中最大值和最小指的函数

#include<stdio.h>

voidhanshu(int*arry,intsize,int*m,int*n)

*m=arry[0];

*n=arry[1];

for(inti=0;i<size;i++)

if(arry[i]>*m)

*m=arry[i];

if(arry[i]<*n)

*n=arry[i];

intmain(intargc,constchar*argv[]){。

inta[]={1,5,6,2,3,8,9,7,4,5};//定义一个十个数据的数组

intmax;//存放最大值

intmin;//存放最小值

hanshu(a,10,&max,&min);//函数传送数组,并将最大值,最小值的地址传送

printf("Themaxnumberis%d\n",max);

printf("Theminnumberis%d\n",min);

return0;

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include<文件名>

2、#include"文件名"

利用指针的方法,求数组中的最大数和最小数

代码如下:

#include "stdafx.h"

#include "stdio.h"

int u,v;

find_u_v (int *p,int n)

{

int *q;

u=v=*p;

for(q=p;q

{if(u<*q) u=*q;

else if(v>*q) v=*q;

}

}

int main(int argc, char* argv[])

{ int i,num[10];

printf("intput 10 numbers\n");

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

scanf("%d",&num[i]);

find_u_v(num,10);

printf("\n\n u=%d;v=%d\n",u,v);

}


扩展资料

指针是编程语言中的一个对象,利用地址,它的值直接指向存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。

意思是通过它能找到以它为地址的内存单元。在高级语言中,指针有效地取代了在低级语言,如汇编语言与机器码,直接使用通用暂存器的地方,但它可能只适用于合法地址之中。指针参考了存储器中某个地址,通过被称为反参考指针的动作,可以取出在那个地址中存储的值。

作个比喻,假设将电脑存储器当成一本书,一张内容记录了某个页码加上行号的便利贴,可以被当成是一个指向特定页面的指针;根据便利粘贴面的页码与行号,翻到那个页面,把那个页面的那一行文字读出来,就相当于是对这个指针进行反参考的动作。

用指针法通过一个函数求出数组元素中的最大值与最小值

#include
int*p,*q;
voidfun(inta[],intn){
p=q=a;
for(inti=0;iif(*pif(*q>a[i])q=&a[i];
}
}
voidmain(){
inti,n,a[1000];
scanf("%d",&n);
for(i=0;iscanf("%d",&a[i]);
fun(a,n);
printf("最大值:%d\n最小值:%d",*p,*q);
}

//运行示例:

应用指针编写一个函数,求整形数组的最大值、最小值。

比如你有一个 函数指针 int (*pvar)(int a,int b) 这个函数指针就是指向参数为(int a,int b)的函数 如果你想调用的话如下: (*pvar)(100,100)第二个括号填 实参 ! 卞苹焕儋泞狂旋余都笈题禹匐昊学杜冉仟峤虎隰

用指针法编写求 a 数组 n 个元素中的数值最大和最小的函数。 并求一维数组 10 个数中最大值和最小值。

1、#define N 10

#include

void main()

{

int *num;

int min, max;

int i;

printf("请输入N个数:\n");

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

scanf("%d", num + i);

min=*num;max=*num;

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

{if(min>*num+i)

2、#include

#define N 10 //定义符号常bai量

//求最大值du函数

int max_func(int a[],int n)

{

int i,max;

for(max=a[0],i=1;i

if(max

max=a[i];

return max;

}

//求最小值函数

int min_func(int a[],int n)

{

int i,min;

for(min=a[0],i=1;i

if(min>a[i]) //如果当前最小值>当前数组元素,则将该元素赋值给min

min=a[i];

return min;

}

//求平均值函数

float ave_func(int a[],int n)

{

for(i=sum=0;i

sum+=a[i]; //累加数组元素

ave=1.0*sum/n; //求平均值

return ave;

}

int main()

{

int arr[N],i;

int max,min;

float ave;

for(i=0;i

scanf("%d",&arr[i]);

max=max_func(arr,N); //调用max_func()函数

min=min_func(arr,N); //调用min_func()函数

ave=ave_func(arr,N); //调用ave_func()函数

printf("最大值=%d\n最小值=%d\n平均值=%.2f\n",max,min,ave); //输出结果

扩展资料:

指针相对于一个内存单元来说,指的是单元的地址,该单元的内容里面存放的是数据。在C语言中,允许用指针变量来存放指针,因此,一个指针变量的值就是某个内存单元的地址或称为某内存单元的指针。

指针变量是存放一个变量地址的变量,不同于其他类型变量,它是专门用来存放内存地址的,也称为地址变量。定义指针变量的一般形式为:类型说明符*变量名。

类型说明符表示指针变量所指向变量的数据类型;*表示这是一个指针变量;变量名表示定义的指针变量名,其值是一个地址,例如:char*p1;表示p1是一个指针变量,它的值是某个字符变量的地址。

参考资料来源:百度百科-指针


标签:编程 C(编程语言) 编程语言 CC++ 信息技术

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18