當輸入a[0]值,跑出a[0]值是正確的,但當我數入別的值時答案還是跑出a[0]值,要再輸入一次別的值才會恢復正常。
#include <stdio.h>
#include <stdlib.h>
int main(){
int a[10],i,j;
for(i=1;i<=10;i++){
scanf("%d",&a[i-1]);
}
do{
int short_a=abs(j-a[0]);
int d;
printf("Q:");
scanf("%d",&j);
if(j==0){
break;
}
for(i=1;i<10;i++){
if(abs(j-a[i])<short_a||abs(j-a[i])==short_a&&a[i]<a[0]){
short_a=abs(j-a[i]);
d=a[i];
}else if(j-a[0]==0){
d=a[0];
}
}
printf("%d",d);
printf("\n");
}while(j!=0);
return 0;
}