c语言中数组逆置函数 编程实现对数组的逆置

c++数组逆置编程

#include stdio.h

成都创新互联公司是一家集网站建设,什邡企业网站建设,什邡品牌网站建设,网站定制,什邡网站建设报价,网络营销,网络优化,什邡网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

#define ARR_LEN 20

static int ReverseArray(int arr[], int n);

main()

{

int arr[ARR_LEN];

int i,n;

printf("input array data ...\n");

n = 0;

while (n ARR_LEN) {

scanf("%d",arr[n]);

n++;

if(getchar() == '\n') break;

}

printf("reversing ... \n");

ReverseArray(arr,n);

for (i=0;in;i++) {

printf("%d ",arr[i]);

}

printf("\n");

}

static int ReverseArray(int arr[], int n)

{

int temp;

int i;

for (i=0;in/2;i++) {

temp = arr[i];

arr[i] = arr[n-1-i];

arr[n-1-i] = temp;

}

return 0;

}

数组个数不确定到底要怎么编程啊: 用malloc函数动态申请数组空间,要实现,我就补上。

/*

* C program on turbo c 2.0

* ------------------------

*/

#include stdio.h

#include malloc.h

#define ARR_LEN 2

static int ReverseArray(char arr[], int n);

main()

{

char *arr;

int arr_size;

int arr_len;

int i;

char ch;

arr = (char*)malloc(ARR_LEN *sizeof(char));

if (arr == NULL) exit(-1);

arr_size = ARR_LEN;

arr_len = 0;

while ((ch=getchar()) != '\n') {/* 输入字符数据(包括非回车符的所以字符,当然包括空格符了),以回车结束 */

if (arr_len = arr_size - 1 ) {

arr = (char*)realloc(arr,(arr_size + ARR_LEN)*sizeof(char));

if (arr == NULL) exit(-1);

arr_size += ARR_LEN;

}

arr[arr_len++] = ch;

}

arr[arr_len] = '\0';

printf("Reverse order...\n"); /* 逆序输出 */

ReverseArray(arr,arr_len);

for (i=0;iarr_len;i++) {

printf("%c",arr[i]);

}

printf("\n");

free(arr);

getch();

}

static int ReverseArray(char arr[], int n)

{

char temp;

int i;

for (i=0;in/2;i++) {

temp = arr[i];

arr[i] = arr[n-1-i];

arr[n-1-i] = temp;

}

return 0;

}

c语言,数组逆置

#include stdio.h

void revstr(char *s)

{

char *p =s,c;

while (*p) p++;

p--;

if(sp)

{

c = *s;

*s = *p;

*p='\0';    //递归之前,p的位置要置上结束符,否则再次进入函数时,p会一直找到原来的字符串结尾

revstr(s+1);

*p=c;    //这里才把正确的字符填进去

}

}

int main()

{

char s[100];

gets(s);

revstr(s);

printf("%s",s);

}

楼主的代码有些乱,我改了改,你看看。

C语言编写程序 将一个一维数组进行逆置,如原来是1,2,3.后为3,2,1

将原本数组,头尾对称位置互换即可。

函数代码如下:

void reverse(int *a, int l)//将a上长度为l的数组逆置

{

int i,t;

for(i = 0; i =l/2; i ++)

{

t = a[i];

a[i] = a[l-i-1];

a[l-i-1] = t;

}

}

C语言编程使用指针完成数组a的逆置,使用两种方法

将原本数组,头尾对称位置互换即可。

函数代码如下:

void reverse(int *a, int l)//将a上长度为l的数组逆置

{

int i,t;

for(i = 0; i =l/2; i ++)

{

t = a[i];

a[i] = a[l-i-1];

a[l-i-1] = t;

}

}

用C语言实现数组的逆置

#include stdio.h

int Input(int data[])

{

int i,n;

printf("输入数据个数:");

scanf("%d",n);

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

scanf("%d",data[i]);

return n;

}

void Output(int data[],int n)

{

int i;

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

printf("%d ",data[i]);

printf("\n");

}

void Reverse(int data[],int n)

{

int i,j,t;

for(i=0,j=n-1;ij;i++,j--)

{

t=data[i];

data[i]=data[j];

data[j]=t;

}

}

int main(int argc, char *argv[])

{

int data[100],n;

int i,j;

n=Input(data);

Output(data,n);

Reverse(data,n);

Output(data,n);

return 0;

}

/*

10

2 3 4 5 6 7 8 9 10 11

*/

c语言, 编写一个函数,完成一维数组的逆置。主函数中输入一个一维数组,然后调用该自定义函数进行原地逆

#include "stdio.h"

void arrrev(int *p,int n){

int *q,t;

for(q=p+n-1;pq;p++,q--)

t=*p,*p=*q,*q=t;

}

int main(int argc,char *argv[]){

int a[100],n,i;

printf("Please enter a set of integers(other end)...\n");

for(n=0;n100;n++)

if(scanf("%d",a+n)!=1)

break;

while(getchar()!='\n');

arrrev(a,n);

for(i=0;in;printf("%d ",a[i++]));

printf("\n");

return 0;

}

运行样例:


分享文章:c语言中数组逆置函数 编程实现对数组的逆置
当前地址:http://hbruida.cn/article/doceecp.html