zoukankan      html  css  js  c++  java
  • 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");。
  • 相关阅读:
    《算法竞赛入门经典》 例题35 生成元 (Digit Generator, ACM ICPC Seoul 2005,UVa)
    《算法竞赛入门经典》 例题35 生成元 (Digit Generator, ACM ICPC Seoul 2005,UVa)
    《算法竞赛入门经典》 例题35 生成元 (Digit Generator, ACM ICPC Seoul 2005,UVa)
    SVN分支
    SVN分支
    SVN 版本回退
    SVN 版本回退
    如何在excel中取消合并单元格后内容自动填充?
    如何在excel中取消合并单元格后内容自动填充?
    如何让自己像打王者荣耀一样发了疯、拼了命的学习?
  • 原文地址:https://www.cnblogs.com/deng9/p/11816283.html
Copyright © 2011-2022 走看看