该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
函数+指针:冒泡算法
#include
#include
void test1(int a[])
{
int i,j,p,min,t;
int *x,*y,*z;
z=&p;
for(i=0;i<5;i++)
{
x=&i;
min=a[*x];*z=*x;
for(j=i+1;j<5;j++)
{
y=&j;
if(min>a[*y])
{
min=a[*y];*z=*y;
}
}
t=a[*x];a[*x]=a[*z];a[*z]=t;
}
}
main()
{
int a[]={4,3,7,6,1};
int i;
int *q,*w,*e;
q=a;
printf("指针+函数:冒泡算法\n");
for(i=0;i<5;i++)
{
w=&a[i];
printf("%d ",*w);
}
printf("\n");
test1(q);
for(i=0;i<5;i++)
{
e=&a[i];
printf("%d ",*e);
}
getch();
return(0);
} 函数+指针:水仙花数
#include
#include
int test2(int a)
{
int i,j,k,h;
int *q,*w,*e,*r;
q=&i;w=&j;e=&k;r=&h;
*q=a/100; //分离百位
*w=a/10%10; //分离十位
*e=a%10; //分离个位
*r=i*i*i+j*j*j+k*k*k;
return(*r);
}
main()
{
int n,h;
int *q,*w;
w=&h;
printf("函数+指针:水仙花数\n");
for(n=100;n<1000;n++)
{
q=&n;
*w=test2(*q);
if(*q==*w)
{
printf("%d ",*q);
}
}
printf("\n");
getch();
return(0);
}
自问自答 悲剧