C语言I博客作业11
问题 | 答案 |
---|---|
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | C语言I作业11 |
我在这个课程的目标是 | 学会C语言 |
这个作业在那个具体方面帮助我实现目标 | 掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型。 |
参考文献 | c语言作业评价标准 |
一、PTA实验作业
1.1统计各位数字之和是5的数
题目描述:本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。
1.1.1数据处理
数据表达
变量 | 变量来源 | 变量类型 |
---|---|---|
a | 题目输入 | int |
b | 题目输入 | int |
s | 满足条件的数的和 | int |
number | 一个数 | int |
c | 各位数 | int |
sum | 各位数的和 | int |
数据处理:
is函数:定义变量
while(number不等于0) do
{
c<--number取10的余数;
sum<--sum+c;
number<--number/10;
}end
if(sum等于5)
返回1;
else
返回0;
end if;
count_sum函数:定义变量
for(;a<=b;a<--a+1)
{
if(对a调用is函数)
{
s<--s+a;
count<--count+1;
}end if
}
输出结果
1.1.2 实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
104 999 | 104 is counted count = 15, sum = 3720 |
样例 |
1 10000 | count = 56, sum = 77770 | 最大差 |
135 9650 | count = 46, sum = 77135 | 随机数 |
1.1.4PTA提交列表及说明
题目比较简单,一次就过了。
1.2统计某类完全平方数
题目描述:本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。
1.2.1数据处理
数据表达
变量 | 变量来源 | 变量类型 |
---|---|---|
N | 从主函数接收的数据 | int |
j | 使语句循环 | int |
i | 使语句循环 | int |
b | 将N变为变量 | int |
flag | 判断是否是完全平方数 | int |
a[10] | 接收各位数 | int |
数据处理:
定义变量
for(i<--10;i<=N/10;i<--i+1)
{
if(i*i等于N)
{
flag<--flag+1;
跳出循环
}
end if;
}
if(flag等于0)
返回0 ;
end if;
for(i<--0;b>0;i<--i+1)
{
a[i]<--b取10的余数;
for(j<--0;j<i;j<--j+1)
{
if(a[j]等于a[i])
{
flag<--flag+1;
跳出循环
}
end if;
}
if(flag>1)
返回1
end if;
}
返回0;
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
105 500 | cnt = 6 | 样例 |
1 1000 | cnt = 9 | 较大差 |
1000 1001 | cnt = 0 | 较小差 |
1.2.4 PTA提交列表及说明
1,编译错误:不知道const的含义,通过百度,发现其是常量,于是新定义了一个变量b
二、代码互评
我的 | 同学一 | 同学二 |
---|---|---|
与同学一相比(1)他多定义了两个变量,但是其实部分变量不用定义,可以用其它变量合理表示
(2)他的算法有些复杂,没有我的简洁。
与同学二相比(1)他多定义了“c”这个变量
(2)他的算法简洁,而我的显得有些复杂。
3.1 学习进度条
|周/日期|这周所花的时间|代码行|学到的知识点简介|目前比较迷惑的问题|
|-|-|-|-|-|-|
第一周(9.19-9.27)|2小时|10|代码的基本输出|什么时候该空格|
第二周(9.27-10.4)|24小时|30|华氏温度转换和GCC编译器编译文件|如何进行输入|
第三周(10.4-10.11)|24小时|100|关系运算、if-else语句、格式化输入语句scanf(),以及常用的数学库函数|对一些数学符不熟|
第四周(10.11-10.18)|20小时|120|使用for循环语句实现指定次数的循环|不能快速找出错误|
第五周(10.18-10.25)|16小时|130|编写函数|调试有点不熟悉|
第六周(10.25—11.1)|30小时|500|多分支结构、字符型数据类型和逻辑运算符|表达式的定义,上面的表达式好像是算术表达式,好像其它类型的表达式,认识得不清楚|
第七周(11.1—11.8)|35小时|700|多分支结构switch语句|数组的使用|
第八周(11.9—11.16)|32小时|400|熟悉使用while和do-while结构|字符串的使用
第九周(11.16—11.22)|26小时|300|熟悉break、continue的使用|指针的使用
第十周(11.22—11.29)|30小时|600|循环结构的程序设计,涉及到多个典型算法|指针的概念
第十一周(11.29—12.5)|6小时|200|掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型|无|
3.2累积代码行和博客字数
3.3 学习总结
3.3.1学习内容总结
3.3.2学习体会
pta的难度越来越快,必须重视起来,不能像以前一样,临到结束的时候,再去做。