二、本周作业头
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/10098 |
我在这个课程的目标是 | 熟练循环语句,进行编程 |
这个作业在那个具体方面帮助我实现目标 | 通过复习循环结构,慢慢分析题目要求 |
参考文献 | 《c语言程序设计》《C Primer Plus》 |
1.PTA实验作业(20分/题)
请再此处列出自己的排名图片,如
1.1 题目名1
题目内容描述:
本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。
**输入格式**:
输入在一行中给出一个正整数n(1≤n<7)。
**输出格式**:
输出n行由大写字母A开始构成的三角形字符阵列。格式见输出样例,其中每个字母后面都有一个空格。
1.1.1数据处理
数据表达:用了i,j作为循环变量,c作为字符,n表示输入的有几行。运用的是for语句以及嵌套循环结构进行循环
数据处理:用了int i,j,n,c;//i,j作为循环变量,c作为字符,n表示输入的有几行。
{
for(i=n;i>0;i--)//表示行数减少
嵌套for(j=0;j<i;j++)//表示行数上的字符增加
在进行循环{
putchar(c++);
printf(" ");
}
最后输出并且换行printf("
");
return 0;
}
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
5 | 样式说明 | |
4 | 样式说明 | |
6 | 样式说明 |
1.1.4 PTA提交列表及说明
因为我有在dv上面运行过,但是也没有注意空行,以及没有注意字符的增加,导致出现错误,最后百度了一下,才知道错误,改了过来。然后一次通过
1.2 题目2
形如2n−1的素数称为梅森数(Mersenne Number)。例如2^2−1=3、2^3−1=7都是梅森数。1722年,双目失明的瑞士数学大师欧拉证明了2^31−1=2147483647是一个素数,堪称当时世界上“已知最大素数”的一个记录。
本题要求编写程序,对任一正整数n(n<20),输出所有不超过2^n−1的梅森数。
1.2.1 数据处理
数据表达:输入int n,sum,i,j,count=0;作为整型变量,sum用来存放2^n-1的值;i,j是作为循环变量,count表示梅森数的个数,n表示输入的值。
数据处理:定义变量n为输入的正整数,j,i用于控制循环,sum来放2^n-1的值,count用于记梅森数的个数
输入n
{
for(i=2;i<=n;i++)//输入的值增大
{
sum=(2^i)-1//存放的值
for(j=2;j<=sum/2;j++)//判断是否为素数
if( sum%j==0) break;//判断是否满足条件
or if(sum%j!=0){
printf("%d
",sum);count++;
}
if(count==0) then 输出None
end
}
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
6 | 样式说明 | |
8 | 样式说明 | |
10 | 样式说明 |
1.2.4 PTA提交说明
部分正确:没有注意输出,我是直接printf("
"),所以导致部分错误。
解决办法:在输出上面添加%d,正确语句为printf("%d
",n)
2.代码互评
同学代码截图 | 自己代码截图 |
---|---|
这个同学只用了一个for,而我的是运用了for语句的嵌套循环结构,她的代码还用了c用来存储值,代表字符。而我用的是putchar(c++);来进行字符的增加,i--;表示行数字符减少
同学代码截图 | 自己代码截图 |
---|---|
这个同学运用的是while循环中进行for语句循环,char代表字符的存储空间,而我用的是for语句的嵌套循环,同时我运用了char,都在for语句在输出printf(" ")来空格。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
等一周9.19-9.27 | 7天 | 28行 | 学会了如何开始进行编辑和简单的程序 | 为什么在编辑时要这么严厉,错一个符号都会是编译错误 |
第二周9.25-910.4 | 5天 | 20行 | 学会了如何用已学知识举一反三 | 为什么有时候用一个字母代表不行,有时候又可以 |
第三周10.8-10.12 | 4天 | 136行 | 难度加大的编程 | 不知道如何简写编程 |
第四周10.15-10.18 | 3天 | 120 | 指定次数的循环程序设计 | 不知道如何将分子和分母都是变量的情况下编写程序 |
第五周10.23-10.26 | 4天 | 89 | 学习函数的运用和表达 | 不知道运用那种流程正确表达函数运用较为正确 |
第六周10.28-11.2 | 3天 | 130 | 学习分支结构多次if-else循环 | 不知道在哪里打上中括号同时满足条件 |
第七周11.5-11.8 | 2天 | 140 | 学习switch语句的运用 | 不知道如何表达switch语句的表达式,还不是很熟练 |
第八周11.12-11.15 | 2天 | 130 | 学习while和do-while的运用 | 条件在while语句中不知道如何表达才是正确的 |
第九周11.19-11.22 | 2天 | 120 | 学习了嵌套循环的运用 | 无 |
第十周11.26-11.28 | 2天 | 135 | 复习了循环语句以及如何读题目 | 嵌套循环还不是很会用 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1.这周作业自我感觉很难,读题目需要读很久,才能够有点理解,所以在PTA花费了很多时间,还算可以吧
2.这周主要是复习了一下循环的运用对于循环结构又加深了一些印象,所以学习过的东西还是要多多复习才行。
3.复习知识点是非常重要的,所以接下来我打算回顾一下以前学习过的知识点。