zoukankan      html  css  js  c++  java
  • C语言|博客作业11

    问题 回答
    这个作业属于哪个课程 C语言程序设计ll
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10127
    我在这个课程的目标是 熟练掌握运用各语法,独自写出代码解决许多计算题,编写出一个小程序
    这个作业在哪个具体方面帮助我实现目标 选择题帮助更好的理解了概念,函数题帮助我更好的掌握语法
    参考文献 《C语言程序设计》 百度 CSDN

    1. PTA实验作业

    1.1 题目6-1 统计某类完全平方数

    题目内容描述:本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。

    1.1.1 数据处理

    • 数据表达:定义了整型变量n,m,定义了数组a[10]
    • 数据处理:使用了嵌套循环

    int IsTheNumber ( const int N )
    {
    定义n,m;
    n = N的根方并取整;
    m = n*n;
    if(m == N)
    {
    定义大小为10的数组a,同时a内所有元素均初始化为0;
    while(m>0)
    {
    定义i,i = m % 10;
    a[i]++计算有多少个这样的整数;
    if(a[i]==2)
    {
    满足条件,返回1;
    }
    m = m/10;
    循环计算
    }
    }
    return 0;
    }

    1.1.2 实验代码截图

    1.1.3 造测试数据

    输入数据 输出数据 说明
    105 500 cnt = 6 105至500间有6个完全平方数
    100 200 cnt = 3 100至200间有3个完全平方数
    1 1000 cnt = 9 1至1000间有9个完全平方数

    1.1.4 PTA提交列表及说明

    提交列表说明:

    1. 编译错误:用的不是数组,然后写的整个代码好像都有问题
    2. 编译错误:a[10]={0}写成了a[10]=0
    3. 编译错误:a[i]++写成了i++
    4. 编译错误:n=(int)sqrt(N1.0)写成了n=sqrt(N1.0)
    5. 编译错误:m == N写成了m = N
    6. 编译错误:int IsTheNumber ( const int N )后面加了个分号

    1.2 题目6-2 统计各位数字之和是5的数

    题目内容描述:本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。

    1.2.1 数据处理

    • 数据表达:定义了整型变量n,sum,i
    • 数据处理:使用了while语句,if-else语句,for语句

    {
    定义n;
    定义sum,赋初始值为0;
    n = number;
    while(n)
    {
    sum = sum+n%10;取余求和
    n = n/10;去除个位数
    }
    if(sum == 5)如果各位数字之和等于5
    {
    返回1;
    }
    else
    {
    返回0;
    }
    }
    void count_sum(int a, int b)
    {
    定义count,赋初始值为0;
    定义sum,赋初始值为0;
    for (int i = a; i <= b; i++)
    {
    if(is(i))调用函数
    {
    count++;
    sum = sum+i;计算所有符合条件的值之和
    }
    }
    输出sum,count;
    }

    1.2.2 实验代码截图

    1.2.3 造测试数据

    输入数据 输出数据 说明
    104 999 104至999间有15个满足要求的数
    1 10000 1至10000间满足要求的数之和为77770
    100 9990 100至9990间有50个满足要求的数

    1.2.4 PTA提交列表及说明

    提交列表说明:

    1. 运行超时:我不知道错在哪,然后改了好几个地方
    2. 编译错误:for语句的条件中有一个分号写成了逗号
    3. 编译错误:没有定义i,直接写了i=a
    4. 编译错误:没有给sum赋初始值
    5. 编译错误:没有写表达式n=number

    2. 代码互评

    同学1代码截图

    同学2代码截图

    自己代码截图

    代码对比

    1. 同学1使用了do-while语句,同学2的嵌套循环中使用了两个while语句
    2. 同学1使用了if(a>b)进行判断,我没有她进行她的这一步
    3. 同学2使用了两次if-else语句,还有两个不同意义的return 0;
    4. 我的代码和同学1的代码还是有很大一部分相似的,同学2的代码最简短,感觉很独特,我不是很明白她的代码,是一种值得学习的方法

    3. 学习总结

    3.1 学习进度条

    周/日期 这周所花时间 代码行 学到的知识点简介 目前比较迷惑的问题
    7/10.9-7/10.11 21小时 120 else-if从句,关系运算 PTA显示的答案错误究竟是什么
    8/10.16-8/10.18 15小时 84 用for语句计算简单的序列和 双精度浮点型变量的定义
    9/10.23-9/10.26 16小时 102 学到while语句的一点点知识,对自定义函数了解了一点 while语句的具体用法
    10/10.30-10/11.2 14小时 145 多分支结构,逻辑运算符 当分支较多时不太会使用if,else,for
    11/11.6-11/11.8 14小时 143 利于switch语句处理多分支选择问题 伪代码的具体定义
    12/11.13-12/11.15 15小时 75 使用while语句进行循环计算 do-while语句和while的区别还不是特别理解
    13/11.20-13/11.22 13小时 91 使用continue语句进行循环,使用嵌套循环进行计算 还是有点分不清break语句和continue语句的区别
    14/11.27-14/11.29 13小时 125 对循环结构进行了巩固复习和总结 当遇到比较复杂的嵌套循环时会出现混乱
    15/12.4-15/12.6 15小时 101 函数的声明,调用,参数的传递 函数的调用,数组的定义

    3.2 累积代码行和博客字数

    时间 博客字数 代码行数
    第四周 596 32
    第五周 1288 54
    第七周 2240 174
    第八周 3254 364
    第九周 6124 512
    第十周 8085 796
    第十一周 9625 1030
    第十二周 11172 1185
    第十三周 14142 1356
    第十四周 15742 1567
    第十五周 17427 1748

    3.3 学习内容总结和感悟

    3.3.1 学习内容总结

    3.3.2 学习体会

    1. 看到这周的题目第一感觉就是难,同学也基本说不知道怎么做,然后就上网搜资料,一直错,一直错,特别绝望
    2. 做了思维导图,这周的知识点在脑海中有了个大致的框架,但还是很懵,感觉函数好难
    3. 挺担心c语言的考试的,学了一学期了,我感觉没什么大的进步,每次作业做的时候都是非常迷的
  • 相关阅读:
    钱到用时方恨少(随记)
    Ring0 打印log文件
    Mutation Testing(变异测试)
    GitHub
    常用js收藏
    ASP.NET初学者常用知识
    ASP.NET页面刷新方法总结
    C#中抽象类和接口的区别
    GridView 72般绝技
    55种网页常用小技巧
  • 原文地址:https://www.cnblogs.com/ysrysr/p/11984452.html
Copyright © 2011-2022 走看看