利用数组名作为函数参数传递排序和用指针进行排序

原创 2006年05月22日 18:26:00
#include <stdio.h>

void main(void)
{

void reversal();
static int a[10] = {0,1,2,3,4,5,6,7,8,9}; /* 建立一个数组并初始化 */
int i;
for (i=0;i<10;i++)
{
printf("%d ",a);
}
printf("/n");
reversal(a,10); /* 调用自定义涵数进行反向显示排序,并把数组a的起始地址传送给形式参数x */

for (i=0;i<10;i++)
{
printf("%d ",a);
}
printf("/n");

}

void reversal(x,n)
int x[],n; /* 定义形式参数 */
{
int m=(n-1)/2; /* 计算10个数需要循环几次,因为是两两调换第一个数组是x[0]故应该是int(9/2) */
int temp,i,j; /* 建立零时变量temp用于每次交换处理时零时存储x的值 */
for (i=0;i<=m;i++)
{
j=n-1-i; /* 反向计算出被调换的数组下标,例如x[0] 对应的x[n-1-i]就是x[9] */
temp=x;
x=x[j];
x[j]=temp;
}
}

/* 次题需要注意的是:这里由于a[10]和x[10]是共同享内存地址位的所以进行交换后a[10]的实际值也就发生了改变 */

数组名,指针变量作函数参数的四种情况

函数的参数可以是变量,也可以是数组。当整个数组作为函数的参数时,实际上是数组的地址作为参数。由于实参可以是表达式,数组元素也可以是表达式的一部分,因此,数组元素可以作为函数的实参,这时对应的形参应该是...

数组名作为函数参数时,退化为指针

数组名作为函数参数时,退化为指针 Func ( char str[100] )函数中数组名作为函数形参时,在函数体内,数组名失去了本身的内涵,仅仅只是一个指针;在失去其内涵的...

如何理解数组作为函数参数时,数组名就是指针?

在《Expert C Programming》这本书中,第202页有这样一句话:在函数参数的声明中,数组名被编译器当着指向该数组第一个元素的指针。通过实例测试,这句话的意思就是:在声明这个参数的整个函...

如何理解数组作为函数参数时,数组名就是指针?

原文:http://blog.csdn.net/microsues/article/details/6112898 在《Expert C Programming》这本书中,第202页有这样一句话...

C语言之数组专题:数组指针、指针数组、数组做函数参数退化、数组名、数组类型

转自:http://blog.csdn.net/wu5215080/article/details/38989381  1、数组初始化: 数组元素的个...

C语言之数组专题:数组指针、指针数组、数组做函数参数退化、数组名、数组类型

 数组专题 1、数组初始化: 数组元素的个数可以显示或隐式指定 int main() { int a[10] = {1,2};//其...

二维指针、二维数组、指向数组的指针 函数参数传递

int arr[3][3] 的本质是指向数组的指针即 int  (*p)[3],所以二维数组名可以传递给foo( int (*arr)[3]) ,或者foo(int [][3]),但是不能传递给foo...
  • kimuwu
  • kimuwu
  • 2014年12月27日 22:44
  • 1768

用数组名做函数参数(转)

可以用数组名作函数参数,此时实参与形参都应用数组名(或指针变量)。 例2:有一个一维数组score,内放10个学生成绩,求平均成绩。 float average(float array[10]){...
  • wwdlk
  • wwdlk
  • 2011年04月14日 12:54
  • 9256

C语言数组名作为函数参数

http://c.biancheng.net/cpp/html/61.html 1) 用数组元素作实参时,只要数组类型和函数的形参变量的类型一致,那么作为下标变量的数组元素的类型也和函数形参变量的类型...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用数组名作为函数参数传递排序和用指针进行排序
举报原因:
原因补充:

(最多只允许输入30个字)