C语言I博客作业10

问题|答案
---|:--😐:--😐---:
这个作业属于哪个课程|C语言程序设计II
本周教学内容&目标|第4章 循环结构 4.5 综合介绍循环结构的程序设计,涉及到多个典型算法。要求学生能够根据实际情况,选择合适的算法、合理的循环结构,熟练的编写程序。
这个作业要求在哪里|https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10097
我在这个课程的目标是|熟练掌握C语言及各大编译器
这个作业在那个具体方面帮助我实现目标| 完成PTA作业,参考课本
参考文献| 《百度》《C语言程序设计》

1.PTA实验作业

1.1 题目 :7-8 输出三角形字符阵列

本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。
输入格式:
输入在一行中给出一个正整数n(1≤n<7)。
输出格式:
输出n行由大写字母A开始构成的三角形字符阵列。格式见输出样例,其中每个字母后面都有一个空格。

1.1.1数据处理

  • 数据表达:

变量|变量来源|变量类型
---|:--😐:--😐---:
n|输入|int
i,j|随n变化而变|int
y|随n变化而变|char

  • 数据处理:

伪代码:

int i, j, n;          /*定义三个变量i,j,n*/
char y;               /*定义字符变量y*/
输入n
y←'A';                /*定义字符,从A开始*/

for (i←n to 1)
{
    for (j←1 to i)
    {
        printf ("%c ", y);     /*输出字符*/      
        y←y+1;                
    }
    printf ("\n");              /*换行*/
}
end 

1.1.2实验代码截图

1.1.3 造测试数据

输入数据|输出数据|说明
---|:--😐:--😐---:
4||4行由大写字母A开始构成的三角形字符阵列
6||6行由大写字母A开始构成的三角形字符阵列
8||8不符合题意

1.1.4 PTA提交列表及说明

提交列表说明:

利用上周做九九乘法表的思路来理解题目
在DEV C++上做好了,直接复制到PTA上

1.2 题目:7-4 同构数

一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。
输出格式:
在一行中输出所有满足条件的同构数,每个数输出占6列。没有其它任何附加格式和字符。

1.2.1数据处理

  • 数据表达:

变量|变量来源|变量类型
---|:--😐:--😐---:
i, a, b, c|随循环的进行而变化|int

  • 数据处理:

伪代码:

int i, a, b, c;               /*定义四个变量*/
for (i←1 to 1000)             /*由题意知:i属于1~1000*/
{
    a←(i*i)%10;               /*把a赋值为(i*i)%10*/
    if i==a  THEN
       do printf ("%6d", i);  /*输出i,i占六行*/

    b←(i*i)%100;              /*把b赋值为(i*i)%100*/
    if i==b&&b!=1  THEN
       do  printf ("%6d", i);
    
    c←(i*i)%1000;             /*把c赋值为(i*i)%1000*/
    if (i==c&&c!=1)  THEN
       do printf ("%6d", i);
 }
 end

1.2.2实验代码截图

1.2.3 造测试数据

输入数据|输出数据|说明
---|:--😐:--😐---:
无||1~1000之间的全部同构数

1.2.4 PTA提交列表及说明

提交列表说明:

做正确之前思维混乱,用了很多循环和if结构
通过思考,在DEV C++上把题目拆分成小题
比如先试着得出1~10之间的全部同构数
然后得出1~100之间的全部同构数,最后得出1~1000的同构数。

2.代码互评

同学代码截图

自己代码截图

不同:
我的代码更加简单易懂,但我的运行时间比她的长。
她用了循环嵌套结构。

相同:
代码运行都在for的大前提下

3.学习总结

3.1 学习进度条

周/日期|这周所花时间|代码行|学到的知识点简介|目前比较困惑的问题
---|:--😐:--😐:--😐:--😐---:
四/9.17-9.27|12个小时|28行|C语言入门·markdown语法|计算机语言表达
五/9.24-10.04|12个小时|29行|温度转化·提问的智慧|无
七/10.08-10.12|14个小时|87行|流程结构·if-else语句|流程结构的循环结构
八/10.15-10.18|24小时|85行|for循环语句的使用|Dve C++与PTA的要求不一样
九/10.22-10.26|15小时|96行|函数的定义,调用|不同函数的用法
十/10.29-11.02|10小时|162行|多分支结构、字符型数据类型和逻辑运算符|多分支结构
十一/11.05-11.11|10小时|119行|多分支结构switch语句的使用|switch语句的运用
十二/11.12-11.16|15小时|94行|熟悉使用while和do-while结构解决问题|使用do-while结构
十三/11.19-11.22|8小时|84行|熟悉使用循环的嵌套解决问题|书写伪代码,使用continue
十四/11.26-11.29|9小时|122行|根据实际情况,选择合适的算法、合理的循环结构|循环嵌套结构的实际运用

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1学习内容总结

3.3.2 学习体会

通过这次作业,我找到了做题方法:
做题前认真的读题,
然后将一个完整的相对较大的题目拆分成小题,
结合前面学过的知识,一点点拼凑成这个完整大题的答案。
posted @ 2019-11-29 21:44  朱艳妮  阅读(212)  评论(0编辑  收藏  举报