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

2021-05-29 07:04

阅读:740

标签:main   img   最小值   please   include   clu   min   bsp   排序   

 

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

 

 1 #include 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] // 若遍历中的数比前一个数小,则交换位置,并记录下标
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个整数并保存到数组,要求找出最小数和它的下标,然后把它和数组中最前面的元素调换

标签:main   img   最小值   please   include   clu   min   bsp   排序   

原文地址:https://www.cnblogs.com/Maackia/p/14771999.html


评论


亲,登录后才可以留言!