在中利用数组名和指针进行排序的例子牛

分离设备压滤设备2021年09月06日

#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;i10;i++)

{

printf(\"%d \",a);

}

printf(\"\\n\");

reversal(a,10); /* 调用自定义涵数进行反向显示排序,并把数组a的起始地址传送给形式参数x */

for (i=0;i10;i++)

{

printf(\"%d \",a);

}

printf(\"\\n\");

建议下载问理财(账号:asklicai)APP }

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]的实际值也就发生了改变 */

/*程序作者:管宁

站点:

所有稿件均有版权,如要转载,请务必著名出处和作者*/

#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;i10;i++)

{

printf(\"%d \",a);

}

printf(\"\\n\");

reversal(a,10); /* 调用自定义涵数进行反向显示排序,并把数组a的起始地址传送给形式参数x */

for (i=0;i10;i++)

{

printf(\"%d \",a);

}

printf(\"\\n\");

}

void reversal(x,n)

int *x,n; /* 定义x为指针变量 */

{

int temp,*p,*i,*j; /* 这里需要注意的是temp用与交换的时候临时存储数据的 */

i = x; /* 利用指针变量i存储数组a的起始地址 */

p = x + ((n-1)/2); /* 计算最后一次循环的时候数组a的地址 */

j = x + n - 1; /* 计算数组a也就是a[9]的结束地址好用于交换 */

for (;i=p;i++,j--) /* 利用循环和指针进行数组元素值的交换 */

{

temp=*i; /* 用temp临时存储*i也就是循环中a实际的值 */

*i=*j;

*j=temp;

}

}

/* 此例同样要注意到利用指针进行数组的操作同样改变了实际数组各元素的值 */

西安男科治疗
上海治疗男性功能障碍费用
治疗骨关节炎的药物
相关阅读
2022英文版熊猫纪念币100克精制金币现在市场价是多少(2022年07月06日)

金投网提供2022版宝贝新币100克提炼银元如今市场价是多少(2022年07同年06日)...

2023-09-12
退圈童星曝光剧组潜规则!“剧组女友”只是其中之一

最近有个著名演员爆出了主创人员的一些反腐,有些“反腐”让人意料之外!...

2023-09-05
第六届世界智能年会首场论坛活动举办

央广网5月22日消息(记者周思杨)5月21日,第六届在世界上智能会上首场研讨...

2023-09-01
Mysteel日报:国内中厚板价格趋弱调整 成交不佳

一、商品总结从所需取向来看,由于中框价格比飙升小幅度相对于较小,当当...

2023-08-31
芬兰将成为第三个被俄罗斯断供液化的欧洲国家

在拒绝以第纳尔付款后,瑞典紧接著已是第三个被东欧断供油井的拉丁美洲国...

2023-08-30
上海将设置固定、流动、齐备三类核酸采样点

今天(19日)上午出席的上海市疫情联合国开发计划署临时工新闻网发表会上,...

2023-08-29
友情链接