首页 > 其他分享 >C语言----对调最大数与最小数位置

C语言----对调最大数与最小数位置

时间:2024-07-28 21:29:14浏览次数:14  
标签:最大数 min 对调 位置 最小 C语言 数组 printf

对调最大数与最小数位置

实例说明:

        从键盘中输入一组数据,找出这组数据中的最大数与最小数,将最大数与最小数位置互换,并将互换后的数据再次输出。

实现过程:

  1. 打开VisualC++6.0开发环境,新建一个C源文件,并输入要创建C源文件的名称。
  2. 引用头文件,代码如下:
#include <stdio.h>

        3.利用for 循环和if条件判断语句确定最大数与最小数的位置,互换后将数组再次输出。 

        4. 程序主要代码如下:

// 对调最大数与最小数位置
#include <stdio.h>
int main(int argc, char const *argv[])
{
    int a[20], max, min, i, j, k, n;/*定义数组及变量数据类型为基本整型*/
    printf("PLease input the number of elements:\n");
    scanf("%d", &n);                /*输入要输入的元素个数*/
    printf("Please input the element:\n");
    for (i = 0; i < n; i++)         /*输入数据*/
        scanf("%d", &a[i]);
    min = a[0];
    for (i = 1; i < n; i++)         /*找出数组中最小的数*/
        if (a[i] < min)
        {
            min = a[i];
            j = i;                  /*将最小数所存储的位置赋给j*/
        }
    max = a[0];
    for (i = 1; i < n; i++)         /*找出这组数据中的最大数*/
        if (a[i] > max)
        {
            max = a[i];
            k = i;                  /*将最大数所存储的位置赋给k*/
        }
    a[k] = min;                     /*在最大数位置存放最小数*/
    a[j] = max;                     /*在最小数位置存放最大数*/
    printf("\nthe position of min is:%3d\n", j);/*输出原数组中最小数所在的位置*/
    printf("the position of max is:%3d\n", k);/*输出原数组中最大数所在的位置*/
    printf("Now the array is:\n");
    for (i = 0; i < n; i++)
        printf("%5d", a[i]);       /*将换完位置的数组再次输出*/

    return 0;
}

运行结果:

技术要点:

        本实例的主要思路是:首先要确定最大数与最小数的具体位置,将a[0]赋给min,用min 和数组中其他元素比较,有比min小的,则将这个较小的值赋给 min,同时将其所在位置赋给j,当和数组中元素均比较一次后,此时i中存放的就是数组中最小数所在的位置。最大数位置的确定方法同最小数位置的确定。当确定具体位置后将这两个数位置互换,最后将互换后的数组输出。

希望能对您的学习和生活有所帮助!

标签:最大数,min,对调,位置,最小,C语言,数组,printf
From: https://blog.csdn.net/Mumyi_/article/details/140734338

相关文章

  • c语言(运算符,流程)
    运算符位运算符说明:按位(bit)来进行运算操作的运算符。语法:~&|^<<>>**~:**按位取反说明:单目运算符,数据的每一个bit位取反,也就是二进制数位上的1变0,0变1。举例:unsignedcharret=~0x05;//00000101-->11111010printf("%d\n",~5);//-6**&......
  • c语言自学第二十天----深入探究指针下(补前面的)
    一.二级指针C++中的指针是一个非常重要的概念,而二级指针是指向指针的指针。什么是指针?指针是一个变量,用来存储内存地址。它可以指向其他变量或对象,并通过解引用操作符"*"来访问所指向的值。什么是二级指针?二级指针是指向指针的指针,它存储的是指针的地址。通过二级指......
  • c语言中给int类型变量赋值double型数值; 给double型变量赋值int型数据
      001、给int型变量赋值double型数据[root@PC1test]#lstest.c[root@PC1test]#cattest.c##测试程序#include<stdio.h>intmain(void){inti;i=8.583;printf("i=%d\n",i);//......
  • C语言输出函数printf详解
    printf1.1基本类型printf()的作用是将参数文本输出到屏幕。f代表format(格式化),表示可以定制输出文本的格式。printf()的头文件是stdio.h例如:#include<stdio.h>intmain(){ printf("HelloWorld"); return0;}1.2占位符printf()可以在输出文本中指定占位符......
  • C语言经典小游戏之三子棋
    目录一、代码思路二、代码实现1.菜单2.实现棋盘3.玩家下棋 4.电脑下棋5.判断输赢三、代码1.game.h代码3.game.c代码3.test.c代码 一、代码思路首先需要创建三个文件:test.c    //用于测试游戏的逻辑性game.c  //游戏代码的实现game.h  //游......
  • C语言笔记
    各位同好,作为一名C语言学习小白,在经过了一个学期的学习后我拿到了满分的期末成绩,现分享给大家自认为宝贵的笔记。开始写一些C语言的笔记取位数个位:n%10十位:n/10%10百位:n/100%10冒泡排序for(i=1;i<=n-1;i++)     for(j=0;j<n-i;j++)     ......
  • 【C语言】文件操作,文件读写详细介绍
    目录为什么要使用文件?文件概念1.什么是文件?2.程序文件3.数据文件4.文件名文件的使用1.文件指针2.文件的打开与关闭文件的顺序读写 1.顺序读写函数2.scanf系列与printf系列文件的随机读写 1.fseek2.ftell3.rewind文本文件,二进制文件 文件读取结......
  • c语言-指针
    6指针一、指针是什么1、指针是地址(1)地址是什么?a. 内存中用于cpu标识的一组编号   --是以十六进制的形式存储的b.cpu要么是32位,要么是64位的地址针注:这里电脑是64位,而空间是16G,这是因为电脑还有内存条,一个内存条有8G,所以总共是16G。这里的RAM是动态内存,是正在使用......
  • c语言模拟Python的命名参数
    最近在书里看到的,让c语言去模拟其他语言里有的命名函数参数。觉得比较有意思所以记录一下。目标众所周知c语言里是没有命名函数参数这种东西的,形式参数虽然有自己的名字,但传递的时候并不能通过这个名字来指定参数的值。而支持命名参数的语言,比如python里,我们能让代码达到这种效......
  • C语言内存函数精讲
    目录引言1.内存分配函数malloc2.内存释放函数free3.内存拷贝函数memcpy4.内存移动函数memmove5.内存设置函数memset6.内存比较函数memcmp总结 引言在C语言编程中,内存管理是核心技能之一。C语言提供了一系列内存操作函数,这些函数在动态内存分配、数据拷贝和比较等方......