c语言精选试题----指针(进阶)
Posted 敲代码的xiaolang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言精选试题----指针(进阶)相关的知识,希望对你有一定的参考价值。
希望c语言的入门者们闲暇之余,可以浏览思考,有什么问题欢迎留言或者私信。
指针(强化版)
eg.利用指针指向指针的方法,对n个整数进行排序,要求由小到大输出,要求调用函数。(指针指向指针)
#include<stdio.h>
int main()
{
void sort(int **p,int n);
int i,n,shuzu[20],**p,*p_shuzu[20];
printf("输入要排序的个数:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
p_shuzu[i]=&shuzu[i]; //将第i个整数的地址赋予指针数组P_shuzu的第i个元素
}
printf("输入这%d个数:",n);
for(i=0;i<n;i++)
{
scanf("%d",p_shuzu[i]);//输入要排序的数
}
p=p_shuzu;
sort(p,n);
printf("输出结果:\\n");
for(i=0;i<n;i++)
{
printf("%d ",*p_shuzu[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;
}
}
}
}
运行结果
有问题私聊博主或者在下面留言,如果有更好的解法也请留言,欢迎大家讨论,共同进步,一起学习。
“c语言是最美的语言,c语言让我遇见了这个世界的美好。”
以上是关于c语言精选试题----指针(进阶)的主要内容,如果未能解决你的问题,请参考以下文章
指针的这些知识你知道吗?C语言超硬核指针进阶版3w+字详解+指针笔试题画图+文字详细讲解