填空题
【说明】
输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
【函数】
main ( )
{
int number[10];
input (number);
max min (number);
output (number);
}
input (number)
int number[10];
{int i;
for ( i=0;i<9;i++ )
scanf ( "%d,",&number[i] );
scanf ( "%d",&number[9] );
}
max_min ( array )
int array[10];
{int *max,*min,k,1;
int *p,*arr_end;
arr end={{U}} (1) {{/U}};
max=min=array;
for ( p={{U}} (2) {{/U}};p<arr_end;p++ )
if({{U}} (3) {{/U}}) max=p;
else if ( *p<*min ) min=p;
{{U}}(4) {{/U}};
l=*min;
{{U}}(5) {{/U}};array[0]=1;1=*p;
*p=array[9];array[9]=k;k=*p;
return;
}
output ( array )
int array[10];
{ int *p;
for ( p=array;p<array+9;p++ )
printf ( "%d,",*p );
printf ( "%d/n",array[9] );
}
【正确答案】
1、array+10 (2) array+1 (3) *p>*max (4) k=*max (5) *p=array[0]
【答案解析】