#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