• 第十四,十五周作业


    要求二

    题目:14周PTA作业-1
    7-4 fibonacci数列
    1.实验代码

    #include<stdio.h>
    int main(){
    int m,a[12]={1,1};
    for(m=2;m<=12;m++)
      a[m]=a[m-1]+a[m-2];
    for(m=0;m<=12;m++){
      printf("%6d",a[m]);
      if((m+1)%3==0)
      printf("
    ");}
      return 0;
    }
    

    2.设计思路
    (1)主要题目算法
    第一步:先定义一个数值为十二的数组,给出前两个数的数值。
    第二步:用for循环,按照前两个数相加得第三个数计算出后面的数值
    第三步:在for循环里,m应从2开始循环
    第四步:输出最后一个数字后,换行,m+1等于数组的个数,进行除3取余。

    (2)流程图

    3.本题调试过程中遇到的问题及解决方法。
    错误截图

    遇到的问题及解决办法:
    所有数字都是换行后进行的,然后题目要求三组数一行,我再用if循环if((m+1)%3==0来实现三组一换行
    4.pta截图

    题目:14周PTA作业-2 7-4 交换最小值和最大值
    1.实验代码

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

    2.设计思路
    (1)主要题目算法
    第一步:定义变量及数组a[n]
    第二步:利用for循环输入所有的数组值,假设第一个数组值为最小的,利用for循环将所有的数组与第一个数比较,找到数组中的最小值,进行交换,重复操作
    第三步:若最大值以及最小值不是最大或最小,那再次进行循环
    第四步:利用for循环输出所有的数组。

    (2)流程图:

    3.本题调试过程中遇到的问题及解决方法。
    遇到的问题及解决办法:不能理解如何操作,就询问同学,并询问参照她的仿写 并询问了原因及如何思考如何调换位置:利用for循环输入所有数组值假设第一个值为最小的,则进行所有数组与第一个值比较,找到最小值进行交换,并进行下标的交换。若最小的值不是第一个,则定义一个替换的变量将其换到相应的位置。

    4.pta截图:

    题目:7-2 方阵左下三角元素的和
    1.实验代码

    #include<stdio.h>
    int main(){
      int i,j;
      int sum=0;
      int a[4][4];
      for(i=0;i<4;i++){
        for(j=0;j<4;j++){
          scanf("%d",&a[i][j]);
          }
        }
        for(i=0;i<4;i++){
          for(j=0;j<=i;j++){
          sum+=a[i][j];
          }
        }
      printf("%d",sum);
      return 0;
    }
    

    2.设计思路
    (1)主要题目算法
    第一步:定义规定的方阵的行列,写出要加和的数组
    第二步:利用for循环将数组进行赋值
    第三步:再利用for的双层循环列出所有要加和的数,进行累加,即:sum+=a[i][j]
    第四步:输出应求结果

    (2)流程图

    3.本题调试过程中遇到的问题及解决方法
    错误截图

    遇到的问题及解决办法:可正常运行,但是输出的结果不对,反复操作并询问同学,得知加和表示为:sum+=a[i][j];并非为sum=a[i][j]

    4.pta截图

    由于本题为Devc++操作,所以在pta中为正确

    题目:7-3 求整数序列中出现次数最多的数
    1.实验代码

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

    2.设计思路
    (1)主要题目算法
    第一步:定义出所需的变量及数组
    第二步:利用for循环输入n的所有的数组值
    第三步:再利用for的双层循环找出相等的数组,同时实现个数的累加
    第四步:如果t<相同数组的个数;就让t=b[i],同时进行下标的转换
    第五步:利用for循环排除所有的这种情况
    第六步:最后输出整数序列中出现次数最多的数

    (2)流程图

    3.本题调试过程中遇到的问题及解决方法。
    错误截图

    遇到的问题及解决办法:
    输出结果完全不对,发现在a[i]a[k]时,又将其写成a[i]a[k],这个定义已经错过很多遍了,并且在if条件里将条件t<b[i],错写成了t>b[i]

    4.pta截图

    要求三

    git地址:https://git.coding.net/Iams/homework.git
    coding截图:

    要求四
    个人总结
    (1)本周学习内容和收获:数组,冒泡法排序以及选择排序
    数组名是一个地址常量,存放数组内存空间的首地址。
    先定义,后使用
    只能引用单个的数组元素,不能一次引用整个数组
    数组元素:数组名[下标] 下标:整型表达式 下标取值范围:[0,数组长度-1]
    定义数组 类型名 数组名[数组长度]
    引用数组元素 数组名[下标]
    一维数组的引用
    编译器和运行环境都不会检查数组下标是否越界,无论是对数组单元做读还是写• 一旦程序运行,越界的数组访问可能造成问题,导致程序崩溃

    (2)本周所学内容中那些是难点:数组的引用,选择排序以及冒泡排序,有的时候就是看着老师的PPT听同学讲可能理解都有问题,只能自己慢慢琢磨,利用课余时间多看

    要求五

    1. 我评价的作业:
      孙 娜:www.cnblogs.com/sun-na-/p/7875394.html
      截图:

      孙美玲:www.cnblogs.com/sunmeiling/p/7911642.html
      截图:

    马宇欣:www.cnblogs.com/mayuxin/p/7900356.html
    截图:

    1. 表格及折线图
      表格:

    折线图:

  • 相关阅读:
    汇编笔记
    【BZOJ 1701】Cow School(斜率优化/动态凸包/分治优化)
    MS-DOS 6.22 +Vim+masm 汇编环境
    「NOIP2017」时间复杂度
    CCF 201809-3 元素选择器
    CCF 201712-3 Crontab
    ICPC NWERC2019~2020 Practice Contest
    蓝桥杯模拟赛3 F:等差等比有联系 公差公比求通项
    CCF 201509-3 模板生成系统
    CCF 201503-3 节日
  • 原文地址:https://www.cnblogs.com/woshisun/p/7918490.html
Copyright © 2020-2023  润新知