• C语言I博客作业07


    问题 答案
    这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9932
    我在这个课程的目标是 精通c语言,学会自己编写程序
    这个作业在那个具体方面帮助我实现目标 学会switch语句,用switch语句处理多分支选择问题
    参考文献 C语言程序设计Ⅰ

    1.PTA实验作业

    1.1统计学生成绩

    本题要求编写程序读入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,N,i,x1,x2,x3,x4,x5。并把x1,x2,x3,x4,x5初始化。浮点型变量score。
    数据处理:用了if-else结构和switch语句。表达式-x1=x1+1,x2=x2+1,x3=x3+1,x4=x4+1,x5=x5+1.
    

    1.1.2实验代码截图

    1.1.3造测试数据

    输入数据 输出数据 说明
    77 54 92 73 60 65 69 1 0 2 3 1 没有成绩为B的同学
    100 90 52 34 2 0 0 0 2 没有成绩为B,C,D的同学
    90 85 76 62 42 1 1 1 1 1 成绩为A,B,C,D,E的同学分别有一人

    1.1.4PTA提交列表及说明

    提交列表说明
    * 1.编译错误:这次的代码写的有点长,写着写着就把后面几个n=3,4后面忘记打;了。
    * 2.编译错误:因为后面加入了变量x1,x2....,忘记在前面定义了。
    * 3.答案错误:switch语句体里面的表达式没有进行累加。
    

    1.2程序设计联考

    自从湖南农业大学、吉首大学和怀化学院组织程序设计课程联考以后,举办联考的经验越来丰富。尤其是在使用PTA系统作为考试平台之后,联考工作得到了很多学校的认可和支持。所以,现在参与联考的学校比较多。为了便于区分考生,考生账号的第一位是学校代号。1代表Hunan Agricultural University,2代表Jishou University,3代表Huaihua University,4代表Aerospace University,5代表Ocean University。 请编写程序根据考生的账号区分考生的学校。
    输入格式:
    在一行中给出1个6位的正整数account。
    输出格式:
    在一行中输出account的学校。注意:如果不清楚学校代号是哪个学校,则输出"OtherUniversity"。
    

    1.2.1数据处理

    数据表达:定义了整形变量N,n,x;
    数据处理:用了if-else结构和switch语句。
    

    1.2.2实验代码截图

    1.2.3造测试数据

    输入数据 输出数据 说明
    123456 Hunan Agricultural University 该学生来自Hunan Agricultural University
    015966 Other University 该学生来Other University
    369852 Huaihua University 该学生来自Huaihua University

    1.2.4PTA提交列表及说明

    提交列表说明
    * 1.编译错误:题目中说如果不清楚学校代号是哪个学校,则输出"OtherUniversity"。我以为要输出"OtherUniversity",符号也要。我就在OtherUniversity两边加了’。
    * 2.部分正确:我在OtherUniversity前面打了几个空格。 错了,就又在后面打了几个空格。我也不知道为什么。最后终于发现了。(这道题目做对了后 觉得很简单。虽然错误就只出现在OtherUniversity,但是找出来还是比较困难的。都是题目惹的祸)
    

    2代码互评

    同学代码截图
    


    自己代码截图
    

    这题我们的思考方向不一样,我想的是直接if语句判断数在那个范围,在用switch语句进行选择。而同学的代码是先进行算,再用switch语句进行选择。相同的是我们都用了switch语句。各有各的好处,我的是比较容易懂同学的是看起来整洁舒服。第一个同学的代码和第二个同学的代码在思路上差不多,只是第二个同学没有全部进行累加。
    

    3.学习总结

    3.1学习进度条

    周/日期 这周所花时间 代码行 学到的知识点简介 此前比较迷茫的问题
    第一周 1天 24行 学会了一点printf()语句,知道主函数 \n的用法
    第二周 4天 23行 学会计算摄氏温度与华氏温度的转化 =两边打空格
    第三周 2天 62行 学会一点scanf()语句,定义变量,if-else结构 很多地方不知道为什么要打空格
    第四周 1天 145行 学会了for()语句 目前没有
    第五周 1天 142行 对函数的定义和调用有初步的认识 在函数的定义中是否可以输入形参的值
    第六周 2天 132行 加深对if-else分支结构的认识,字符型变量和常量的定义以及字符型输入输出函数 字符型数据的输出和输入不懂
    第七周 1天 206行 学会switch语句,用switch语句处理多分支选择问题 在编译器上打代码时,编译器没有提示错误,但是答案错了。后来才知道case后面要打空格再打常数表达式

    3.2累积代码行和博客字数

    3.3学习内容总结和感悟

    3.3.1学习内容总结

    3.3.2学习体会

    • 1.机课上在做实验题第一题时,编译器没有提示错误,但是答案一直错误,当时真的快崩溃了。我就一直检查代码是不是错了,但是代码确实没有错误。最后才发现原来case后面要打空格再打常数表达式。最后答案对了还是很开兴的。
    • 2.这周的pta都要用switch语句做,做起来还是比较吃力的。对于switch语句用起来还不是特别熟练。还是要多多练习,就像if-else语句,用多了就比较熟练了。还有就是这周pta的第二题,我总有一个格式错误,一直找不到。我的学校名字都是复制上去的。应该没有错误。最后发现原来OtherUniversity这个单词之间要自己打空格。这次代码有点长犯了不该犯的错误,希望下次不管代码有多长,也要细心,不要急躁。
    • 3.这周还有一个收获 是在做pta最后一题时,要输出如18 3 NONE这要的形式,我们就要在第二和第三个输出函数里面添加一个空格,如printf(" NONE");。
  • 相关阅读:
    登录不了路由器恢复办法
    刷完OpenWrt在浏览器无法访问的解决办法
    [海蜘蛛] 海蜘蛛 V8 全线无限试用版 免费发布破解教程
    ThinkPHP3.0启动过程
    ivr
    centos6.5下修改文件夹权限和用户名用户组
    从一条巨慢SQL看基于Oracle的SQL优化(重磅彩蛋+PPT)
    基于Docker搭建MySQL主从复制
    Elasticsearch全文检索实战小结
    springboot-Learning
  • 原文地址:https://www.cnblogs.com/deng9/p/11816283.html
Copyright © 2020-2023  润新知