回复 楼主 a18300766880
op=getchar();存的为输入10个数字之后的换行符。要去掉。可以使用2次op=getchar();。第2个op就得到了字符A或D
#include<stdio.h>
int main()
{
int a[10];
int i,t,j;
char op;
printf("enter 10 number:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(j=1;j<=9;j++)
{ for(i=0;i<10-j;i++)
if(a[i]>a[i+1]){
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
printf("enter A or D:");
op=getchar();
op=getchar();
switch(op){
case'A':
for(i=0;i<10;i++)
printf("%d ",a[i]);
break;
case'D':
for(i=9;i>=0;i--)
printf("%d ",a[i]);
break;
}
printf("\n");
return 0;
}
当然还有其他的方法。
比如:
while((op=getchar())=='/n')
continue;
去掉换行符。