问题 | 答案 |
---|---|
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | 作业链接 |
我在这个课程的目标是 | 学会并掌握C语言基本知识,能够相关C语言的各种代码 |
这个作业在那个具体方面帮助我实现目标 | 学会使用switch语句 |
参考文献 | C语言程序设计(第3版) |
1.PTA实验作业(20分/题)
请再此处列出自己的排名图片,如:
image (1).png
1.1 7-12 统计学生成绩 (15 分)
题目内容描述:本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:大于等于90分为A;小于90且大于等于80为B;小于80且大于等于70为C;小于70且大于等于60为D;小于60为E。输入格式:输入在第一行中给出一个正整数N(≤1000),即学生人数;第二行中给出N个学生的百分制成绩,其间以空格分隔。输出格式:在一行中输出A、B、C、D、E对应的五分制成绩的人数分布,数字间以空格分隔,行末不得有多余空格。
1.1.1数据处理
数据表达:我用了N、i、mark、sum、A、B、C、D、E这些变量,其中N和mark都是用scanf函数来赋值,i定义初始值为1,sum是用if-else语句来进行赋值,A、B、C、D、E定义初始值都为0,它们都是整型;
数据处理:
for(i=1; i<=N; i++)
给mark赋值
if判断语句
sum=1~5
switch(sum)
case 常量表达式sum(1~5): A~E(累加)
输出A、B、C、D、E的值
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
7,77 54 92 73 60 65 69 | 1 0 2 3 1 | 用题目所给数据 |
5,100 100 100 100 100 | 5 0 0 0 0 | 都为满分 |
5,90 80 70 60 50 | 1 1 1 1 1 | 五分制中都有人 |
1.1.4 PTA提交列表及说明
提交列表说明:
1.答案错误:在后面出现了sum这个变量,而在前面没有定义sum;
2.答案正确:int后面加一个sum答案就正确了。
1.2 题目2
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|
1.2.4 PTA提交列表及说明
2.代码互评(5分)
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图
自己代码截图
1,2,3方式罗列2份代码不同地方。
3.学习总结(15分)
3.1 学习进度条(5分)
周 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
9/17-9/22 | 5小时 | 43行 | 学会写最简单的代码 | 无 |
9/24-10/4 | 6小时 | 62行 | 学会温度转换 | 无 |
10/6-10/13 | 11小时 | 86行 | 学会写函数程序 | 不知道怎么在什么情况下调用scanf()函数 |
10/14-10/20 | 10小时 | 105 | for | |
循环语句和循环结构 | 不知道定义多少个变量 | |||
10/21-10/27 | 10.5小时 | 114行 | 学会怎样去定义一个函数和它的基本格式 | 对于函数题的编程不知道该怎么样去设计 |
10/28-11/3 | 12小时 | 135行 | 学会二分支结构和if-else语句 | 对于输入一个正整数,然后输入对应数量的数值的代码编写存在迷惑 |
11/4-11/10 | 小时 | 0 | 0 | 0 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
这周我们学习了C语言中的switch语句,switch有的时候可以简化if-else语句的繁琐性,还可以实现多分支结构,当符合条件时用break跳出然后输出。switch语句要与前面有很好的衔接,而且要思考怎么去设计常量表达式可以体现出程序有条不紊。
3.3.2 学习体会
这一周的PTA作业题目的量减少了好多,但是题目的难度系数越来越大,而且老师规定必须每个题目要用switch语句,有些题目好用,但有些题目感觉上不怎么好用,因为我理不清逻辑关系,并且还存在题目都没有看懂。我觉得switch语句的关键在于那个常量表达式,如果没有理清关系,就会导致答案出错。当然,这都需要自己去不断努力,而且还得需要不断坚持多练,才可以让自己变得更加优秀。