结构体和链表

一、PTA实验作业

    题目1:7-4 通讯录的录入与显示:

通讯录中的一条记录包含下述基本信息:朋友的姓名、出生日期、性别、固定电话号码、移动电话号码。 本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录。

1. 本题PTA提交列表

 

2.设计思路

输出输入当然不是难点,当然如果要查询数据并编号的话用数组操作会更顺手,所以定义了一个结构数组用来存放数据,当然数组的话,增加删除数据会比较麻烦,但是就单这题来说,数组就可以了。

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

 

 

 编译错误是因为自定义结构体名与在main函数里面引用的名不一样,第二个答案错误是因为在第三个for循环里条件判断错误应该是i<k,我打成i<n;

4.代码截图

题目二:7-2 通讯录排序

输入n个朋友的信息,包括姓名、生日、电话号码,本题要求编写程序,按照年龄从大到小的顺序依次输出通讯录。题目保证所有人的生日均不相同。

1. 本题PTA提交列表

 

2.设计思路 

 

先是定义了一个结构体,然后动态分配,运用排序法将数据从大到小排序最后输出

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

 

 

4.代码截图

题目三:7-6 一帮一:“一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当前尚未分组的学生中,将名次最靠前的学生与名次最靠后的异性学生分为一组。

1.本题PTA提交列表

 

2. 设计思路

定义结构体,以及运用三个循环,

 

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

 部分错误是因为在第二个循环嵌套里if的判断条件stu[i]我写成stu[j];

4.代码截图。

二、同学代码结对互评

1.互评同学:郑淇

2.我的代码、互评同学代码截图

郑淇同学的代码:

 

我的代码:

 

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

我和郑淇同学的代码不同在于郑淇同学运用了数组,我的运用的是结构体数组;

我更喜欢我的风格,但是郑淇同学的更好理解

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

 

四、本周学习总结

1.我学会了简单的结构体。

2.本周的内容,你还不会什么?

结构体的高级应用

 

posted @ 2018-01-20 14:56  丑鱼干  阅读(732)  评论(0编辑  收藏  举报