指针函数本质上是函数,是一个返回类型为指针的函数,如:
int* max(int *array,int n)
{
//找最大值的地址
return 最大值的地址
}
max就是一个指针函数。
而函数指针本质上是指针,是指向函数的指针,如:
int (*funp)(int a,int b)
funp就是一个函数指针,可以用它指向一个返回类型为int、有两个int类型的参数的函数。
#include<stdio.h>1.申明数组
a[5],下标是应该从0~4的
2.进行排序时需要用2个变量进行冒泡排序
3.scanf时%d后面不需要空格。
程序修改如下:
void
pa(int
*a,int
n)
{
int
i,j
int
t
for(i=0i<ni++)
for(j=0j<n-i-1j++)
if(*(a+j)>*(a+j+1))
{
t=*(a+j)
*(a+j)=*(a+j+1)
*(a+j+1)
=
t
}
}
void
main()
{
int
a[5],i
for(i=0i<5i++)
scanf("%d",&a[i])
printf("未排序前的数列为:\n")
for(i=0i<5i++)
printf("%d
",a[i])
pa(a,5)
printf("排序后的数列为:\n")
for(i=0i<5i++)
printf("%d
",a[i])
}