前言:
如今兄弟们对“c语言缩”大致比较注意,大家都需要学习一些“c语言缩”的相关知识。那么小编在网上收集了一些有关“c语言缩””的相关知识,希望你们能喜欢,看官们快快来学习一下吧!①源程序
不要被字母迷惑,要按意群理解。
#include< stdio.h>
void fun(int*s,int a,int b)
{
int i,j,t;
i=a;j=b;
while(i<j)
{t=*(s+i);*(s+i)=*(s+j);*(s+j)=t;
/*交换语句,交换指针所指两个元素*/
i++;j--;}
/*收缩语句,交换两个元素之后,首尾向内收缩,继续交换内侧两个元素,直到首尾相遇*/
}
main( )
{int a[10]={1,2,3,4,5,6,7,8,9,0},i,*p=a;
fun(p,0,3);
/*以a[0]和a[3]为首尾,收缩交换*/
fun(p,4,9);
/*以a[4]和a[9]为首尾,收缩交换*/
fun(p,0,9);
/*以a[0]和a[9]为首尾,收缩交换*/
for(i=0;i<10;i++)printf("%d",*(a+i));}
~
②计算过程
原数组为
a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]
1,2,3,4,5,6,7,8,9,0
~
fun(p,0,3)之后的变化
1,2,3,4,5,6,7,8,9,0
4,2,3,1
4,3,2,1
4,2,3,1,5,6,7,8,9,0
~
fun(p,4,9)之后的变化
4,2,3,1,5,6,7,8,9,0
-,-,-,-,0,6,7,8,9,5
-,-,-,-,0,9,7,8,6,5
-,-,-,-,0,9,8,7,6,5
4,2,3,1,0,9,8,7,6,5
~
fun(p,0,9)之后的变化
4,2,3,1,0,9,8,7,6,5
5,2,3,1,0,9,8,7,6,4
5,6,3,1,0,9,8,7,2,4
5,6,7,1,0,9,8,3,2,4
5,6,7,8,0,9,1,3,2,4
5,6,7,8,9,0,1,3,2,4
标签: #c语言缩 #c语言数组元素交换 #数组元素交换位置 c语言