结构体和链表
一、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.本周的内容,你还不会什么?
结构体的高级应用