C语言博客作业--结构体

本文介绍了三个具体的结构体编程实例,包括学生成绩等级统计、职工工资计算和时间换算等,涉及结构体的设计思路和调试过程,并分享了编程中遇到的问题及解决方法。

题目:6-2 按等级统计学生成绩

1. 本题PTA提交列表

1231958-20171224201400006-1119680902.png

2. 设计思路

struct student{
    int num;
    char name[20];
    int score;
    char grade;
};该结构体表示学生信息,学号,名字,成绩,等级
定义变量count统计不及格人数,定义循环变量i;
for i=0 to n-1
通过比较(*(p+i)).score在哪个等级设置:
if 85-100为A,70-84为B,60-69为C,0-59为D,当成绩小于60,count++;

3.代码截图(注意,截图,截图,截图。不要粘贴博客上。不用用···语法去渲染)

1231958-20171224201620225-982698866.png

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

(PTA提交列表中的每个错误详细说明为什么及如何解决。)
问题:显示代码错误1231958-20171224215321943-915425478.png
但是结构指针表示和书上的大同小异,后面才发现区别所在
解决:改成如图形式1231958-20171224220211334-1158710543.png

题目:7-1 计算职工工资

1. 本题PTA提交列表

1231958-20171225094606991-1221671216.png

2. 设计思路

struct money{
    char name[10];
    float basic,floating,expence;
};该结构体表示职员的信息,包括姓名、基本工资、浮动工资和支出;
输入n
for i=1 to n
输入职员基本工资、浮动工资和支出
输出职员实发工资

3.代码截图(注意,截图,截图,截图。不要粘贴博客上。不用用···语法去渲染)

1231958-20171225094626709-602874899.png

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

(PTA提交列表中的每个错误详细说明为什么及如何解决。)
这个题比较简单,没有遇见问题,只是输出的时候打错符号;

题目:7-2 时间换算

1. 本题PTA提交列表

1231958-20171225101036522-880995775.png

2. 设计思路

struct time{
    int h,m,s;
}sum;该结构体表示时间的时,分,秒;
定义n表示增加的秒
输入出起始时间和整数miaon
输出结果时间

3.代码截图(注意,截图,截图,截图。不要粘贴博客上。不用用···语法去渲染)

1231958-20171225101105803-1189131513.png

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

(PTA提交列表中的每个错误详细说明为什么及如何解决。)
问题1:1231958-20171225101150350-690594563.png
解决方法:把时间换成小时,小时%24,换成分钟,分钟%60,s%60
问题2:思路有了但结果不对
解决方法:输出格式为%02d;

二、截图本周题目集的PTA最后排名。(2分)

PTA排名
1231958-20171225104335772-839368720.png

三、阅读代码(2分)
1231958-20171225104404381-372264760.png
1231958-20171225104425225-218235773.png
1231958-20171225104451116-1339052974.png
有两个有序序列,利用归并排序将他们排成有序表并输出
优点:代码运用了结构体和链表,先顺序创建链表,再利用指针来定义新的节点,然后使用归并排序
但是这个题是数据结构的内容,很多东西都不太明白
1231958-20171225105424147-1725199447.png
1231958-20171225105445459-160836088.png
1231958-20171225105509006-1918947385.png
1231958-20171225105540147-204757078.png
代码功能1231958-20171225105617506-1569100271.png
优点:利用各种库函数,使代码省略不必要的步骤,函数DataSet(char a[],char b[]);  消除指针p所指向的数组中的重复元素,void compress(char *p);  通过分别调用compress函数,消除p1和p2所指向数据中的重复元素
 

四、本周学习总结(3分)

1.1结构变量与结构指针作为函数参数的区别

结构变量作为参数可以传递多个数据且参数形式较简单。

1.2函数嵌套

结构化程序设计主要原则:自顶向下,逐步求精,函数实现。
不过要计算函数的长度,避免函数功能的重复,减少全局变量的使用。

1.3递归函数

编写递归函数的两个关键点:递归出口,递归式子。
在编写程序时只给出运算规律,具体实现细节应该让计算机去实现处理,读者不要钻到细节的实现上去。

1.4共用体

定义:使几个不同的变量共占同一段内存的结构。
共用体空间等于最大成员占据的空间且共用体不能赋初值。

1.5枚举

枚举是C语言中一种基本数据类型,可以用于声明一组常数。当一个变量有几个固定的可能取值时,可以将这个变量定义为枚举类型。

错题罗列

结构体第五题
1231958-20171224224742740-1466276963.png
1231958-20171224225019256-527529326.png

转载于:https://www.cnblogs.com/yfrnb/p/8099641.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值