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

    问题 答案
    这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 C语言I博客作业05
    我在这个课程的目标是 学会C语言,掌握编程基础知识
    这个作业在那个具体方面帮助我实现目标 学会了编写函数
    参考文献 c语言作业评价标准

    一、PTA实验作业

    1.1判断一个整数的各位数字平方之和能否被5整除

    题目描述:编写函数fun,其功能是:判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。

    1.1.1数据处理

    数据表达

    变量 变量来源 变量类型
    n 题目输入 int
    i 表示各位数字 int
    s 表示平方之和 int

    数据处理:使用的表达式有
    (1),i = n%10;
    (2),  s += i*i;

    (3), n /= 10;

    使用了while语句进行循环运算。

    表头 主调函数 被调函数 实参 形参
    名称 main fun m n
    类型 int int int int

    1.1.2 实验代码截图

    1.1.3 造测试数据

    输入数据 输出数据 说明
    1 The result is 0 最小n
    12 The result is 1 两位数
    123 The result is 0 三位数
    1234 The result is 0 四位数
    20001 The result is 1 五位数

    1.1.4PTA提交列表及说明

    1,编译错误:一个分号没有打

    2,部分正确:因为样例给的是两位数和三位数,所以我下意识以为整数是三位以下的数,后来经过回看题目,再加上思考,发现了这个问题。

    1.2 水仙花数判断

    题目描述:本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=13+53+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.

    1.2.1数据处理

    数据表达

    变量 变量来源 变量类型
    N 题目输入 int
    a 表示百位数 int
    b 表示十位数 int
    c 表示个位数 int
    result 表示返回结果 int
    s 表示三位数的立方和 int

    数据处理:使用的表达式有
    (1),a = N/100
    (2),b = (N-a100)/10
    (3),c = N%10
    (4), s = a
    aa+bbb+cc*c

    使用了if-else分支结构

    表头 主调函数 被调函数 实参 形参
    名称 main func N N
    类型 int int int int

    1.2.2 实验代码截图

    1.2.3 造测试数据

    输入数据 输出数据 说明
    153 1 最小的三位水仙花数
    407 1 最大的三位水仙花数
    100 0 最小的三位数
    999 0 最大的三位数

    1.2.4 PTA提交列表及说明

    1,编译错误:在写的过程,不小心将一个大括号删掉了。
    2,编译错误:想用pow函数计算立方,但发现头文件中并没有math. h文件。

    二、代码互评

    我的 同学一 同学二

    与同学一相比
    '(1)我使用了while语句,而同学一使用了do-while语句。
    (2)同学一定义了变量a,但是没有使用,或许他是想和我一样,想令a=.n%10,但是他却没有写,所以可以删去a。

    与同学二相比
    (1)他添加了头文件math. h,使用了pow函数,在计算高次方的时候很高效,但在这道题上是不必要的。
    (2)在返回上,他先令result等于某个值,再返回这个变量,这样既显得繁琐,也多了一个变量。

    3.1 学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第一周(9.19-9.27) 2小时 10 代码的基本输出 什么时候该空格
    第二周(9.27-10.4) 24小时 30 华氏温度转换和GCC编译器编译文件 如何进行输入
    第三周(10.4-10.11) 24小时 100 关系运算、if-else语句、格式化输入语句scanf(),以及常用的数学库函数 对一些数学符不熟
    第四周(10.11-10.18) 20小时 120 使用for循环语句实现指定次数的循环 不能快速找出错误
    第五周(10.18-10.25) 16小时 130 编写函数 调试有点不熟悉

    3.2累积代码行和博客字数

    3.3 学习总结

    3.3.1学习内容总结

    3.3.2学习体会

    我觉得我要打破现状,如果以现状的眼光去看,我以后的学习估计可以用以下的代码表示:

    include<stdio.h>

    int main()
    {
    while(1)
    printf("上课\n做作业\n")
    }

    这样的循环估计会持续到大学毕业,而且我估计这样的循环不是个例,绝大多数人都会经历类似的循环,但是我不想这样。

    在《刻意练习》这本书中,作者提出了学习的环节,其中有一个环节让我印象深刻,那就是跳过舒适圈,只有不舒服了,你才可以真的学习到知识,而这样的循环很显然不足以让人不舒服,毕竟上课可以睡过去,作业可以混过去。

    基于这个理念,在acm战队招新的时候,我毅然决定去参加,本来我还以为有一教室的人,结果到那里一看,才寥寥可数的十来个人,我有些高估了大家的兴趣。

    此外,在上大学之前,经常有人说“到大学之后,你就轻松了”之类的话,但是上了大学才发现,如果你坠落的话,确实很轻松,但你要是求上进,那真的很难,我深有体会。

    课程难度上升了不说,注意点也不再只局限于学习一个方面了,还要拓展到各个方面,同样我的内心也有些焦虑,因为相比于高中充实的日子,大学空闲的时间很多,我想利用这些时间做些什么,但又不知道做些什么,所以很迷茫。

    所以在一定程度上加入acm战队是可以“解压”的。当迷茫之时,有一群有着共同热爱的伙伴陪我学习,有友善的学长学姐指导我学习,让我不再那么迷茫,这不失为一种“解压”方式。

  • 相关阅读:
    Docker 学习4 Docker容器虚拟化网络概述
    Ceph 命令
    Day_09【常用API】扩展案例1_程序中使用一个长度为3的对象数组,存储用户的登录名和密码……
    Day_08【面向对象】扩展案例4_年龄为30岁的老王养了一只黑颜色的2岁的宠物……
    Day_08【面向对象】扩展案例3_使用多态的形式创建缉毒狗对象,调用缉毒方法和吼叫方法
    Day_08【面向对象】扩展案例2_测试旧手机新手机类,并给新手机实现玩游戏功能
    Day_08【面向对象】扩展案例1_测试项目经理类和程序员类
    用两个栈实现队列
    二叉树前序、中序、后序遍历相互求法
    洗牌
  • 原文地址:https://www.cnblogs.com/ningfan/p/11743107.html
Copyright © 2011-2022 走看看