C语言程序设计博客作业02

我在这个课程的目标是比较全面的掌握c语言知识,自己设计编程
这个作业在那个具体方面帮助我实现目标编写设计程序的思路和逻辑
参考文献《c语言程序设计教程》
csdn社区

1.PTA作业

1.PTA实验作业

在这里插入图片描述

1.1 利用数组计算斐波那契数列

内容:本题要求编写程序,利用数组计算菲波那契(Fibonacci)数列的前N项,每行输出5个,题目保证计算结果在长整型范围内。Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,例如::1,1,2,3,5,8,13,…。

输入格式:
输入在一行中给出一个整数N(1≤N≤46)。

输出格式:
输出前N个Fibonacci数,每个数占11位,每行输出5个。如果最后一行输出的个数不到5个,也需要换行。

如果输入的N不在有效范围内,则输出"Invalid."。

1.1.1数据处理

数据表达:定义整型变量i,n,a[10],%d代表输入整型数据,%11d代表输出一个占11位的整型数据。
数据处理:
在这里插入图片描述

1.1.2实验代码截图在这里插入图片描述

1.1.3造测试数据

输入数据输出数据说明
71 1 2 3 5输入的n为7,在题目要求的有效范围内,所以输出斐波那契数列的前7项,每个数占位11,并且输出5个数换行
8 13
0Invalid.输入的n为0,不在题目的有效范围内,输出Invalid.

1.1.4PTA提交列表及说明

在这里插入图片描述

提交列表说明:
1.在编译错误时,有一行末尾忘记打“;”
2.在部分正确时,没有在输出时的%d前加上11,而且在%d后打了一个空格,但是题目没有要求打空格,所以错误。

1.2查找满足条件的所有整数

内容:本题要求编写程序,将输入的n个整数存入数组a中,然后在数组a中查找给定的x。如果数组a中的元素与x的值相同,输出所有满足条件的元素的下标(下标从0开始);如果没有找到,输出“Not Found”。

输入格式:
第1行输入一个正整数n(0<n≤10)和一个整数x,第2行输入n个整数,其间以空格分隔。题目保证数据不超过长整型整数的范围。

输出格式:
如果找到,输出所有与x的值相同的元素的下标,每行输出一个下标;如果没有找到,在一行中输出“Not Found”。

1.2.1数据处理

数据表达:定义整型变量i,n,a[10],flag,flag用于判断是否为1or0,%d表示输入和输出整型数据。
数据处理:
在这里插入图片描述

1.2.2实验代码截图

在这里插入图片描述

1.2.3造测试数据

输入数据输出数据说明
5 91输入的n为5,x为9,所以在后续输入5个数据,并在这五个数据里查找与9相等的数据,并输出其下标,输出一个下标并换行
2 9 8 1 94

1.2.4PTA提交列表及说明

在这里插入图片描述
在这里插入图片描述
提交列表说明:
1.编译错误时"<stdio.h>“,少打了一个“>”。
2.答案错误时,没有定义flag来表示1or0。
3.部分正确时,在第一条判断语句和第二条判断语句中只打了一个“=”。

2.代码互评

同学的代码

在这里插入图片描述

自己的代码

在这里插入图片描述
1.同学的代码在给定第一二个数组的值时,是先定义数组再分别给其赋值,我在定义数组时同时赋值第一二个数组
2.我将输出5个数据就换行的语句嵌套在if语句中,同学则将这个语句嵌套在else语句中
3.我的代码写了2个if语句,同学的代码中用了3个if语句
4.同学用一个if语句写出了如果一行中输出的数不满5个,则在缺少的地方输出空格,我没有将这个语句在代码中写出来

同学的代码

在这里插入图片描述

同学的代码

在这里插入图片描述

我的代码

在这里插入图片描述
1.在定义数组a时,我和伍同学定义了有10个数据元素的int型数据a,姚同学定义的是有n个数据元素的int型数据a
2.伍同学的代码中使用了两条for循环语句,我和姚同学用了一条for循环语句
3.姚同学在代码中用的c++,我和伍同学用的flag=1。
4.我和姚同学在代码中使用了两条if语句,伍同学的代码中用了四条if语句。

3学习总结

3.1学习进度条

周/日期这周所花的时间代码行学到的知识点简介目前比较迷惑的问题
第一周14h70学习了c语言的数据存储与数据表示内容有点多,有时候分不清
第二周14.5h250学习数据的输入输出的格式和顺序程序设计double型数据和float数据的输出格式有时会打错
第三周16h230选择结构程序设计不知道在哪种情况下该用哪种选择语句
第四周15h160循环结构程序设计有时对for语句中i的初值不清楚
第五周15.5h150数组在程序中的使用,数组的定义和赋值

3.2累积代码行和博客字数

在这里插入图片描述

3.3学习内容总结和感悟

3.3.1学习内容总结

在这里插入图片描述

3.3.2学习体会

1.做题的思路还是不太清晰,逻辑性不强,需要多画流程图,多多写代码
2.很多细节上的东西容易忽视,在做题过程中容易出错,需要更加仔细,经常性的忘记在语句末尾加上分号,或者是没有写输出语句
3.PTA提交题目时显示格式错误大部分情况下是输出上出了问题,这个时候要检查输出格式,比如说是否多打了空格,或者是没有打空格
4.%d前加数字对数据的长度造成影响,转换字符%d前的数字比输出的数据大,欠缺的长度会用空格来补充。若转换字符%d前面的数字比输出的数据小,那么输出的数据就会不完整
5.输出几个数据换行,假如定义一个b代表输出数据个数,那么输出5个数据换行就表示为
if(b%5==0)
printf(“\n”)
6.每个数占11位,就在输出时在%d前加上11,%11d
7.从学习c语言到目前为止,已经学了很多知识,但不能很好的运用,主要还是在脑中没有形成系统的体系,知识碎片化,需要找时间去整合学过的知识,不然写题会很累

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值