数组与指针 ·用数组名作为函数的参数 1如果是自定义函数中是使用的数组作 为函数的参数,则实参向函数中传递的 是数组的首地值,那意味着对形参的改 变就会影响到实参的改变 2如果自定义函数中是使用的普通变量 作为函数的参数,则实参向函数中传递 的仅仅是实参的值,那么意味着形参值 的改变将不会对实参的值造成影响
数组与指针 • 用数组名作为函数的参数 1.如果是自定义函数中是使用的数组作 为函数的参数,则实参向函数中传递的 是数组的首地值,那意味着对形参的改 变就会影响到实参的改变 2.如果自定义函数中是使用的普通变量 作为函数的参数,则实参向函数中传递 的仅仅是实参的值,那么意味着形参值 的改变将不会对实参的值造成影响
数组与指针(程序一) #include <stdio. h> ●# include< stdlib . h> ●# define n10 void swaparr(int array l [l, int number) e void swapval (int x, int y) void input(int array l [, int number) e void input(int array l[, int number int*p; p=array l printf("please input %d numbersIn" N)
数组与指针(程序一) #include <stdio.h> #include <stdlib.h> #define N 10 void swaparr(int array1[],int number); void swapval(int x,int y); void input(int array1[],int number); void input(int array1[],int number) { int *p; p=array1; printf("please input %d numbers\n",N);
数组与指针(程序一) for( p<array 1+number p++) scanf("%od"p) void swaparr(int array l[l, int number) Int 1, temp if(number%02)==0) for(i=0; i<=(number-2)/2; 1++)
数组与指针(程序一) for(;p<array1+number;p++) { scanf("%d",p); } } void swaparr(int array1[],int number) { int i,temp; if((number%2)==0) { for(i=0;i<=(number-2)/2;i++)
数组与指针(程序一) temp=array arrayli=array lnumber-1-1 array lnumber-1-ilFtemp f(number%2)=0) for(i=0; i<(number-1)/2; 1++) temp=array l1 array[i=array [number-1-1
数组与指针(程序一) { temp=array1[i]; array1[i]=array1[number-1-i]; array1[number-1-i]=temp; } } if((number%2)!=0) { for(i=0;i<(number-1)/2;i++) { temp=array1[i]; array1[i]=array1[number-1-i];
数组与指针(程序一) array[N-1-i]=temp 1)1 e void swapval(int x,int y) Int temp temp=X X-y y=temp
数组与指针(程序一) array1[N-1-i]=temp; } } } void swapval(int x,int y) { int temp; temp=x; x=y; y=temp; }