找错误,比眼里
#include<stdio.h>
int main()
{
int n,s[100];
int a,min;//min的作用是存放每次比较后此时最小的数的值
int * p;//用于存放数组元素中最小值得地址
while(1){
scanf("%d",&n);
if(n==0){
break;
}
else{
for(int m=0;m<n;m++){
scanf("%d",&s[m]);
}
//以下的语句应该是找出最小的元素,并记住地址
//如果第一个元素最小,就原样输出
//如果不是,就交换最小的数和第一个数,然后循环输出s【i】并加空格
min=s[0];
for(int i=0;i<n;i++){
if(s[i]<=min){
min=s[i];
p=&s[i];
}
}
a=s[0];
s[0]=min;
*p=a;
for(int j=0;j<n;j++){
if(j==0)printf("%d",s[j]);
else printf(" %d",s[j]);
}
printf("\n");
}
}
return 0;
}
自己运行 结果无误,但是提交到oj里就是错误的
[解决办法]
哎 ,自己单步吧。
[解决办法]
处理下每次输入的回车符!