阅读背景:

【C语言】将数组,字符串,二进制数,数字逆序输出

来源:互联网 
#include <stdio.h>
#include <string.h>


void Reverse(int a[10])     //数组的逆序
{
	int i;
	int temp;
	for(i = 0;i < 10/2;i++)    //交换次数为数组数的一半!
	{
		 temp = a[i];
		 a[i] = a[10-i-1];
		 a[10-i-1] = temp;
	}
	for(i = 0;i < 10;i++)
	{
		printf("%d ",a[i]);
	}
	printf("\n");
}

void Reverse2(char *des)     //字符串的逆序
{
	int i;
    char temp;
	char *p = des + strlen(des) - 1;
	while(des < p)
	{
		temp = *p;
		*p-- = *des;
		*des++ = temp;
	}
}

unsigned int Reverse3_bit(unsigned int n)   //二进制数的逆序
{
	unsigned int m = 0;
	//while(n != 0)
	for(int i=0;i<32;i++)
	{
		m = (m<<1)|(n&1);
		n >>= 1;
	}
	return m;
}

void Reverse4(int n)      //数字的逆序
{
	while(n != 0)
	{
		printf("%d ",n%10);
		n /= 10;
	}
	printf("\n");
}


int main()
{
	int a[10] = {0,8,4,6,5,1,2,3,7,9};
	Reverse(a);

	char des[] = "abc";
	Reverse2(des);
	printf("% s\n",des);
	 
	                                 //  8   9
	printf("%x\n",Reverse3_bit(25));  //0001 1001 

	Reverse4(123);

	return 0;
}#include <stdio.h>
#include <string.h>


void R



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: