C语言II博客作业03
1.作业头
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-4 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11920 |
这个作业的目标 | 加深对数组的学习 |
学号 | 20209070 |
一、本周作业(总分:50分)
1.1 完成PTA作业,并给出编程题完成截图(5分)
7-1 向右移动字符串 (15 分)
对于字符串“abcd”:
向右移动1个单位变为“dabc”。
向右移动2个单位变为“cdab”。
向右移动3个单位变为“bcda”。
7-2 加强密码 (15 分)
很多网站初始密码都是“123456”,为保障账号安全,第一次登录会强制修改密码为加强密码,已知某网站加强密码需要同时满足以下规定:长度为6-16;必须同时包含大写字母、小写字符、数字和特殊符号;首位必须为大写字母。
请你编写一个程序,判断用户设置的密码是否为加强密码。
7-3 手机号码 (15 分)
我国使用的手机号码为11位,其中各段有不同的编码方向:前3位是网络识别号;第4-7位为地区编码;第8-11位表示用户号码。
本题要求你实现一个程序,自动统计指定地区编码的手机号码的个数。
1.2 挑战题目:九宫格键盘对应英语单词
九宫格键盘一般可以用于输入字母。如用2可以输入A、B、C,用3可以输入D、E、F等。如图所示:
对于号码5869872,可以依次输出其代表的所有字母组合。如:JTMWTPA、JTMWTPB……
您是否可以根据这样的对应关系设计一个程序,尽可能快地从这些字母组合中找到一个有意义的单词来表述一个电话号码呢?如:可以用单词“computer”来描述号码26678837.
题目来源:《编程之美——微软技术面试心得》https://book.douban.com/subject/30351275/ 稍有修改。
2.4 请给出本周学习总结(15分)
1.学习进度条(5分)
周/日期 | 这周所花的时间 | 累计代码行 | 学到的知识点简介 | 目前比较疑惑的问题 |
---|---|---|---|---|
第一周/3.1-3.7 | 11h | 230 | 对上学期全部知识进行了一遍复习及文件读取代码的演示 (涉及指针) | 想进一步学习指针,这样提取文件觉得很神奇 |
第二周/3.8-3.14 | 12h | 256 | 数组的定义,简单排序以及查找 | 二分法查找 还是不太明白 |
第三周/4.5-4.11 | 11h | 249 | 字符数组 | 字符相关的数组在题目中的运用思路不是很清晰 |
2.累积代码行和博客字数(5分)
3.学习内容总结和感悟(5分)
1.本周学习的内容难度大,关于二维数组的编程已经理解的差不多,数组能与很多实际生活中的问题相结合,因此相较之下比较困难,而且需要判断的问题和因素多,判断起来容易漏而导致纰漏。
2.关于字符串与数组的联合编程感觉还有很多没搞懂的地方,运用起来也很不熟练,其中关于输入字符的方法就有很多,而自己却只会其中最普遍的,在写题运用时也不大方便,需要上网多搜寻资料自己研。