zoukankan      html  css  js  c++  java
  • C语言I博客作业05

    这个作业属于那个课程
    这个作业要求在哪里
    我在这个课程的目标是
    这个作业在那个具体方面帮助我实现目标
    参考文献

    1.PTA实验作业

    1.1 水仙花数判断

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

    • 函数接口定义:
    int func(const int N);
    

    其中N是用户传入的参数。N的值不超过int类型的范围。如果参数N是水仙花数,则返回1,否则返回0。

    • 输入样例:
    153
    
    • 输出样例:
    1
    

    1.1.1数据处理

    数据表达:定义sum,x为整型变量,sum是用sum += (x % 10) * (x % 10) * (x % 10)计算每个数立方的和,由于N不可变,就把值赋给了x

    数据处理

    函数参数:主调函数的名称main,被调函数的名称func,被调函数的类型为整型,形参N。

    1.1.2实验代码截图

    1.1.3 造测试数据

    输入数据 输出数据 说明
    153 1 素数
    100 0 不是素数
    0 1 代码条件不够充分

    1.1.4 PTA提交列表及说明

    1.运行超时:被调函数进入了死循环,把循环定义成了N,N一直不变循环就一直进行下去,把N改成x
    

    1.2 使用函数验证哥德巴赫猜

    本题要求实现一个判断素数的简单函数,并利用该函数验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇素数之和。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。

    函数接口定义:

    int prime( int p );
    void Goldbach( int n );
    

    其中函数prime当用户传入参数p为素数时返回1,否则返回0;函数Goldbach按照格式“n=p+q”输出n的素数分解,其中p≤q均为素数。又因为这样的分解不唯一(例如24可以分解为5+19,还可以分解为7+17),要求必须输出所有解中p最小的解。
    输入样例:

    89 100
    

    输出样例:

    89 is a prime number
    90=7+83, 92=3+89, 94=5+89, 96=7+89, 98=19+79
    100=3+97, 
    

    1.2.1数据处理

    数据表达:函数prime定义变量,i为整型,函数Goldbach定义p,s为整型。
    数据处理

    函数参数:主调函数main,被调函数primeGoldbach,被调函数prime为整型,定义的形参,被调函数Goldbach为空,定义的形参。

    1.2.2实验代码截图

    1.2.3 造测试数据

    输入数据 输出数据 说明
    89 100 89 is a prime number 89是素数
    0 0 直接结束

    1.2.4 PTA提交列表及说明

    1.部分正确:函数Goldbach循环条件不正确,while的条件我是写的p-q,后面改成prime(s) != 1 || prime(p) != 1。
    2.部分正确:函数prime条件没有满足素数的要求,没有考虑1不是素数和2,3是素数。
    3.部分正确:函数prime条件没有考虑小于0.
    

    2.代码互评

    同学代码截图

    自己代码截图

    • 1.他是把一个数的各位都先求出来,再求值,我是利用循环求余一次循环求一个值的3次方。
    • 2.他用了函数pow,我是直接一个是成了3个。
    • 3.我是用循环求的,要改4位数5位数比较简单,他的想改就的重写。
    • 4.他定义i为返回的值,我是直接判断是素数直接返回1,不是就返回2。

    同学代码截图

    自己代码截图

    • 1.函数Goldbach我用的是while循环,他用的是for循环,他是先判断p是不是素数,在判断q,我是直接用了||直接用一个判断条件写出来。
    • 2.函数prime要的条件是一样的,但我写的没他的简便。
    • 3.他的函数prime简便,我的函数Goldbach简便,我们要学习各自的优点。

    3.学习总结

    1.3.1 学习进度条

    1.3.2 累积代码行和博客字数

    1.3.3 学习内容总结和感悟

    1.3.3.1 学习内容总结

    1.3.3.2 学习体会

    • 学习c语言一个多月了,越是学的多越难,现在学到函数,感觉比之前的要难好多,网上经常说c语言从入门到入土,但是我觉得越是难的我越是想要解决他,我们在部队有一句口号经常喊只要思想不滑坡,办法总比困难多,这次学习总结:
      1.函数分为库函数和自定义函数
      2.库函数是能直接调用的函数,而自定义的函数要自己去定义它的功能
      3.使用函数,能够把一个程序分成一块一块的,每一块的功能都不一样,这有利于编程,主函数是用来汇总这些分支的,把功能都整合到一起。
  • 相关阅读:
    系统设计实现
    反编译
    android layout analyze
    2016.7.20-notes
    如何认识刘昊然?
    leetcode-中等-队列-二叉树的层次遍历
    leetcode-简单-栈-逆波兰表达式
    leetcode-简单-栈-有效的括号
    队列-链式队列
    队列-循环队列-顺序存储
  • 原文地址:https://www.cnblogs.com/laotun/p/11723006.html
Copyright © 2011-2022 走看看