从键盘上输入20个整数,用选择法将它们按从小到大的顺序排列输出,要求每行输出10个数。

要把编程的过程写下来。

第1个回答  2013-06-13
刚写好的
static void Main(string[] args)
{
int min;
int[] nums = new int[20];
for (int i = 0; i < 20; i++)
{
int a= Convert.ToInt32(Console.ReadLine());
nums[i] = a;
}
//外层循环数组
for (int i = 0; i < nums.Length - 1; i++)
{
// 初始第一个值为最小值
min = i;
// 内层循环,从外层循环的数组元素的后一个元素开始
for (int j = i + 1; j < nums.Length; j++)
{
// 找到最小的那个元素
if (nums[j] < nums[min])
min = j;
}
// 把最小的元素放到数组的最前面,然后后面的元素继续循环
int t = nums[min];
nums[min] = nums[i];
nums[i] = t;
}
for (int i = 0; i < nums.Length - 1; i++)
{
Console.Write(nums[i]+"--");
if (i == 9)
Console.WriteLine();
}
Console.ReadLine();
}
第2个回答  2013-06-13
#define n 20
#define l 10int a[20], i, j, k, t;
for(i=n; i--;)
scanf(a[i]);
for(i=n; --i;) {
for(k=j=i; j--;)
if(a[k]>a[j]) k=j;
if(k!=i) {
t=a[k];
a[k]=a[i];
a[i]=t;
}
}
for(k=n/l, i=n; k--;)
for(j=l; j--;)
printf(a[--i]);