输入一个正整数n(1 < n < 100),再输入n个整数,将最小数与第一个数交换(若最小数就在第一位,不需要交换),输出交换后的n个数。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪

标题

输入一个正整数n(1 < n < 100),再输入n个整数,将最小数与第一个数交换(若最小数就在第一位,不需要交换),输出交换后的n个数。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬

【输入】‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬

第一行输入一个正整数n。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬

第二行输入n个整数‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬

【输出】‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬

输出交换后的n个整数。

#include<stdio.h>
int main()
{
int i,n,num[100],min,minsign,temp;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&num[i]);
}
min = num[0];
for(i=0;i<n;i++)
{
if(min>num[i])
{
min = num[i];
minsign = i;
}
}
temp = num[0];
num[0] = min;
num[minsign] = temp;
for(i=0;i<n;i++)
{
printf("%d “,num[i]);
}
printf(”\n");
return 0;
}

解决方案:

先设定变量,由题可得正整数n(1 < n < 100)故设定变量num[100]。
根据题中描述共输入n个数字故利用设定变量i并使i<n后利用for循环完成输入。即
for(i=0;i<n;i++)
{
scanf("%d",&num[i]);
}
将输入的第一个数字赋值给min,即,
min = num[0];
利用for循环比较出最小的数并得到该数的位置即,
for(i=0;i<n;i++)
{
if(min>num[i])
{
min = num[i];
minsign = i;
}
}
利用赋值变量的方法改变最小的数字和第一个数字的位置即,
temp = num[0];
num[0] = min;
num[minsign] = temp;
最后利用循环输出换后的数组,并结束即
for(i=0;i<n;i++)
{
printf("%d “,num[i]);
}
printf(”\n");
return 0;
}

#include<stdio.h>
int main()
{
int i,n,num[100],min,minsign,temp;
scanf("%d",&n);
for(i=0;i<n;i++)
{
 scanf("%d",&num[i]);
}
min = num[0];
for(i=0;i<n;i++)
{
 if(min>num[i])
 {
  min = num[i];
  minsign = i;
 }
}
temp = num[0];
num[0] = min;
num[minsign] = temp;
for(i=0;i<n;i++)
{
 printf("%d ",num[i]);
}
printf("\n");
return 0;
} 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值