怎样采用指针逆置一维数组,用函数实现
答案:3 悬赏:70 手机版
解决时间 2021-01-19 02:33
- 提问者网友:夢醒日落
- 2021-01-18 11:20
怎样采用指针逆置一维数组,用函数实现
最佳答案
- 五星知识达人网友:掌灯师
- 2021-01-18 12:26
void rev(int *p,int n) //调用时形参为整型数组名,元素个数
{int *q,t;
for(q=p+n-1;p>q;)
{t=*p;*(p++)=*q;*(q--)=t;}
}
{int *q,t;
for(q=p+n-1;p>q;)
{t=*p;*(p++)=*q;*(q--)=t;}
}
全部回答
- 1楼网友:执傲
- 2021-01-18 13:08
这里是一个用指针逆置一个11个元素的字符数组(不是字符串),你也可以把char全都用int替换变成一个n个元素的整数数组,这个程序在vc6通过调试了
#include
void reset(char * array,int size)
{
int i;
char ch;
for(i=0;i<=size/2;i++)
{
ch=*(array+i);
*(array+i)=*(array+size-1-i);
*(array+size-1-i)=ch;
}
}
void main()
{
int i;
char array[11]={'a','b','c','d','e','f','g','h','i','j','k'};
reset(array,11);
for(i=0;i<11;i++)
printf("%c",*(array+i));
printf("\n");
}
#include
void reset(char * array,int size)
{
int i;
char ch;
for(i=0;i<=size/2;i++)
{
ch=*(array+i);
*(array+i)=*(array+size-1-i);
*(array+size-1-i)=ch;
}
}
void main()
{
int i;
char array[11]={'a','b','c','d','e','f','g','h','i','j','k'};
reset(array,11);
for(i=0;i<11;i++)
printf("%c",*(array+i));
printf("\n");
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯