• C语言I作业10


    问题 答案
    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 作业链接
    我在这个课程的目标是 能够熟练运用C语言,能够自己制作一些简单的软件
    这个作业在那个具体方面帮助我实现目标 复习了多种语法的使用
    参考文献 C语言程序教材,百度

    1.1梅森数

    形如2n−1的素数称为梅森数(Mersenne Number)。例如2​2​​−1=3、23​​−1=7都是梅森数。1722年,双目失明的瑞士数学大师欧拉证明了2​31−1=2147483647是一个素数,堪称当时世界上“已知最大素数”的一个记录。本题要求编写程序,对任一正整数n(n<20),输出所有不超过2​n​​−1的梅森数。

    1.1.1数据处理

    数据表达:设置了x,n,i,j,count等几个变量,由题目含义给出的变量,均为整型变量
    数据处理:

    伪代码
    ‘#include<stdio.h>’
    int main()
    {
    int x,n,i,j,count=0; //由题目意思设置变量//
    scanf("%d",&n); //输入n的值//
    for(i=2;i<=n;i++) //确定i的范围,使用for循环语句开始计算//
    {
    x=pow(2,i)-1; //由n的值确定一个数//
    for(j=2;j<=sqrt(x);j++) //使用for循环语句将范围内的数一一循环//
    if(x%j0) //判断除了1和本身是否还有能被整除数//
    break; //跳出循环//
    if(j>sqrt(x))
    {
    printf("%d ",x); //输出梅森数//
    count++; //计算梅森数的数量//
    }
    }
    if(count
    0) //没有梅森数就输出None//
    printf("None");
    return 0;
    }

    1.1.2实验代码截图

    1.1.3造测试数据

    输入数据 输出数据 说明
    6 3,7,21 题目例题
    3 3,7 随机测试

    1.1.4PTA提交列表及说明

    1.编译错误:先是有个分号忘记打,然后发现输出里面的那个分号忘记打了。
    2.答案正确:尝试了很多遍,把错误一一找出。

    1.2同构数

    一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。

    1.2.1数据处理

    数据表达:设置了i,n等几个变量,由题目意思给出,均为整型变量。
    数据处理:

    伪代码
    ‘#include<stdio.h>’
    int main()
    {
    int i, n ;
    n=1000; //设置n的值,确定i的范围//
    for (i=1;i<=n;i++) //使用for循环语句开始测试范围内的所有数//
    if (ii%10==i||ii%100i||i*i%1000i) //判断是否是同构数。i*i是i的平方,%10是取个位上的数//
    printf ("%6d",i); //输出范围内的所有同构数//

    return 0;
    

    }

    1.2.2实验代码截图

    输入数据 输出数据 说明
    1000 1 5 6 25 76 376 625 题目给出的数据
    500 1 5 6 25 76 376 随机数据

    1.2.4 PTA提交列表及说明

    1.编译错误:没打括号。
    2.答案错误:先打了一个n<1000.没有确定n的值。
    3.答案正确:找到错误然后改正。

    2、代码互评

    同学代码

    我的代码

    • 他的代码设置了六个变量而我的代码只设置了两个变量。
    • 我们的代码使用了for循环语句但是他的代码还使用了while语句和if语句。相比较他的更复杂。。
    • 要学好去思考更好的方法,好的方法可以节约很多的时间。要学会去学习别人的方法,思考自己的代码有什么不足,有什么可以进步的地方,这样才能进步。

    3、学习总结

    3.1 学习进度条

    日期 这周所花时间 代码行 学到的知识简介 目前比较迷惑的问题
    10/7--10/13 7个小时左右 70左右 if-else语句,算术运算和赋值运算 有些代码的含义和一些函数的含义
    10/14--10/20 8个小时左右 200行左右 for循环语句的使用 对for循环结构和if-else语句的使用不太熟练
    10/21--10/27 6个小时左右 120行左右 定义函数与调用 对函数的使用还不太熟练
    10/28--11/3 8个小时左右 250行左右 学习程序解析和多分支else-if语句 用太多if-else会比较混乱
    11/4--11/8 9个小时左右 230行左右 学习多分支结构switch语句的使用 大问题没有,就是总会粗心漏打或打错
    11/9--11/14 9个小时左右 250行左右 学习while和do-while语句的使用 对do-while语句还不太理解
    11/15--11/22 7个小时左右 240行左右 学习break语句和continue语句 对continue语句还不太熟练
    11/23--11/29 8个小时左右 260行左右 练习更高难度的题目 发现自己还有很多地方都不熟练

    3.2 累积代码行和博客字数

    3.3 学习内容总结和感悟

    3.3.1 学习内容总结

    3.3.2 学习体会

    • 已经学习这个有一段时间了,已经学过的东西还是有很多不太理解,尤其是PTA有时候一道题就是一个多小时。但是越是去深入的学习越是能感受到其中的魅力。想要学好这
      一门,我必须要付出更多的时间。我相信一定能学好。
    • 想要学好这一门就要经常去练习,熟能生巧。还可以自己去找题目做,在不断的练习中会逐渐进步。
    • 有时候发现发现别人的代码比自己的简短好多,才发现自己还有很多的不足,要多向别人学习,取长补短。
    • 学习的难度越来越大,感到有些吃力,这周所花费的时间减少了导致熟练度下降。
    • 由于这周在忙其他的事,导致在学习方面花费的时间减少了。并且快要期末了,必须要多花费些时间在作业上
  • 相关阅读:
    JS自定义功能函数实现动态添加网址参数修改网址参数值
    伍、ajax
    类的静态方法(函数)中为什么不能调用非静态成员(属性)?
    android 数据存储 SharePreferences 简单使用
    实现多线程的方式
    线程、进程概念与Android系统组件的关系
    通知—Notifications
    活动栏—Action Bar
    Android菜单—Menu
    对话框控件—Dialog
  • 原文地址:https://www.cnblogs.com/lft791110/p/11955535.html
Copyright © 2020-2023  润新知