C语言I博客作业11
问题|答案
---|:--😐---:
这个作业属于那个课程|C语言程序设计II
这个作业要求在哪里|作业链接
我在这个课程的目标是|巩固之前所学知识并将知识进一步系统化进一步复习
这个作业在那个具体方面帮助我实现目标|PTA作业和作业要求对问题的解决的详细记录
参考文献|百度文库,教材,知否等
1.PTA实验作业
1.1 统计某类完全平方数
题目内容描述:
1.1.1数据处理
数据表达:本题我用到的变量有n,N,tem,i。其中N为函数int IsTheNumber ( const int N )的型参,n为实参。term为各个位数上的数,i为循环变量。它们都为整形变量。
数据处理:(伪代码)
int IsTheNumber ( const int N )
int n=N, tem, i;//定义变量
if( sqrt(n)==(int)sqrt(n) )//n是平方数的时候再执行,排除n不为平方数的可能
int num[10]={0};//定义num的长度为10,因为传入的整数的每位数可能是0~~9,而不是传入数的位数
while( n>0 )
tem=n%10;
for( i=0; i<=9; i++ )
if( tem==i )
num[i]++;//遍历N的每一位上的数字
if( num[i]==2 )
return 1;// 如果有一个数组元素等于2,说明至少有2个位上的数相同才返回1
n=n/10;
return 0;
else//不为平方数直接返回0
return 0;
1.1.2实验代码截图
1.1.3 造测试数据
输入数据|输出数据|说明
---|:--😐---😐---|:--😐---:
105 500|cnt = 6|题中数据
273 400|cnt = 1|随机数据
390 600|cnt = 3|随机数据
1.1.4 PTA提交列表及说明
提交列表说明:
1.编译错误:写完代码时忘记输入的数位是有限的并且不知道如何表达
2.答案正确:查阅资料后得知位数要用[]来表示,改正即可
1.2 统计各位数字之和是5的数
题目内容描述:
1.2.1 数据处理
数据表达:本题我用到的变量有sum,item,number,a,b,t,i.
数据处理:(伪代码)
int is( int number )
int sum,item;
sum=0;
while(number!=0)//排除number等于0的情况
item=number%10;
number=number/10;
sum=sum+item;
if(sum==5)
return 1;
else
return 0;//函数is判断number的各位数字之和是否等于5,是则返回1,否则返回0
void count_sum( int a, int b )
int i,sum=0,count=0,t;
if(a>b)
t=a;
a=b;
b=t;
else
for(i=a;i<=b;i++)
if(is(i))
count++;//循环累加所有值
sum=sum+i;
printf("count = %d, sum = %d",count,sum);
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据|输出数据|说明
---|:--😐---😐---|:--😐---:
104 999|cnt = 6|题中数据
263 837|cnt = 4|随机数据
372 756|cnt = 4|随机数据
1.2.4 PTA提交列表及说明
提交列表说明:
1.编译错误:又将if语句括号中赋值理所当然地写成了=
2.答案正确:将=改为==即可
2.代码互评
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图
同学一
同学二
自己代码截图
不同点:
同学二把等于0和不等于0分为两类,而我把大于0与小于0分开。
同学一整体与我差不多,但是我感觉我用来表达是否为平方数的方式不同。
3.学习总结
3.1 学习进度条
周/日期|这周所花的时间|代码行|学到的知识点简介|目前比较迷惑的问题
---|:--😐---😐---|:--😐---:
第一周|2小时|30|最简单代码|无
第二周|2小时|30|温度转换|无
第三周|5小时|90|if-else语句|格式和符号的使用
第四周|7小时|100|for循环语句|无
第五周|8小时|102|自主编写函数|编写函数的一些格式框架仍然有点模糊
第六周|8小时|130|分支结构|无
第七周|7小时|98|switch语句|拿到题目时仍然不会间接表达变量
第八周|8小时|121|while语句|PTA题中的条件不理解
第九周|8小时|129|continue结构|对变量的循环把握不到位
第十周|8小时|123|总结|复杂的镶套循环仍然把握不到位
第十一周|9小时|125|函数中变量的作用域、生存周期和存储类型、函数的定义、调用和申明|对静态局部变量与自动变量之间的区别分不清
3.2 累积代码行和博客字数
3.3.1 学习内容总结
3.3.2 学习体会
上完这周的课后,我发现自己对于函数这一部分还不是怎么了解。我自己的一大困点就是不会写表达式,不会将变量按题目要求间接表达出来。代码看得懂但是真的给我来写了就会有难
度。所以还是要多练,熟能生巧。还有就是要注意题中的条件,还有就是分的真的很细。有些时候一不小心就会出错误,更加考验我们的注意力和耐心。总之希望我期末不要挂科。