C语言I作业11


问题 答案
这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10127
我在这个课程的目标是 熟练用C语言编程
这个作业在那个具体方面帮助我实现目标 各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型
参考文献 百度

四、作业格式

1.PTA实验作业(20分/题)

请再此处列出自己的排名图片,如:

从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分),内容要求如下:

1.1 题目名16-1 统计某类完全平方数 (20分)

本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。
函数接口定义:
int IsTheNumber ( const int N );
其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。
裁判测试程序样例:

include <stdio.h>

include <math.h>

int IsTheNumber ( const int N );

int main()
{
int n1, n2, i, cnt;

scanf("%d %d", &n1, &n2);
cnt = 0;
for ( i=n1; i<=n2; i++ ) {
    if ( IsTheNumber(i) )
        cnt++;
}
printf("cnt = %d\n", cnt);

return 0;

}

1.1.1数据处理

介绍实现本题过程中,你的数据表达、数据处理是怎么做的。注意:请务必按照以下方式书写。
数据表达:用了哪些变量,这些变量的值是怎么来的,类型是什么。
数据处理:数据用到的表达式和流程结构。请用伪代码表示
数据表达:变量n i k N,这些变量的值是由int定义来的,类型是整点型变量。
数据处理:表达式 m = i * i;m == N int k = 0; k < div; k++n % 10 == k if-else while for循环

伪代码

先把接头打出
然后给出所有变量。
再根据各个条件,通过if while for语句。判定条件满足与否
然后用多个if循环对条件进行细分。
然后再用return 1 再次循环返回上层。
最后再输出格式。
最后在return 0。

1.1.2实验代码截图

1.1.3 造测试数据

输入 输出 说明
105 500 cnt = 6 用户输入的数中有6个满足条件
11 12 cnt = 0 用户输入的数中有0个满足条件
16 100 cnt = 0 用户输入的数中有1个满足条件

1.1.4 PTA提交列表及说明


提交列表说明:有部分错误是在c++中,并在此一一列出。
答案错误 不理解该输出的顺序。最终在最后return 0这里出现了问题。我本想为return 1。
编译错误 在接头定义时出现问题。与上面的定义不符。大小写问题。
答案错误 k的起始值定义错误。
答案错误 本来需要取余的。结果把百分号写成了&
部分错误 在最后一个if中出现了问题 ==少写了一个=

1.2 题目2

6-2 统计各位数字之和是5的数 (20分)

本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。
函数接口定义:
int is( int number );
void count_sum( int a, int b );

1.2.1 数据处理

数据表达:用了哪些变量,这些变量的值是怎么来的,类型是什么。
数据处理:数据用到的表达式和流程结构。请用伪代码表示
数据表达:用了x i b a sum number变量,这些变量由int定义来的,类型是整点型。
数据处理:数据用到的表达式 sum += x % 10;x /= 10;i <= b; i++ count++;sum += i;流程结构为if-else for while循环结构

伪代码

通过接口处进行接int is (int number)
根据条件用while判断满足条件的数
然后再用for循环,把每一个数都判断出来,最后储存。
然后在输出格式。
最后返回上层打印出来。

1.2.2 实验代码截图

1.2.3 造测试数据

输入 输出 说明
104 999 有15个满足条件的数
100 1000 有15个满足条件的数
1 1000 有21个满足条件的数

1.2.4 PTA提交列表及说明

特别说明,有部分错误在c++中,并在此一一列出。
编译错误 While循环语句中出现问题。x/=10错误。
答案错误 也同样是在个这个while循环中。本来是要写return 1的写为return 0了。不明确循环的目的。
答案错误 count自增时出现问题。后面的分号忘记打了。
编译错误 Print最后输出时少了一个分号。

2.代码互评(5分)

找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图

自己代码截图

if else for循环语句中条件不同。在比较时输出也不同。
在判断一个整数是完全平方数时。判断条件的顺序不尽相同。
for (int k = 0; k < div; k++)
同学代码截图

自己代码截图



在这个for语句中。在对i进行赋值时,出现了不同。
在写sum=sum+i时其实意义是相同的。也并没有什么更高级之分。不过也就那样。

3.学习总结(15分)

3.1 学习进度条(5分)

日期 这周所花时间 代码行 学到的知识点简介 目前比较迷惑的地方
9/16~9/22 两天 30 在屏幕上显示hello Word! 编程操作
9/23~9/30 两天半 100 求华氏温度对应的摄氏温度 运算符不理解
10/7~10/12 四天 240 计算分段函数 不理解为什么要那样打,有些东西代表的含义
10/14~10/18 8个小时 310 使用for循环语句实现指定次数的循环程序设计 还是有很多代码,不知道什么意思,为什么要这么打?
10/23~10/26 10小时 420 生成乘方表和阶乘表,对函数的定义和调用有初步的认识,能模仿编程 部分运算符的运算顺序。
10/28~11/02 八个小时 640 熟悉分支结构,字符型数据类型和逻辑运算符 分支结构的类型。运算逻辑符的运算顺序
11/5~11/8 6个小时 740 写伪代码 使用switch语句 部分使用条件
11/12~11/16 8小时 830 使用while和do-while结构解决问题 嵌套关系与顺序
11/20~11/22 6小时 1020 熟悉使用循环的嵌套解决问题 嵌套关系与顺序
11/27~11/29 6小时 1200 能够根据实际情况,选择合适的算法、合理的循环结构,熟练的编写程序 不知如何选择合适的算法,部分算法不理解
12/4~12/6 5小时 1304 掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型 不怎么熟悉变量的作用域、生存周期和存储类型

3.2 累积代码行和博客字数(5分)

3.3 学习内容总结和感悟(5分)

3.3.1 学习内容总结

3.3.2 学习体会||

我真的不知道说什么好了。我懂得C语言之所以衰败的缘由了。沉默和沉默呵,不在沉默中爆发,就在沉默中灭亡。总需要人在前面做铺垫。才能成就美好的未来。为了使老师能够更好地了解我们,我们必须给他一点颜色。老师你真的把我们当神仙了是吗?您真的认为我们这么优秀吗?如果你真的这么想的话,那你就大错特错了。我在这里仅代表我个人,让你能够更加清楚的了解到我们。其实我们就是菜鸟。可能连菜鸟都算不上我。好的,我的学习体会就这么多了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM