c程序设计第四版谭浩强
用指向指针的指针的方法对n个整数排序并输出。要求将排序单独写成一个函数。n个整数在主函数中输入,最后在主函数中输出。
c程序设计(第四版)学习辅导 谭浩强 编著
以下是此题的【c源代码】,需要【c++源代码】请点击进入
#include<stdio.h>
int main()
{void sort(int **p,int n);
int i,n,data[20],**p,*pstr[20];
printf("input n:\n");
scanf("%d",&n);
for (i=0;i<n;i++)
pstr[i]=&data[i]; //将第i个整数的地址赋予指针数组 pstr 的第i个元素
printf("input %d integer numbers:",n);
for (i=0;i<n;i++)
scanf("%d",pstr[i]);
p=pstr;
sort(p,n);
printf("Now,the sequence is:\n");
for (i=0;i<n;i++)
printf("%d ",*pstr[i]);
printf("\n");
return 0;
}
void sort(int **p,int n)
{int i,j,*temp;
for (i=0;i<n-1;i++)
{for (j=i+1;j<n;j++)
{if (**(p+i)>**(p+j)) //比较后交换整数地址
{temp=*(p+i);
*(p+i)=*(p+j);
*(p+j)=temp;
}
}
}
}
本文链接:http://www.wb98.com/c/post/tanhaoqiang_8.21.html
本站文章搜索: