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实验代码截图

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

1.1.3 造测试数据

输入数据 输出数据 说明
4 C语言I博客作业10_第2张图片 4行由大写字母A开始构成的三角形字符阵列
6 C语言I博客作业10_第3张图片 6行由大写字母A开始构成的三角形字符阵列
8 C语言I博客作业10_第4张图片 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实验代码截图

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

1.2.3 造测试数据

输入数据 输出数据 说明
C语言I博客作业10_第6张图片 1~1000之间的全部同构数

1.2.4 PTA提交列表及说明

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

提交列表说明:

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

2.代码互评

同学代码截图

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

自己代码截图

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

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

相同:
代码运行都在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 累积代码行和博客字数

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

3.3 学习内容总结和感悟

3.3.1学习内容总结

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

3.3.2 学习体会

通过这次作业,我找到了做题方法:
做题前认真的读题,
然后将一个完整的相对较大的题目拆分成小题,
结合前面学过的知识,一点点拼凑成这个完整大题的答案。

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