• 2019春第四周作业(基础题)计算机


    基础作业

    1)7-2 选择法排序 (20 分)
    本题要求将给定的n个整数从大到小排序后输出。

    输入格式:

    输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格输入

    输出格式:

    在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。

    输入样例:

    4
    5 1 7 6

    输出样例:

    7 6 5 1

    代码

    #include<stdio.h>
    int main()
    {
      int i,j,n,a[10],max,x;
      scanf("%d",&n);
      for(i=0;i<n;i++){
        scanf("%d",&a[i]);
      }
           for(j=0;j<n-1;j++){
             max=j;
            for(i=j+1;i<n;i++)
                if(a[i]>a[max])
                  max=i;
                 x=a[max];
                a[max]=a[j];
                a[j]=x;
      }
           printf("%d",a[0]);
               for(i=1;i<n;i++){
                   printf(" %d",a[i]);
      }
      
          return 0;
      }
    

    2)流程图

    3)遇到的问题

    问题 答案输出错误
    解决 其实这道题书上有,不过书上是输出最小的,而这是输出最大的,仔细查看会发现作比较那里应该是大于号,不然就会输反。
    4)运行结果截图

    5)
    心得:这个题目开始还是不会,我这是参考书上的才搞出来的,自己对数组的理解还不是很够。

    7-1

    找鞍点 (20 分)

    一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。
    本题要求编写程序,求一个给定的n阶方阵的鞍点。

    输入格式:

    输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。

    输出格式:

    输出在一行中按照“行下标 列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。

    输入样例1:

    4
    1 7 4 1
    4 8 3 6
    1 6 1 2
    0 7 8 9

    输出样例1:

    2 1

    输入样例2:

    2
    1 7
    4 1

    输出样例2:

    NONE
    1)代码

    #include<stdio.h>
     int main()
    {
        int i,j,n,max,m,k,sum=0;
         scanf("%d",&n);
         int a[n][n];
            for(i=0;i<n;i++)
              for(j=0;j<n;j++)
                 scanf("%d",&a[i][j]);
           for(i=0;i<n;i++){
             m=i;
              for(max=0;max<n;max++){
                 if(a[i][k]<=a[i][max])
                   k=max;
           
        }
        for(j=0;j<n;j++){
             if(a[m][k]>a[j][k]){
                 m=j;
                 break;
             }
         }
           if(m==i){
        	  sum=1;
        	  break;
    	}
    }
        if(sum==1)
          printf("%d %d",i,k);
       else
           printf("NONE");
        return 0;
     }
    

    2)流程图

    3)错误问题

    问题就是图片中出现的错误
    观察许久之后发现不能用i来代替不满足是的请况,因为i在前面有循环结构以代替会改变结构导致运行超时答案错误
    4)正确截图

    5)心得
    这次作业对我来说还是有难度,我参考了别人的,对于数组我真的还是难于理解,似乎数组都可以通用,唉 感叹计算机的世界我不懂

  • 相关阅读:
    iframe子页面获取父页面元素和window对象
    jQuery使用blur()方法触发两次的解决方法
    java使用freemarker生成word
    java实现下载文件
    IE11中实现颜色渐变
    MYSQL中INET_ATON()函数
    数据库SQL实战(1)
    MYSQL表中向SET类型的字段插入值时值之间不能有空格
    MYSQL表中设置字段类型为TIMESTAMP时的注意事项
    SQL中判断值是否为NULL
  • 原文地址:https://www.cnblogs.com/djhxxx/p/10578476.html
Copyright © 2020-2023  润新知