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

原创 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]的实际值也就发生了改变 */
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

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

在《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
  • 1468

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

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

作为函数参数的数组名

当一个数组名作为参数传递给一个函数时会发生什么情况呢? 已知:数组名的值 == 指向数组第一个元素的指针。 此时,传递给函数的,是一份该指针的copy(这里注意,后面讲解)。函数如果执行了下标引用,实...

数组名作为函数参数

用数组名做函数参数与用数组元素作实参有几点不同:(1)用数组元素作实参时,只要数组类型和函数的形参变量的类型一致,那么作为下标变量的数组元素的类型也和函数形参变量的类型是一致的。因此,并不要求函数的形...
  • aci353
  • aci353
  • 2011-01-11 12:01
  • 13800

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

http://c.biancheng.net/cpp/html/61.html 1) 用数组元素作实参时,只要数组类型和函数的形参变量的类型一致,那么作为下标变量的数组元素的类型也和函数形参变量的类型...

数组名作为函数参数

 数组元素作函数实参数组元素就是下标变量,它与普通变量并无区别。 因此它作为函数实参使用与普通变量是完全相同的,在发生函数调用时,把作为实参的数组元素的值传送给形参,实现单向的值传送。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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