第1个回答 2009-03-15
改成手动输入了,输入一个数回车再输第二个数,以输入非数字结束输入
#include<stdio.h>
int main()
{
int a[100],i = 0, j;
printf("input the numbers,end with invalid char:");
while(scanf("%d", &a[i]))
{
i++;
fflush(stdin);
}
int max = a[0],min = a[0];
for(j = 0; j < i; j++)
{
if(a[j] >= max)
{
max = a[j];
}
else if(a[j] < min)
{
min = a[j];
}
}
int *b = new int[i];
int k = i - 1,flag1,flag2;
for(j = 0; j < i; j++)
{
if(a[k] == max)
{
flag1 = j;
}
else if(a[k] == min)
{
flag2 = j;
}
b[j] = a[k];
// printf("%d ",b[j]);
k--;
}
b[flag1] = min;
b[flag2] = max;
for(j = 0; j < i; j++)
printf("%d ", b[j]);
printf("\n");
return 0;
}
第2个回答 2009-03-15
#include<stdio.h>
main()
{int a[5]={8,6,5,4,1};
int n,t;
for(n=0;n<2;n++)
{t=a[n];
a[n]=a[5-n-1];
a[5-n-1]=t;
}
......
}本回答被提问者采纳