C数组逆序
一、標(biāo)準(zhǔn)交換模式
/****
*標(biāo)準(zhǔn)交換模式
*實(shí)現(xiàn)數(shù)組的逆序,原理就是數(shù)組的首尾元素進(jìn)行交換
***/
#define N 5;
int main(){
int array[N] = {15,20,25,30,35}
int temp; //聲明臨時(shí)變量
int i;
for(i = 0;i<N/2;i++){
//第i個(gè)值和第N-i-1個(gè)值相交換
temp = array[i];
array[i] = array[N - i - 1];
array[N - i - 1] = temp;
}
printf("逆序:\n");
for(i = 0;i < N;i++){
printf("%d\t",*(array + i));
}
}
?
二、指針交換模式
/****
*指針交換模式
*實(shí)現(xiàn)數(shù)組的逆序,原理就是數(shù)組的首尾元素進(jìn)行交換
***/
#define N 5;
int main(){
int array[N] = {15,20,25,30,35}
int temp; //聲明臨時(shí)變量
int i;
int *ptr_array_start = array;
int *ptr_array_end = array + N - 1;
while(ptr_array_start>=ptr_array_end){
//首尾交換,指針分別進(jìn)行更新
temp =?*ptr_array_start;
*ptr_array_start?=?*ptr_array_end;
*ptr_array_end?= temp;
//首元素指針要向后移動(dòng)
ptr_array_start++;
//末元素指針要向前移動(dòng)
ptr_array_end--;
}
printf("逆序:\n");
for(i = 0;i < N;i++){
printf("%d\t",*(array + i));
}
}
?
轉(zhuǎn)載于:https://www.cnblogs.com/chenweichu/p/6445291.html
總結(jié)
- 上一篇: [Codevs] 1082 线段树练习3
- 下一篇: scala 基础十一 scala 中