十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在C语言中指针函数和函数指针是两个不同的概念,不能混淆。
在延川等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站制作、成都做网站 网站设计制作定制网站建设,公司网站建设,企业网站建设,品牌网站制作,网络营销推广,外贸网站制作,延川网站建设费用合理。
指针函数本质上是函数,是一个返回类型为指针的函数,如:
int* max(int *array,int n)
{
//找最大值的地址
return 最大值的地址;
}
max就是一个指针函数。
而函数指针本质上是指针,是指向函数的指针,如:
int (*funp)(int a,int b);
funp就是一个函数指针,可以用它指向一个返回类型为int、有两个int类型的参数的函数。
#includestdio.h
1.申明数组
a[5],下标是应该从0~4的;
2.进行排序时需要用2个变量进行冒泡排序;
3.scanf时%d后面不需要空格。
程序修改如下:
void
pa(int
*a,int
n)
{
int
i,j;
int
t;
for(i=0;in;i++)
for(j=0;jn-i-1;j++)
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=0;i5;i++)
scanf("%d",a[i]);
printf("未排序前的数列为:\n");
for(i=0;i5;i++)
printf("%d
",a[i]);
pa(a,5);
printf("排序后的数列为:\n");
for(i=0;i5;i++)
printf("%d
",a[i]);
}
#include stdio.h
#include stdlib.h
int ave(int n,int *a);
int main()
{
int i,n,*a;
printf("please input number n:");
scanf("%d",n);
a=(int *) malloc(n*sizeof(int));
printf("please input %d numbers:\n",n);
for(i=0;in;i++)
scanf("%d",a+i);
printf("The average number is %d\n",ave(n,a));
}
int ave(int n,int *a)
{
int i,sum=0;
for(i=0;in;i++)
sum+=*(a+i);
return sum/n;
}