关闭

输入n(n<100)个数,找出其中最小的数,将它与最前面的数交换后输出这些数.输入数据有多组,每组占一行,每行的开始是一个整数n,表示这个测试实例的数值的个数,跟着就是n个整数。n=0表示输入的结束,

5767人阅读 评论(0) 收藏 举报
#include<stdio.h>
int main()
{
	int n,s[100],mix,i,j,x,temp;        
	while((scanf("%d",&n)!=EOF)&&(n!=0))
	{
		for(i=1;i<=n;i++)       
		{
			scanf("%d",&s[i]);
		}                              
		mix=s[1];                      
		for(i=1;i<=n;i++)
		{
			if(s[i]<=mix)
			{
				mix=s[i];
		         x=i;                  
			}
		}           
       temp=s[1];
       s[1]=mix;
	   s[x]=temp;                         
	   printf("%d",s[1]);
		for(i=2;i<=n;i++)
		{
			printf(" %d",s[i]);
		}                              
		printf("\n");
	}
	return 0;
}
c语言作的
注意:如果有多个最小值要用最后面的一个和第一个数进行交换。
最小值在最前面是不用替换。
1
1

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:59748次
    • 积分:1162
    • 等级:
    • 排名:千里之外
    • 原创:55篇
    • 转载:4篇
    • 译文:1篇
    • 评论:4条
    阅读排行
    评论排行