• 第四次博客作业


    作业要求【https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2523

    我观看了7个大视频。通过观看视频我学习到了怎样定义数组,和怎样去使用数组,如何遍历一个数组,如何遍历一个二维数组,怎样在数组中寻找一个你想要的值看是否存在,怎样进行逆序或者从大到小从小到大排序。有问题的是二维数组不太能理解,虽然能定义出来二维数组,但是用起来不是很熟练,全部将数组定义为0这个也很难证明白,老师说过需要for遍历一下,但是一个大括号0就可以实现数组全部定义为0,这个方法到底实用与否我很难说,不知道是正确的还是错误的。

    第13次作业 

    题目 7-2 输出所有大于平均值的数

    #include<stdio.h>
    int main()
    {
      int a[10],i,count;
      double sum=0,average;
      scanf("%d",&count);
      if(count>=1&&count<=10){
      for(i=0;i<count;i++){
        scanf("%d",&a[i]);
        sum=sum+a[i];
      }
      average=sum/count;
      printf("%.2f
    ",average);
      if(count==1)printf("
    ");
      for(i=0;i<count;i++){
          if(a[i]>average)printf("%d ",a[i]);
              }
        }
      else
          printf("Invalid.");
      return 0;
    }

     解题思路

    第一步:首先定义一个数组和一些变量

    第二步:将输入得数按顺序依次存入到数组中

    第三步:将数组中存进去的数进行相加并取平均

    第四步:将数组中的数字从头到尾依次和平均数进行比较,并将比平均数大的数字输出

    第五步:最后输出平均数和比平均数大的数

    流程图

    本题调试过程碰到问题及解决办法

    起初程序运行结果是正确的

    调试截图

    但是当count==1的时候,他是没办法输出回车的,程序过不去,于是我修改了程序,加上count==1的条件

    运行结果截图

    个人总结

    这周我学习到了二维数组,二维数组需要用到两个for循环去遍历,适用于存很多字符串类型的题目,但是定义使用并不那么熟练,我多次找题目去联系,希望可以解决二维数组的使用困难。数组定义也有一些疑问,全部定义为0是一定要用for循环还是只需要大括号0就可以。mooc网上是说大括号0就可以,但是老师说过需要遍历。

     第十四次作业 题目 7-2 求最大值及其下标

    #include<stdio.h>
    int main()
    {
        int i,a[10],number,t=0,k=0;
        scanf("%d",&number);
        for(i=0;i<number;i++){
            scanf("%d",&a[i]);
        }
        t=a[0];
        for(i=0;i<number;i++){
            if(a[i]>t){
                t=a[i];
                k=i;
            } 
        }
        printf("%d %d",t,k);
        return 0;
    }

     解题思路

    第一步:先定义一个数组a和t,k,i,number

    第二步:输入你要输入的数值给number,表示你要输入几个数

    第三步:用for循环来将你所输入的数按顺序交给数组a

    第四步:令最大值即t为数组第一个数,并进行循环判断,如果后一个数大于这个最大值,那么将这个数赋值给最大值,将这个数的在数组中的下标交给k保存

    第五步:输出最大值及其下标

    流程图

     题调试过程碰到问题及解决办法

    运行也是正确的

    调试也是正确的

    但是pta无法过去,后来我发现,如果最大值不设数组第一个的话,很有可能循环结束出来的最大值不是数组中的数。

    程序修改后截图

    程序调试截图

    程序运行截图

    个人总结

    这周我学习到了指针,并且明白了指针是指向一个地址,数组是指针的特殊形式,而且数组中是如何存入数字的,他存入的是指针,那个指针指向了一个地址中的数,所以将数字存了进去,但是理解还是不熟练,我需要多看mooc去理解。

    互评和学习进度

    点评博客【https://www.cnblogs.com/1a2B3c4D/p/10160490.html

        【https://www.cnblogs.com/error203/p/10160025.html

        【https://www.cnblogs.com/abcefg123/p/10161739.html

  • 相关阅读:
    C++中typename关键字的用法
    多项式系数的值
    记录几个经典的字符串hash算法
    linux timerfd系列函数总结
    linux 获取网络状态信息(Rtnetlink)
    linux netlink通信机制
    linux进程、线程与cpu的亲和性(affinity)
    C语言检查ip是否合法
    使用libpcap获取http报文
    使用libpcap过滤arp
  • 原文地址:https://www.cnblogs.com/zcybky/p/10152047.html
Copyright © 2020-2023  润新知