• C语言I博客作业07


    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 作业要求的链接
    我在这个作业的目标 熟悉使用while和do-while结构解决问题
    学号 20209188

    1.PTA实验作业

    1.1题目

    猜数字游戏

    猜数字游戏是令游戏机随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>3)次以内(包括第N次)猜到该数,则提示“Good Guess!”;如果超过N次都没有猜到,则提示“Game Over”,并结束程序。如果在到达N次之前,用户输入了一个负数,也输出“Game Over”,并结束程序。

    输入格式:

    输入第一行中给出两个不超过100的正整数,分别是游戏机产生的随机数、以及猜测的最大次数N。最后每行给出一个用户的输入,直到出现负数为止。

    输出格式:

    在一行中输出每次猜测相应的结果,直到输出猜对的结果或“Game Over”则结束。

    输入样例:

    58 4
    70
    50
    56
    58
    60
    -2
    

    输出样例:

    Too big
    Too small
    Too small
    Good Guess!
    

    1.1.1数据处理

      数据表达:整数型:num ,max_cycle_num ,i,if_num。num用于接收被猜想的数字,max_cycle_num用于接收最大猜想次数,i用于记录猜想的次数,if_num用于接收猜想的数据。
        数据表达式:赋值表达式,关系表达式,逻辑表达式。
        流程结构:循环结构,判断结构。
    

    1.1.2实验代码截图

    1.1.3 造测试数据

    输入数据 输出数据 说明
    58 4
    58
    Bingo! 测试成
    58 4
    45
    58
    Too small
    Lucky You!
    测试成功
    53 2
    34
    56
    87
    Too small
    Too big
    Game Over
    测试成功

    1.1.4 PTA提交列表及说明

    答案错误:题目要求在输出猜对的结果或“Game Over”则结束,而我刚开始时没用看明白,所以在猜对时没有结束语句,程序还可以继续输入数据。
    

    1.2题目

    7-6 购物(二) (25分)

    用户购买了若干个商品(商品数不超过10),现在,他告诉你每件商品的价格,你计算出这些商品的平均价格。

    输入格式:

    若干个以空格间隔的实数(每个数不超过100000),以-1作为输入结束的标志。

    输出格式:

    一个实数,表示商品的平均价格,精确到小数点后两位。

    输入样例:

    890.78 2769.8 12300 3532.2 -1
    

    输出样例:

    4873.19
    

    1.2.1 数据处理

      数据表达:整数型:i。用于进行购物数量的累加计算。
               浮点型:num,sum。num用于承载输入的物品价格,sum用于计算所有物品的总价。
      数据处理:
        数据表达式:赋值表达式,关系表达式,逻辑表达式。
        流程结构:循环结构,判断结构。
    

    1.2.2 实验代码截图

    1.2.3 造测试数据

    输入数据 输出数据
    890.78 2769.8 12300 3532.2 -1 4873.19
    0 -1 0.00

    1.2.4 PTA提交列表及说明

    部分错误:	一开始题目给我错误提示是商品 数为极端值 ,我以为是输入的数据过大导致数据流失,改成long类型后就只有 商品数为极端值 的测试点对了,想了很久,看了别人代码才发现当他没有物品价格为0时要输出0.00。
    
    • 2.代码互评

    • 同学代码截图

    自己代码截图

    总结
    • 同学的代码把可以KO无限个室友和可以KO多少个室友的判断放在一个while循环里进行,而我在当他不能一击秒杀他人时再在循环里判断他可以KO多少个室友。
    • 同学的输入数据全放在一个scanf里面并且没有空格分开,一开始以为不可以,但我自己试了一遍发现对于读入的数据没有影响。

    3.学习总结

    3.1 学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介
    第8周/10.19~10.25 12 h 280 预习了一下课本,了解代码的样子,并学习了基本代码
    第9周/10.26~11.1 15 h 580 了解了基本的常量与变量,与数据类型
    第10周/11.2~11.8 20 h 930 if语句与for循环语句的运用
    第11周/11.9~11.15 23 h 1420 函数的定义
    第12周/11.16~11.22 24 h 1360 if 语句的嵌套
    第13周/11.23~11.29 34 h 1570 switch的使用
    第14周/11.30~12.6 34 h 1460 结构体

    3.2 累积代码行和博客字数

    3.3 学习内容总结和感悟

    3.3.1 学习内容总结

    3.3.2 学习体会

      1.本周的学习集中在对于结构体的学习,对于结构体有了粗略的了解,但在做题目时还没有意识的使用
      2.感觉自己基础知识不牢靠,有一些实用的小技巧不知道,这导致我的代码相较于其他人的代码会复杂许多
      3.做题目太少,且做过的题目不可以马上的做出了,这是自己对于已经做过的题目没有去深刻的去解剖
    
  • 相关阅读:
    CoreText实现图文混排之点击事件
    iOS仿喜马拉雅FM做的毕业设计及总结(含新手福利源码)
    iOS---多线程实现方案一 (pthread、NSThread)
    iOS中navigationItem的titleView如何居中
    从 setNeedsLayout 说起
    精准化测试专业平台Paw:苹果APP应用代码质量的守护者
    Runtime实战之定制TabBarItem大小
    YYModel 源码历险记 代码结构
    10分钟搞定支付宝和微信支付 的 各种填坑
    如何写好一个UITableView
  • 原文地址:https://www.cnblogs.com/love0017/p/14088803.html
Copyright © 2020-2023  润新知