zoukankan      html  css  js  c++  java
  • C语言I博客作业09

    问题 答案
    这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 http://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/10030
    我在这个课程的目标是 精通c语言,深入了解C语言的编程,学会自己编写程序
    这个作业在那个具体方面帮助我实现目标 学习了for( )循环的嵌套,以及break语句和continue语句
    参考文献 C语言程序设计Ⅰ

    1.PTA实验作业

    1.1跟奥巴马一起画方块

    美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!
    输入格式:
    输入在一行中给出正方形边长N(3≤N≤21)和组成正方形边的某种字符C,间隔一个空格。
    输出格式:
    输出由给定字符C画出的正方形。但是注意到行间距比列间距大,所以为了让结果看上去更像正方形,我们输出的行数实际上是列数的50%(四舍五入取整)。
    

    1.1.1数据处理

    数据表达:定义了整形变量x,n,y,N,i,j,字符型变量op和浮点型变量z.
    数据处理:n=x%2;z=n/2.0;y=x/2 /**用来判断输出的行数**/。用了if-else和for( )循环结构。
    

    1.1.2实验代码截图

    1.1.3造测试数据

    输入数据 输出数据 说明
    10 a 10除以2能除尽
    14 a 14除以2能除尽
    11 a 11除以2不能除尽

    1.1.4PTA提交列表及说明

    提交列表说明
    * 1.部分正确:再进行四舍五入那里思考错了,我n/2的余数于5比较进行四舍五入,错了。最后改成了n/2的余数再除以2与1/2比较。
    

    1.2找完数

    谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。
    输入格式:
    输入在一行中给出2个正整数m和n(1<m≤n≤10000),中间以空格分隔。
    输出格式:
    逐行输出给定范围内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数 = 因子1 + 因子2 + ... + 因子k”,其中完数和因子均按递增顺序给出。若区间内没有完数,则输出“None”。
    

    1.2.1数据处理

    数据表达:定义了整形变量x,y,i,j,s,count;并把s和count赋值为s=1,count=0
    数据处理:用了for( )循环结构和if-else结构。s=s+j;s==i;count++;/**用来判断是否为完数**/。
    

    1.2.2实验代码截图

    1.2.3造测试数据

    输入数据 输出数据 说明
    2 30 2和30之间有2个完数
    9 40 9和40之间有1个完数
    5 600 5和600之间有3个完数

    1.2.4PTA提交列表及说明

    提交列表说明
    

    * 1.多种错误:在这个错误中我只发现了格式错误--输出错了,在等号以及加号两边都没有加空格。
    * 2.部分正确:我看题目没有看清,以为这题和上次实验课上的有一题差不多,就是输入的差别。没有看到没有完数的时候要输出NONE。导致错误。
    

    2代码互评

    同学代码截图
    


    自己代码截图
    

    我的代码比较容易理解,思路很清晰,对于大部分同学理解起来还是比较简单的。两个同学的代码思路都很好,我开始的时候都理解不了,感觉思路很新颖。第一个同学用n/2.0+0.5进行行数的控制,而第二个同学用(n+1)/2进行行数控制
    的。
    

    3.学习总结

    3.1学习进度条

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

    3.2累积代码行和博客字数

    3.3学习内容总结和感悟

    3.3.1学习内容总结

    3.3.2学习体会

    * 1.这周学习了for( )循环的嵌套以及break语句和continue语句,对于for()循环的嵌套,开始的时候理解代码意思还是有一点费力,就像我们这次实验题有一题我一直理解不了代码的意思,最后还是百度才理解。
    * 2.在运用上还不是特别熟练,需要加强练习。
    * 3.要多看前面学习过的东西,不然会忘掉。
  • 相关阅读:
    MySQL同步故障:" Slave_SQL_Running:No" 两种解决办法
    mysql运维-slave_skip_errors
    linux 的mysql 主从备份
    linux 查看和设置主机名
    mysql连接数
    红帽6.9搭建yum源的2种方式(HTTP和本地)
    linux 重启服务器命令
    Linux开机启动顺序启动顺序及配置开机启动
    在Windows Server 2012的Task Scheduler里面配置自动发送邮件
    "Cannot find one of more components. Please reinstall the application"--安装VS2013之后不能正常打开的处理办法
  • 原文地址:https://www.cnblogs.com/deng9/p/11907128.html
Copyright © 2011-2022 走看看