这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | http://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10100 |
我在这个课程的目标是 | 能成功的写出自己的代码与软件 |
这个作业在那个具体方面帮助我实现目标 | 强化自己的编辑思维与对c语言的运用 |
参考文献 | c语言程序设计 |
1.PTA实验作业
1.1 7-8 输出三角形字符阵列 (15 分)
本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。
输入格式:
输入在一行中给出一个正整数n(1≤n<7)。
输出格式:
输出n行由大写字母A开始构成的三角形字符阵列。格式见输出样例,其中每个字母后面都有一个空格。
1.1.1数据处理
数据表达:设置了n,j,i为整型,x为字符型,n为输入的行,i为行,j为列,x代表'a'设置为64
数据处理:
伪代码:设置排列运算数据i,j,n为输入数,*26字母用字符型排列设置x
for(i=0;i<n;i++)
{
for(j=0;j<n-1;j++)
{
(由题得26字母排列逐一递减)
字符型x每循环+1表示26字母
}
}
输出空行
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
4 | A B C D | 四行四列逐行减一,从A开始 |
--- | E F G | |
--- | H I | |
--- | J | |
9 | A B C D E F G H I | pta题规定1<=n<7 |
- | J K L M N O P Q | 感觉应加上区间,依旧的瑕疵 |
- | R S T U V W X | |
- | Y Z [ ] ^ | |
- | _ ` a b c | |
- | d e f g | |
- | h i j | |
- | k l | |
- | m |
1.1.4 PTA提交列表及说明
提交列表说明:
Q1:纠结如何把26字母表示出来,后来翻书想起发现字符型的运用
Q2:如何让排列逐一递减
Q3:同上
Q4:。。。。
Q5:x字符型安放位置错误,更改放入第2for语句中
Q6:未空行,加入\n
Q7:不小心删掉输出后了的“;”
1.2 7-3 梅森数 (20 分)
形如2
n
−1的素数称为梅森数(Mersenne Number)。例如2
2
−1=3、2
3
−1=7都是梅森数。1722年,双目失明的瑞士数学大师欧拉证明了2
31
−1=2147483647是一个素数,堪称当时世界上“已知最大素数”的一个记录。
本题要求编写程序,对任一正整数n(n<20),输出所有不超过2
n
−1的梅森数。
输入格式:
输入在一行中给出正整数n(n<20)。
输出格式:
按从小到大的顺序输出所有不超过2
n
−1的梅森数,每行一个。如果完全没有,则输出“None”。
1.2.1 数据处理
数据表达:设置了n,x,i,d整型变量,n为输入正整数,i为for运算数据,d用与判断是否有素数,x为2的i次方减一值
数据处理:
伪代码:设置i,n,x,d;
由题得判断1<=n<20
{
否输出“None”
}
n是否为2,直接输出为3
进入循环for(i=2;i<=n;i++)
{
设置初始值d=2
x=pow(2,i)-1;
while语句(x%d!=0)(如果为素数d++)
判断当d==x时输出(防止每循环一次输出一次,素数只有两个因数,1,与自身)
输出
}
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
5 | 3 7 31 | 2^i-1,在2到5次方中的素数,梅森数 |
-1 | None | 2<=n<20,否输出None |
17 | 3 7 31 127 8191 131071 | 2^i-1,在2到5次方中的素数,梅森数 |
1.2.4 PTA提交列表及说明
Q1:如何让循环如果无梅森数输出None
Q2:先尝试用for语句进行循环设置z++,进行判断,循环数据错误,超时
Q3:同上,如何判断,如何让循环如果无梅森数输出None
Q4:尝试将if(z==0),包含格式错误
Q5:。。。。
Q6:。。。。
Q7:直接将n的进行判断提出来,不过如何让数只单个输出
Q8:设置条件错误
2.代码互评
同学代码截图
自己代码截图
不同点:图一其运用的是for语句循环f++来进行判断循环是否有梅森数,而且它将梅森数输出的条件也不同,不过大体思路相同。图二,其用了自定义函数进行运算2^i-1的值,再将其带入进行判断,思路很好,不过感觉很麻烦,运行时间与空间大
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第五周 | 19 | 126 | 循环的嵌套,字符型的加强运用 | 关于函数运算时如何将思路编码表示出来 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
每次作业总是让人欲仙欲死,但其对个人的进步是很明显,通过作业学习与复习知识,强化自身的思维,到现在一个学期快过去了。时间过的很快,但我对于c语言还差很多,得继续加油,多练习,运用