• 博客园第四次作业


    1.实验代码(计算阶乘和)

    #include<stdio.h>
    int main()
    {
        int i,j,sum,x,n;
        sum=0;
        scanf("%d",&n);
        for(i=1;i<=n;i++){
            x=1;
            for(j=1;j<=i;j++)
                x=x*j;
                sum=sum+x;
        }
    printf("%d",sum);
    return 0;
    }

    2 设计思路

    (1)文字描述

    第一步:定义整形变量i,j,sum,x,n,分别用于存和,和两次循。

    第二部:设计外层循环控制1的阶乘加2加3加到n的阶乘,内层循环用于计算1的阶乘的值,二的阶乘的值,一直到n的阶乘的值。

    (2)流程图

    3.本题调试过程碰到问题及解决办法

    分析错误:一开始检查好几遍没有发现哪里错了,循环嵌套用的也很对,把代码打入devc++中设置断点,一步一步运行程序查看程序的各个变量的情况发现我x一开始赋值为0,那么就会使接下来的阶乘运算都为零,毫无意义。应该把x赋值为1。可能是惯性思维,一般变量赋值都给初始化成0了。

    1.实验代码(打印九九口诀表)

    #include<stdio.h>
    int main(void)
    {
        int n,i,j;
        scanf("%d",&n);
        for(i=1;i<=n;i++){
            for(j=1;j<=i;j++)
            printf("%d*%d=%-4d",j,i,i*j);
            printf("
    ");
        }
    return 0;
    }

    2 设计思路

    (1)文字描述

    第一步:观察分析题目可知要运用两次循环,外层循环控制行数,内层循环控制每行输出的东西。

    第二部:有整体的思路之后,就是设置变量,注意到输出的格式,每个乘法口诀相隔为4个单位距离,运用输出格式%-4d来控制。

    (2)流程图

    3.本题调试过程碰到问题及解决办法

    错误分析:经过pta检查为格式错误,在devc++中发现换行的时机不对,不是每次做完乘法都要换行,发现printf(“|n”)的位置不对,不应该在内层循环的大括号里,程序应该是当内层循环结束后,也就是一行的所有乘法算完后进行换行。所以应该是在内层循环与外层循环直接加入换行语句才对。所以去掉大括号即可。

    二、总结和学习进度条

    1、总结这几周所学内容、遇到的问题以及解决方法。

    这两周老师带我们回顾了数据类型和表达式,还稍微学了一点数组的知识。对于数据类型:更加了解了数据的输入输出,类型转换,还有表达式里面的各种不同的类型,这些知识可以帮助我们是自己的程序更加简化,减少代码行数。但是我好像学的并不怎么好,主要是这些知识太零碎,小知识点很多,需要抽时间记忆。以后可以在在睡前看一看书。或许这些问题就迎刃而解了!

     2、点评3个同学的本周作业(在作业中给出被点评同学博客的超链接!超链接!)

    楼哲的作业评价  付雨欣的作业评价  王萌作业评价

    3、请用表格和折线图呈现你这几周的代码行数和时间、博客字数和时间、涉及的知识点。

  • 相关阅读:
    Go 场景
    sourcetree clone 提示url无效
    简单去重比较/复杂数据去重处理
    vue组件之间的通信
    js-执行机制之同步、异步、宏任务、微任务
    react生命周期
    git push被忽略的文件 处理
    请求头的属性
    运算精度问题https://blog.csdn.net/smile_ping/article/details/80284969
    react中状态提升
  • 原文地址:https://www.cnblogs.com/wangxiao2018024023/p/10110452.html
Copyright © 2020-2023  润新知