指针

一.本题PTA提交列表

题目1:输出学生成绩

1.本题PTA提交列表

2.设计思路

 

定义一个数组a[10000]存放多个学生的成绩,定义一个指针p指向数组的地址。先将指针p指向数组的第一个值a,然后通过循环输入多个学生的成绩。假设第一个学生的成绩是最低成绩,让max=p,p指向它的地址&a[0],通过循环判断它的值与后面同学的成绩的大小,如果后面同学的成绩更低则用该同学的成绩替换最小值。最大值同理。将所有同学的成绩加起来除以人数得到平均值。最后输出最大值,最小值,平均值。

3.本题调试过程遇到问题及PTA提交列表情况说明

一开始让指针p指向数组的第一个值a[0],通过循环让后面的值依次与它进行比较,则p=&a[0]这句话应当放在for循环内部,使其每次进入循环都执行,如果放在循环外则第一次循环后若p指针被替代则无法完成后面的比较。

题目二:在数组中查找指定元素

1.本题PTA提交列表

2.设计思路

 

定义一个数组存放多个整数,再输入一个整数x,调用函数在数组中利用循环将数组中的数依次与x进行比较,如果有其中一个数与x相等,则让标识index等于这个数在数组中的下标,如果循环结束后仍未找到则让index等于-1,然后返回index的值到主函数,如果index不等于-1,则输出index的值,否则输出No found。

3.本题调试过程遇到问题及PTA提交列表情况说明

 本题为格式错误,认真观察了下发现又是没有注意到题目给的格式,漏掉了\n。

题目三:使用函数的选择法排序

1.本题PTA提交列表

 

2.设计思路

 

 定义一个数组存储多个整数,利用函数和排序法将这些数进行排序,然后返回主函数后输出。

3.本题调试过程遇到问题和PTA提交列表情况说明

 

 本题仍为格式错误,在依次排序后输出所有数字后应该换行进行下一组数据的排序,否则系统不会自动换行。

二.同学代码结对互评

1.互评同学名字:朱淳淳

2.我的代码 同学的代码

3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?

同学的代码用了动态分配,我的没有。我的代码更加简便,但是同学的代码更加严谨高级,用了我没有用的知识,所以我更喜欢同学的代码。

三.截图本周题目集的PTA最后排名

四.本周学习总结

1.你学会了什么?

学会了指针代替数组来存放数据

2.你还不会什么?

对指针的使用还不是很熟练,有些题目还是只能用数组完成。

并且对动态分配不能很好的理解,还需要加强学习。

 

posted @ 2018-01-20 16:14  zhqiieng  阅读(112)  评论(0编辑  收藏  举报