• 2018第一次作业


    作业要求一

    第一次作业由于没有即时关注截至时间,最后忘记完成,感觉到自己这个习惯非常不好,以后应该及时完成作业,不应该再拖拖拉拉的。

    作业要求二

    6-1 在数组中查找指定元素

    1 设计思路(6分)
    (1)主要描述题目算法
    第一步:阅读题目,找出题目的要求—— 在数组中查找指定元素并且输出它的最小下标。
    第二步:使用循环方式进行查找,如果可以找到,就输出它的下标。
    第三步:如果找不到,则输出-1,这样系统会自动判断。
    (2)流程图(4分)

    2.实验代码(2分)

    int search(int list[], int n, int x)  
    {
    	int * p,i;
    	 p= &list[i];
     for (i = 0; i < n; i++)  
        {  
    	
    		if(*p++==x)
    			return i;
    		
    	}
    	return -1;	
    }
    

    3.本题调试过程碰到问题及解决办法(12分)
    错误信息1:

    错误原因:没有使用指针的方法
    改正方法:先设出p,将p=&list[i],这时p就等于list[i],也就是说p可以代表之前的数组,利用循环语句再将它与需要寻找的值做对比,进一步进行判断。

    6-2 找最大值及其下标

    1 设计思路(6分)
    第一步:阅读题目可以得知寻找数组中的最大值并且输出它的下标
    第二步:先把第一个数赋予max,然后进行比较,如果第二个数比第一个数大,则把它赋予max,且把下标赋予*b。
    第三步:最后再将max输出。
    (2)流程图(4分)

    2.实验代码(2分)

    int fun(int *a,int *b,int n)
    {
    	int i;
    	int  max=*a;
    	for(i=1;i<N;i++)
    	{
    		 if(*(a+i)>*a)
    		 {
    		 
    		*b=i;
    		max=*(a+i);
    	}
    	}
    	return max;
    }
    

    3.本题调试过程碰到问题及解决办法(12分)
    错误信息1:

    错误原因:题目中给出的数组是a,而我使用的a[0],题目已经给出了输出,但我没有返回,直接又自己使用了输出。
    改正方法:向同学请教后,将数组
    a中第一个数赋值给了max,然后再进行判断a+1是否大于a,如果不是就将其替换,最后再输出max和*b。

    要求三、学习总结和进度

    1、总结两周来所有PTA作业中每个题目所使用的知识点。
    这两周以来主要学习了指针的使用,而这两道题则对最近学习的知识点有很好的应用。首先这两道题都使用了间接访问运算符,其次第一题还考察了p++的用法,以及和其他有关于p的运算

    第二题主要是上学期有关于使用循环查找最大值的知识点,再结合这学期学的指针中数组与地址的关系来考察的。

    2、将PTA作业的源代码使用git提交到托管平台上
    git地址:https://git.coding.net/MikeJackYao/The-first.git

    3、点评3个同学的本周作业

    4、请用表格和折线图呈现你本周(3/513:00~3/19 8:00)的代码行数和时间、博客字数和时间(3分)。

  • 相关阅读:
    gThumb 3.1.2 发布,支持 WebP 图像
    航空例行天气预报解析 metaf2xml
    Baruwa 1.1.2 发布,邮件监控系统
    Bisect 1.3 发布,Caml 代码覆盖测试
    MoonScript 0.2.2 发布,基于 Lua 的脚本语言
    Varnish 入门
    快速增量备份程序 DeltaCopy
    恢复模糊的图像 SmartDeblur
    Cairo 1.12.8 发布,向量图形会图库
    iText 5.3.4 发布,Java 的 PDF 开发包
  • 原文地址:https://www.cnblogs.com/yaoshunyux/p/8588493.html
Copyright © 2020-2023  润新知