一、PTA实验作业
题目1:
1.本题PTA提交列表
2.设计思路
阅读题目可知本题最大的难点就是编写一个可以调用题目表的函数
- (1)定义变量a为我们要输入的区位码。
- (2)输入a的值。
- (3)调用函数chinese并将实参a的值传到函数中去并保留在函数形参a中。
- (4)函数中定义变量b,c分别用来保留a的第一个字节和第二个字节
- (5)观察表可知行列最大不超过100
- (6)因此c=a%100,b=a/100.
- (7)先输出第一个字节b+160;再输出第二个字节b+160.
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明。
本题比较简单就是题意比较不好懂,题目也就是要求用C语言中原本存在的资源进行编程,认真读题后并没什么难题
题目2:掉入陷阱的数字
1.本题PTA提交列表
2.设计思路
- (1)定义函数change用来实现某一个数的每一位数想加再乘以3加1.
- (2)定义变量i=1用来控制循环,b用来保存第i次掉入陷阱后的数,而N则用来保留第i+1次掉入陷阱的数
- (3)先输入一个N,并让b=N,来保留第1个数
- (4)调用函数change(N,i)并让N的返回值
- (5)如果N=b则结束程序;
- (6)for(i=2;;i++)
- (7)调用N=change(N,i);
- (8) 当N=b时结束程序;否则让b保留N;
- (9) 下面进行函数double change(int n,int i)编写
- (10)定义n的每一个数总和为sum=0;a用来保存每一个数的数值;
- (11)do{a=n%10;n=n/10;sum+=a;}while(n!=0)
(12)程序返回值sum*3+1.
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明 。
第一次提交的时候有一个一部到位的提示错误。调试过程如下。
原本答案应该是只有一行。而最后却有两行。原因就是我自己在循环外没有进行一次的判断。造成错误。
题目3. 简单计算器
1.本题PTA提交列表
2.设计思路
- (1)定义字符型变量OP用来保存输入的字符,和浮点型变量a来保留每一个操作数,和最后结果sum,
- (2)先输入一个a,并用sum来保留a。
- (3)while(1>0){
- (4)输入一个操作字符
- (5)当op等于=时,输出sum保留0个小数并结束程序
- (6)输出下一个操作数。
- (7)如果(o‘&&op!=‘-‘&&op!=‘/‘p==‘/‘&&a==0||(op!=‘+&&op!=‘*‘)输出ERROR并结束程序。
- (8)当op==‘+‘,则sum=a+sum;
- (9)当op==‘/‘,则sum=a/sum;
- (10)当op==‘‘,则sum=asum;
(11)当op==‘-‘,则sum=a-sum;
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明 。
两次错误分别是解决分母为0和非法字符。的问题。两个问题解决的方案应该是相似的。就是如果出现了/(就除号)要判断它后面的浮点型变量是不是0.第二个就是我把加减乘除拿出来,只要字符形变量不等于这些字符则判定错误。
二、截图本周题目集的PTA最后排名。
三、本周学习总结
1.你学会了什么?
1.1 一维数组如何定义、初始化?
1.2 一维数组在内存中结构?可画图说明。数组名表示什么?
1.3 为什么用数组?
1.4 介绍选择法、冒泡法、直接插入排序如何排序?伪代码展示.
1.5 介绍什么是二分查找法?它和顺序查找法区别?
1.6 二维数组如何定义、初始化?
1.7 矩阵转置怎么实现?方阵中:下三角、上三角、对称矩阵的行标i列标j的关系?请说明。
1.8 二维数组一般应用在哪里?
2.本周的内容,你还不会什么?