1.交换两个数据(多个数据排序题)
int *p1=&a;
int *p2=&b;
void swap(int*p1,int*p2)
{
int temp=*p1;
*p1=*p2;
*p2=temp;
}
2.数组中数据按照相反顺序存放
void inv1(int a[],int n)
{
int temp,i;
int m = (n-1)/2;
for(i=0;i<=m;i++)
{
temp = a[i];/*保存数据后,马上就可以把它替换掉*/
a[i] = a[n-i-1];
a[n-i-1] = temp;
}
}
int *p= a;
inv1(p,6); /* inv1(a,6); */
3.选择排序?????????
1.字符串复制
char a[]="I am a boy.";
char b[20];/*字符数组没有初始化,必须写明长度*/
int i;
for(i=0;*(a+i)!='\0';i++)
*(b+i)=*(a+i);
*(b+i)='\0';
/*字符数组名可以输出一个字符串,
针对数值型数据,无法用数组名输出全部元素*/
printf("string a is :%s\n",a);
printf("string b is :%s\n",b);
printf("string b is :");
for(i=0;*(b+i)!='\0';i++)
printf("%c",b[i]);
2.指向字符串指针的数值
char* a = "I love China!";
a = a+7;
printf("%s\n",a);
char* a = "I love China!";
for(i=0;a[i]!='\0';i++)
{
printf("%c",a[i]);
}