(2)编程,输入1个正整数n(1<n<=10),再输入n个整数,将最小值与第1个数交换,最大值与最后1个数交换,然后输出交换后的n个数。
我的程序:
#include<stdio.h>
int main()
{
int n,i,x,y,j,p,q,max,min;
int a[10];
printf("请输入一个不大于10的正整数n:\n");
scanf("%d",&n);
printf("请输入%d个整数:\n",n);
for(i=0;i<n;i++)
scanf("%d",a[i]);
max=a[0];
x=0;
for(i=1;i<n;i++)
{
if(max<a[i])
{
max=a[i];
x=i;
}
}
min=a[0];
y=0;
for(i=0;i<n;i++)
{
if(min>a[i])
{
min=a[i];
y=i;
}
}
p=a[0];a[0]=a[y];a[y]=p;
q=a[n];a[n]=a[x];a[x]=q;
for(i=0;i<n;i++)
printf("%d",a[i]);
return 0;
}
请问哪里有问题?我是新手,请您耐心指导~
将第二行的n改为n-1后还是停止了运行、