c语言数组指针函数参数 c语言中的指针数组
C语言,使用指针作为函数参数,写一求数组中最大值和最小指的函数
#include<stdio.h>
创新互联长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为西秀企业提供专业的网站制作、成都做网站,西秀网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
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、#includelt;文件名gt;
2、#include"文件名"
C语言指针数组做函数参数,与指针变量做函数参数
这就是传值 和传地址调用的区别。
要改变一个变量的值,到主调函数中也生效,那就必须穿地址(传指针), 否则不行。
不过 并不是指针类型就可以,而必须是要修改类型的指针。
比如 你要修改int 就要传int*
要修改 char * 就要传char **
然后 在函数中改变参数指向空间的值,也就是修改*p的值。
在你第一个 修改的是char* 传的是char** 这个是ok的
第二个
修改的是char 传的是char * 这个也是对的,但函数里面改变值的方法不对
改变的是u,v
而不说*u *v
如果改成
char temp;
temp=*u;
*u=*v;
*v=temp;
这样就可以了。
记住两点 要改变type型的值
一个是 传的需要是type*的参数p
另一个 函数中 改变的要是*p的值。
C语言使用数组指针参数传递
用指针传递一维数组。
#include stdio.h
#include math.h
float dist( float *p1, float *p2){
float d[3],ds;
int i;
for (i=0;i3;i++) d[i] = p2[i]-p1[i];
ds = sqrt( d[0]*d[0]+ d[1]*d[1]+d[2]*d[2]);
return ds;
};
void vec( float *p1, float *p2, float *p3){
int i;
for (i=0;i3;i++) p3[i]=p1[i]+p2[i];
}
int main()
{
float a[3],b[3],c[3];
int i;
printf("input x y z for point 1\n");
for (i=0;i3;i++)scanf("%f",a[i]);
printf("input x y z for point 2\n");
for (i=0;i3;i++)scanf("%f",b[i]);
printf("distence: %g\n", dist(a,b));
printf("\n");
vec(a,b,c);
for (i=0;i3;i++) printf("%g ",c[i]);
return 0;
}
c语言编程 指针数组作为函数参数
#includestdio.h
#includestring.h
int main()
{
void sort1(char **p1);
void print(char **p2);
static char *name[]={"zhang","wang","li","zhao","abe"};
sort1(name);
print(name);
return 0;
}
void sort1(char **p1)
{
int i,j;
char *p;
for(i=0;i4;i++)
for(j=i+1;j5;j++)
if(strcmp(p1[i],p1[j])=0)
{
p=p1[i];
p1[i]=p1[j];
p1[j]=p;
}
}
void print(char *p2[])
{
int i;
//getchar();
for(i=0;i5;i++)
printf("%s\n",*(p2+i));
}
分享名称:c语言数组指针函数参数 c语言中的指针数组
标题网址:http://scyanting.com/article/hhceop.html