C语言作业I博客作业05

C语言I博客作业05

  • 这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/9825
    我在这个课程的目标是 学会自定义一个函数,了解其基本用法
    这个作业在那个具体方面帮助我实现目标 自定义函数的使用,阶乘函数的编译
    参考文献 《C语言程序设计》《PTA实验指导》百度百科

1.PTA实验作业

1.1 水仙花数判断

题目内容描述

本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=1^3+5^3+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.

函数接口定义:
int func(const int N);
其中N是用户传入的参数。N的值不超过int类型的范围。如果参数N是水仙花数,则返回1,否则返回0。

1.1.1数据处理

  • 数据表达:用了sum和x等整形变量,给x定义赋值。
  • 数据处理:表达式为sum += (x % 10) * (x % 10) * (x % 10),开始输入n,通过函数func,判断是否为是否为素数,是则输出1,否则输出0.
  • 函数参数:主调函数的名称main,被调函数的名称func,被调函数的类型为整型,为形参。

    1.1.2实验代码截图

    1.1.3 造测试数据

  • 输入数据 输出数据 说明
    50 0 不是素数
    100 0 不是素数
    153 1 是素数
    0 1 不符合代码条件

    1.1.4 PTA提交列表及说明

    提交列表说明:

    1.编译错误:在int func(const int n)后多加了个分号,if (sum == n)只写了一个=,还有多处没空格。
    2.答案错误:return 0和return 1弄反了 ,改正后答案正确。

    1.2 求组合数

    数据内容描述

    本题要求编写程序,根据公式C​n​m=m!(n−m)!​n!
    ​​ 算出从n个不同元素中取出m个元素(m≤n)的组合数。
    建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。
    输入格式:
    输入在一行中给出两个正整数m和n(m≤n),以空格分隔。
    输出格式:
    按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。

    1.2.1 数据处理

  • 数据表达:定义了a,x,y,m,n,等变量,定义一个fact函数。
  • 数据处理:表达式为y=fact(n-m);m=fact(m);n=fact(n);x=n/(m*y);开始时输入x,y,m,n,在定义fack函数。
  • 函数参数:主调函数的名称main,被调函数的名称fact,被调函数的类型为整型,为实参。

    1.2.2 实验代码截图

    1.2.3 造测试数据

  • 输入数据 输出数据 说明
    0 5 1 m=0,n=5时的运行结果
    5 10 252 m=5,n=10时的运行结果
    10 15 3003 m=10,n=15时的运行结果
    15 20 15504 m=15,n=20时的运行结果

    1.2.4 PTA提交列表及说明

    提交列表说明:

    1.编译错误:在printf("result = %.0lf",x);中%。0lf的0未写,导致编译错误。
    2.答案错误:这句x=n/(my);写成了x=m/(ny),这属于代码与题目不符。
    3.答案错误:在最后printf函数中输出了y,而应该是输出x。

2.代码互评

同学代码截图

自己代码截图

  • 1.他引用了五个变量,而我只用了两个变量,变量应该少一点较好。
    2.在我的代码中引用了一个while的函数,使代码变得更加简洁。
    3.他的代码直接用nnn的方式,感觉更加简便。

    同学代码截图

    自己代码截图

  • 1.整体来看两份代码格式差不多,他的代码虽然更短,但也更复杂。
    2.我的代码中用了for语句,恰到好处。很简单,但很实用。
    3.他在代码中用了数学函数pow,用的很好。但我的代码就用了int函数。

    3.学习总结

    3.1 学习进度条

  • 周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    3/10 8-10 11 12h 90
    4/10 15-10 18 20h 70 学会了for语句,对整体也更加了解 double和int还是有点分不清
    5/10 22-10 26 15h 88 学会了调用一个自定义函数 对自定义函数的概念还很模糊

    3.2 累积代码行和博客字数.


3.3 学习内容总结和感悟

3.3.1 学习内容总结

3.3.2 学习体会

本人对本周的学习内容略感较难,上课的时候听的很认真,也听得懂,感觉上是回会了,但是当我看了一下作业之后才发现,我太天真了,是真心看不懂,也就第一题还会,后面那几个题目对我来说还是有点小难。但是经过我的奋斗,还是艰难的完成了作业。

猜你喜欢

转载自www.cnblogs.com/zzh6/p/11735075.html