C语言I博客作业10

问题 答案
这个作业属于哪个课程 c语言程序设计I
这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/10098
我在这个课程的目标是 学好怎样精确地打代码,快速准确的完成PTA,在博客园上将自己的错误总结与归纳
这个作业在具体哪个方面帮助我实现目标 对自己打的代码进行纠错与记录,对别人的代码进行挑错与学习
参考文献 Brian W.Kernighan, Dennis M.Ritchi

作业格式

1.PTA实验作业

C语言I博客作业10_第1张图片

1.1 7-3 梅森数

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

1.1.1 数据处理

   * 1.数据表达:用int定义了5个变量,整型对应数,for(i=2;i<=n;i++)
{
    num=pow(2,i)-1,用于语句的利用,对于这个题目   if(num%j==0) break;
    if(j>sqrt(num)),有这些逻辑语句答案才会有步骤地出来。
int num,n,i,j,f=0;     //用int整型定义n,i,j,f四个变量
    scanf("%d",&n);    //输入对应数据
    for(i←2;i<←n;i++)    //for循环结构
    {
        num=pow(2,i)-1;      //pow为根号
        for(j←2;j<←sqrt(num);j++)     //嵌套for循环
        if(num%j==0) break;    //if条件句
        if(j>sqrt(num))
        {
        printf("%d\n",num);      //输出变量
        f++;
   }
}
   if(f==0) 
   printf("None");      //输出变量
   * 2.数据处理:用整型int定义,for语句嵌套。

1.1.2 实验代码截图

C语言I博客作业10_第2张图片

1.1.3造测试数据

输入数据 输出数据 说明
9 C语言I博客作业10_第3张图片 输出了小于2*9-1的梅森数
11 C语言I博客作业10_第4张图片 输出了小于2*11的梅森数
17 C语言I博客作业10_第5张图片 输出了小于2*17的梅森数

1.1.4提交列表及说明


* 由于在上机课时已经做了这个题目,所以在pta上做的时候就一下对了,对于这些个地方我还是有些印象,比如说for(j=2;j<=sqrt(num);j++)这个地方老是想不对,漏了个条件,所以错了很多次答案错误,后来参考了同学的就改正了过来就对了

1.2 7-4 同构数

   * 题目内容描述:一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。

1.2.1 数据处理

  * 1.数据表达:用int整型定义四个变量,for循环执行。
  * 2.数据处理:
int i,n←1000,x,y;    //用int整型定义了四个
    for(i←1;i<←n;i++)      //for循环语句
    {
        x←pow(i,2);     //对x赋语句
        y←x%10;        //对y赋语句
        if(i<10)     //if条件语句
        {
        if(y==i)
        {
            printf("     %d",i);     //输出变量
        }
        }
        else if(i<100)      //else语句
          {
            x=pow(i,2);
            y=x%100
            if(y==i)
              {
            printf("    %d",i);    //输出变量
                }
          }

1.2.2实验代码截图

C语言I博客作业10_第6张图片

1.2.3造测试数据

输入数据 输出数据 说明
7 C语言I博客作业10_第7张图片 这是7的同构数

1.2.4提交列表及说明


* 答案错误:printf(" %d",i);这句例语我把中间的空格给弄没了,出现了答案错误,还有if条件语句里面有一些变量定义得不好,逻辑不清。

二.代码互评

C语言I博客作业10_第8张图片
C语言I博客作业10_第9张图片
第一个是同学的,第二个是我的,这两个代码都十分简洁,不过使用的逻辑语句不一样,一个使用pow,一个使用for,都还可以。

3-1.学习进度条

周/日期 这周所花时间 代码行 学到的知识点简介 目前比较迷惑的问题
第一周(9.19-9.27) 7天 28行 学到了最简单的格式以及一些些语法,懂得一些编译的注意事项 不懂为什么要那样注意编译,错一个像欠一个空格这样的就都不对还有一些特定的符号的用处
第二周(9.25-10.4) 5天 20行 学会了对于程序设计的一些东西,比如计算啊,就会自己开始编程,解决问题时就会简洁许多 不知道一些符号代表什么意思,就只是死记了下来
第三周(10.8-10.11) 3天 102行 这周PTA作业较多,难度系数较大,因为都不是书上的,要自己开始琢磨,怎么去排列和提出问题,学会的东西也更多,知道自己编程和自己想办法去找错误,以及怎样思考这样的一些步骤 很多很多的#include代表什么意思,还增添了许多新符号,不知道是什么意思,只知道一些浅显的表层使用
第四周 8个小时 84行 学到了新的“for"循环语句,又多懂了一些格式的注意事项 有时候自己的循环体有点搞不清楚,到底该怎样去设
第五周 3天 89 学到了什么是调用函数(主调函数和被调函数)还有声明函数 有些函数类型还不是特别熟悉
第六周 3天 124 学了分支结构,更加熟练运用if和else语句 感觉还行,没有特别不会的地方
第七周 3天 91 学了switch语句,觉得更加好用,全是case比较简单实用 switch语句掌握得还不是特别好,老是一下想不起来
第八周 3天 72 学了while语句和do while语句 pta作业有点难,还有一些搞不清的地方,while和do while做题目的时候不知道用哪个
第九周 3天 60 本周学了foe循环的嵌套语句 本周作业没有完成得很好,还需要改进很多,对于for循环的使用得多多写写代码,才能越来越熟练。
第十周 3天 123 本周算是将上几周的内容概括了一遍 pta题目很难,问了许多人,改了许多遍才完成,也算记忆深刻一些吧

累计代码行和博客字数

C语言I博客作业10_第10张图片

思维导图

C语言I博客作业10_第11张图片

3.3学习感悟

这周是第十周了,知识学得越来越多,需要掌握的东西也越来越多,我们这周开始增加了难度的pta,真的感觉有点困难,我觉得对于马上到来的期末考试,我需要细细的复习一下了,梳理知识点,整理题目,看看以前做过的pta作业,多多总结。

你可能感兴趣的:(C语言I博客作业10)