C语言I博客作业08
C语言I博客作业08
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-2/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11627 |
这个作业的目标 | 熟悉break、continue的使用,以及使用循环的嵌套解决问题。 |
学号 | 20209146 |
作业头
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11627 |
我在这个课程的目标是 | <熟练掌握break和continue循环语句的用法> |
这个作业在那个具体方面帮助我实现目标 | <熟练运用C语言中循环结构,掌握break和continue用法,复习之前学的if和for语句等C语言知识> |
参考文献 | 《C语言程序设计》,以及网上搜查,《Cprimer Plus》 |
1.PTA实验作业
请再此处列出自己的排名图片
1.1 题目名1
题目内容描述
1.1.1数据处理
数据表达 | 运用了多个变量,都是整型常量,数值都是自己赋予,其中n是输入数值。 |
---|---|
数据处理 | 运用了多个for循环语句,来书写代码。 |
伪代码:Begin
输入n
for(j=1;i<=n;j++)
for(i=1;i<=j;i++)
a=i*j;
输出("%d*%d=%-4d",i,j,a)
输出("\n");
return 0;
1.1.2实验代码截图
1.1.3 造测试数据
1.当n=3时
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
2.当n=7时
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1.1.4 PTA提交列表及说明
提交列表说明:
编译错误 | 对于多个语句的嵌套,不熟练,本觉得用for循环最简单,但我还是用来if判断语句,从而后面出现了错误 |
---|
1.2 题目2
题目内容描述
1.2.1 数据处理
数据表达 | 运用众多变量,如n,i,j,x,y,d,a,c,都是有自己赋值,而c,a则是编码需要 |
---|---|
数据处理 | 编码使用了while循环语句和if-else判断语句,以及for循环语句,其中if-else运用了多次 |
1.2.2 实验代码截图
1.2.3 造测试数据
1. 若输入L 3 S 7
则输出
L
LLL
LLLLL
LLL
L
S
SSS
SSSSS
SSSSSSS
SSSSSSSSS
SSSSSSSSSSS
SSSSSSSSSSSSS
SSSSSSSSSSS
SSSSSSSSS
SSSSSSS
SSSSS
SSS
S
2.若输入& 6 W 5
则输出
&
&&&
&&&&&
&&&&&&&
&&&&&&&&&
&&&&&&&&&&&
&&&&&&&&&
&&&&&&&
&&&&&
&&&
&
W
WWW
WWWWW
WWWWWWW
WWWWWWWWW
WWWWWWW
WWWWW
WWW
W
1.2.4 PTA提交列表及说明
段错误 | 这个错误出在我写代码的时候,删去错误代码的时候,忘记加上某一个符号了,而导致错误。 |
---|---|
编译错误 | 错误有多个 |
伪代码:Begin
while(scanf(" %c %d",&c,&n)!=EOF)
a=2*n-3;
for(i=1;i<=2*n-1;i++)
如果(i<=n)
for(j=n-1;j>=i;j--)
输出(" ");
for(j=1;j<=2*i-1;j++)
输出("%c",c);
输出("\n");
则 for(d=1;d<=n-1;d++)
for(j=n+1;j<=i;j++)
printf(" ");
for(j=1;j<=a;j++)
输出("%c",c);
a-=2;
输出("\n");
i+=1;
return 0;
2.代码互评
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图1
自己代码截图1
找不同:
1.从整体上看,他的代码非常简洁,给人一种舒适感,而我的代码就没有注重排面,只是单纯的完成,还有待提高.
2.它的代码非常好,既简洁又有排面;所以学习永无止步,我还需继续努力呀!!!
同学代码截图2
自己代码截图2
找不同:
1.从整体上看,这位同学的代码和我的代码差不多,但感觉我的要复杂得多.
2.从语句上看,用的都是用if-else判断语句和for循环语句.
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行数 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
8 | 26h | 504 | 输入、输出函数 | 加减乘除的运算法则 |
9 | 30h | 464 | 其他类型的函数如double等 | 判断语句if else |
10 | 35h | 545 | for循环语句、if else判断 | 其它循环语句还是不怎么懂 |
11 | 30h | 608 | for循环的组合使用、调用自己定义的函数 | 调用函数不够熟练 |
12 | 36h | 639 | if-else判断语句的进一步学习连续判断语句 | 判断语句if-else不够熟练,字符型还是分不清有些混乱 |
13 | 32h | 629 | switch的用法 | 还是难以用switch来解决问题 |
14 | 45h | 800 | while和do-while的用法,以及区别 | 就是自己写完代码后,不知道错哪了,有点烦 |
15 | 30h | 630 | 无 | 无 |
16 | 42h | 827 | break、continue的使用以及循环的嵌套解决问题 | 不怎么会用嵌套解决问题 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1.在大学里c语言不但是软件工程专业的必修课程而且也是非软件工程专业学习计算机基础的一门必修课程。所以作为我这个软件专业的学生来说当然十分重要,老师在第一节课说过,c语言是计算机的基础,大多数软件都需要用c语言来编写,通过近半个学年的学习,使我由初步掌握简单的应试知识到已能够自觉完成编程的成长,如我们在编写一个较大的程序时应该把它分开成几个小程序来看,这样会容易得多。C语言是一种结构化语言,是大部分编程语言的基础,C语言学好了,以后的JAVA,C#以及更多的编程语言才有可能学好。所以,大家和我一起加油吧!!!
2.对于如何跳出多重循环:首先,用break是可以的,只想跳出这一多层循环,代码还要继续,那就得事先设置一个变量记录这种情况,在要跳出的break;前改变这个标记;在每层循环的最后判断这个标记,符合跳出条件时就break;,层层照此办理即可。或者,用goto也是可以的,虽然大多数教材和人都建议少使用goto语句,但是goto还是有它存在的道理,比如可以快速跳出多重循环;但是用continue的话是不行的,因为continue跳过的是当前循环的这一次操作,继续进行当前循环的下一次操作。