zoukankan      html  css  js  c++  java
  • 小程序(第四周)

    #include <stdio.h>
    #include <stdlib.h>


    void main()
    {
    int a,b,i,j,k,g,z=0;
    int num[20][10]={{0},{0},{0},{0},{0},{0},{0},{0},{0},{0}};
    int Max[20][2]={{0},{0}};
    scanf("%d",&a); ////////数据组数
    if(a<=0){
    exit(0);
    }
    for(i=0;i<a;i++){
    scanf("%d",&j); ////////每组数据个数
    for(k=0;k<j;k++){
    scanf("%d",&num[i][k]);
    }
    for(j=k-1;j>0;j--){ /////////一组结束冒泡排序
    for(g=k-1;g>0;g--){
    if(num[i][g]>num[i][g-1]){
    b=num[i][g];
    num[i][g]=num[i][g-1];
    num[i][g-1]=b;
    }
    }
    }
    Max[i][0]=num[i][0];
    while(num[i][z]>=Max[i][0]){
    z++;
    }
    Max[i][1]=num[i][z];
    z=0;
    }
    for(i=0;i<a;i++){
    printf("%d %d ",Max[i][0],Max[i][1]);
    }
    }

    这道题的输入输出样例如下:

    输入样例:          输出样例:

    2                        5 4

    5                        3 2

    1 2 3 4 5

    4

    2 2 2 3

    刚开始的时候,我的想法是都输入完成后,再进行运算。但是输入每一组的元素个数时,后一组总会把第一组覆盖掉。想了好久,最后改变方法,输入一组数就进行冒泡排序,把最大值和次大值存到一个二维数组里,这样不管几组数都不会被覆盖掉。

  • 相关阅读:
    仿MSN小类别滑动效果
    pku1674 Sorting by Swapping
    pku1456 Supermarket
    pku1083 Moving Tables
    pku1125 Stockbroker Grapevine
    pku2232 New StoneForfexCloth Game
    如何低头前进
    和两年前一样
    股票亏了
    早上选举了
  • 原文地址:https://www.cnblogs.com/dododoit/p/5326891.html
Copyright © 2011-2022 走看看