• C语言拯救计划Day4-4之交换最小值和最大值


    本题要求编写程序,先将输入的一系列整数中的最小值与第一个数交换,然后将最大值与最后一个数交换,最后输出交换后的序列。

    注意:题目保证最大和最小值都是唯一的。

    输入格式:

    输入在第一行中给出一个正整数N(≤10),第二行给出N个整数,数字间以空格分隔。

    输出格式:

    在一行中顺序输出交换后的序列,每个整数后跟一个空格。

    输入样例:

    5
    8 2 5 1 4
    
     

    输出样例:

    1 2 5 4 8 





     1 #include<stdio.h>
     2 int main(){
     3     int N,i,t,a[10];
     4     scanf("%d",&N);
     5     for(i=0;i<N;i++) {
     6         scanf("%d",&a[i]);
     7     }
     8     int min=0;/*先假设min值下标为0*/
     9     for(i=1;i<N;i++) { /*然后从下标1开始依次和下标min比较大小*/
    10         if(a[i]<a[min]) /*如果a[i]<a[]min,就把i赋值于min*/
    11             min=i;/*用min来存最小值的小标*/
    12 } /*通过上面语句找出最小值a[min]*/
    13     t=a[0]; /*把数组的第一值a[0]赋值于t*/ 
    14     a[0]=a[min];/*再把最小值啊a[min]赋值于a[0],这样第一个数就是最小值啦*/
    15     a[min]=t;/*然后在把之前存放在t的数组第一个值赋值与a[min]*/
    16     /*通过上面的三条语句就实现交换啦*/
    17     int max=0;
    18     for(i=1;i<N;i++) {
    19         if(a[i]>a[max])
    20             max=i;
    21     }
    22     t=a[N-1];
    23     a[N-1]=a[max];
    24     a[max]=t;/*关于最大值交换同上*/
    25     for(i=0;i<N;i++) {
    26         printf("%d ",a[i]); 
    27     }
    28     return 0;    
    29 } 
  • 相关阅读:
    Nodejs:fs模块 & rimraf模块
    Nodejs:简单的脚手架(一)
    Nodejs:Glob对象
    Nodejs:Path对象
    后台系统组件:一丶bootstrap table
    关于Fekit的安装与测试
    Web存储-Web Storage
    【python】基础入门
    排除正则
    js正则处理千分位
  • 原文地址:https://www.cnblogs.com/noobchen/p/12787481.html
Copyright © 2020-2023  润新知