这个作业要求在哪里 | https://pintia.cn/problem-sets/1590254564044034048/exam/problems/type/2 |
我在这个课程的目标是 | 复习一维数组,学会灵活运用二维数组 |
这个作业在那个具体方面帮助我实现目标 | 让我对二维数组的运用更加熟练 |
参考文献 | 《C语言程序设计教程》 百度 |
1.PTA实验作业
1.1 找出矩阵中最小值所在的位置
将1个m x n的矩阵存入1个m x n的二维数组中,找出最小值以及它的行下标和列下标,并输出该矩阵。
1.1.1数据处理
数据表达 | 定义了数组a[100][100],定义了整形变量m,n,i,j,rowmin,colmin,min |
数据处理 |
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
3 2(2 4 5 2 5 1) | min=a[2][1] | 最小值为1,第三行第二列 |
1.1.4 PTA提交列表及说明
编译错误:代码第十四十五行,不知道怎么打印才可以输出和实例一样
解决办法:一个一个试,然后百度,但是没有看懂什么意思,最后问同学这个是什么意思解决的
1.2 sdut-C语言实验-字符编码
请将一串长度最长为5的纯字母文本译成一个密码,密码规律如下:用原来的字母后面的第4个字母代替原来的字母。如C用G代替(如果该字母没后面没有第4个字母可代替,则需从26字母表中的首字母开始代替,比如:W用A代替,Z用D代替),最后得到的文本即为密码。
1.2.1数据处理
数据表达 | 定义整形变量i,字符数组a[5],并且初始化为0 |
数据处理 |
1.2.2 实验代码截图
1.2.3 造数据测试
输入数据 | 输出数据 | 说明 |
---|---|---|
China | Glmre | a[i]>=‘A’&&a[i]<=‘V’) |
film | jmpq | a[i]>=‘A’&&a[i]<=‘V’) |
1.2.4 PTA提交列表及说明
编译错误:给数组输入值时,输入的是%s,后面又用的%c。第一个for循环里写成了i<=5,导致有六个数
答案错误:我第二个for循环里写的是<=w,逻辑出错。
解决办法:问了老师,也问了助教,然后和同学讨论了一下,同学顺便帮我简化了我的代码
2.代码互评
同学代码:
自己代码:
代码分析:
1同学的代码简洁,体现在她的代码未直接列出各种情况,而我的代码是一个一个比较
2我的代码逻辑比较复杂,缜密,难理解,而同学的代码更易理解;
同学代码
这是电信二班陈俊豪同学的代码
自己代码
代码分析:
1.方向一致,但是同学把所有情况全部列出来了
2.我的代码是用的if else 类,运用逻辑符概括了类型,让代码更加简洁
3.学习总结
3.1 学习进度条
周/日期 | 花费时间 | 代码行 | 知识点 | 问题 |
---|---|---|---|---|
第一周 | 6h | 75 | c语言,进制转化 | 进制转化不熟练 |
第二周 | 6h | 96 | c语言程序的基本结构 | 格式问题仍然存在 |
第三周 | 8h | 122 | 基本数据类型,运算符,表达式 | 运算符掌握不清 |
第四周 | 11h | 147 | 选择结构,循环结构 | 对于循环结构的循环体把握不准 |
第五周 | 15h | 236 | 一维数组 | 不会运用数组 |
第六周 | 21h | 357 | 二维数组,字符串 | 内外层循环经常绕晕,会把简单问题复杂化,%c与%s没搞清 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
最近学习了二维数组还有字符串,二维数组的逻辑比较复杂,对于我这个理科思维不强的人来讲,有点难的,最开始都搞不清为什么有个内外层循环,搞懂后,又不知道内外层之间的关系,后来靠PTA上的题目,还有上课问老师,看教学视频,慢慢理解了。不懂的应该对于字符串这一块还是不太懂,对于怎么接收字符串及字符串的表达。希望自己能够沉下心来踏实学习c语言,感觉这是我目前碰到最难学的课程。