关于C语言指针的一道入门编程题

2025-03-24 03:44:26
推荐回答(2个)
回答1:

#include
#include

void input( int *array )
{
printf("输入10个数:\n");
for( int i = 0;i<10;i++ )
{
scanf("%d",&array[i]);
}
printf("\n输出10个数(?理前):\n");
for( int j = 0;j<10;j++ )
{
printf("%d ",array[j]);
}
}

void getResult( int *array )
{
int *p = array,*q = array;
int max=array[0],min=array[0],temp=0;

// Find Max
for( int i = 0;i<10;i++ )
{
if ( *p > max )
{
q = p;
max = *p;
}
p++;
}

temp = *q;
*q = *(p-1);
*(p-1) = temp;

// Find Min
p = array;
q = array;
for( int j = 0;j<10;j++ )
{
if ( *p < min )
{
q = p;
min = *p;
}
p++;
}
temp = *q;
*q = *array;
*array = temp;
}

void output( int *array )
{
printf("\n输出10个数(?理后):\n");
for( int i = 0;i<10;i++ )
{
printf("%d ",array[i]);
}
getch();
}

main(){
int max = 0;
int a[10] = {0};

input( a );
getResult( a );
output( a );

return 0;
}

回答2:

==============================
如下代码已经编译运行通过
==============================

嫌长就算了