题目:从键盘输入10个整数并保存到数组,要求找出最小数和它的下标,然后把它和数组中最前面的元素调换

2021/5/15 18:30:27

本文主要是介绍题目:从键盘输入10个整数并保存到数组,要求找出最小数和它的下标,然后把它和数组中最前面的元素调换,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

这题考察的是读者对于数组的基础能力,考点为数组的下标和排序,难度为:1颗星

 

 1 #include<stdio.h>
 2 int main()
 3 {
 4     int arry[10];    // 定义一个数组,用于存放
 5     int i;           // 临时变量,用完遍历        
 6     int temp;        // 临时变量,作为第三方交换值使用
 7     int min;         // 用于存放最小值
 8     int tag;         // 用于存放找到的,最小的数的下标,并把它的下标给打上一个 Tag
 9 
10     // 通过循环将输入的数存放到arrry[]数组内
11     for (i = 0; i < 10; i++)
12     {
13         printf("please input %d integer:", i + 1);
14         scanf_s("%d",&arry[i]);
15     }
16 
17     // 找出最小的数和它的下标
18     min = arry[0];                 // 假设最小值为第一个数
19     
20     // 通过循环遍历
21     for (i = 1; i < 10; i++)      // 共有十个数,以第一个数为比较对象,总共比较九次,故比较次数 -1 次
22     {
23         if (arry[i] < min)         // 若遍历中的数比前一个数小,则交换位置,并记录下标
24         {
25             min = arry[i];         // 将小的数丢给变量 min
26             tag = i;               // 记录下标
27         }
28     }
29 
30     // 将最小的数与数组最前面的数交换位置
31     temp = arry[tag];            // 此时,查找已经完成,我们已找到最小数的下标,通过下标直接将最小数丢给 临时变量 temp
32     arry[tag] = arry[0];         // 此时,最小数的位置为空,我们通过第一个元素的下标,将其值丢给 最小数 的坑中
33     arry[0] = temp;               // 此时,第一个元素位置为空,我们将临时变量 temp 中存放的最小值丢入第一个元素坑中
34 
35     // 遍历输出交换后的结果
36     for (i = 0; i < 10; i++)
37     {
38         printf("%d ",arry[i]);
39     }
40 
41     // 输出交换前的数组,最小数和下标
42     printf("\n Tag = %d, Min = %d", tag, temp);
43 }

 

 



这篇关于题目:从键盘输入10个整数并保存到数组,要求找出最小数和它的下标,然后把它和数组中最前面的元素调换的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程