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.使用函数,能够把一个程序分成一块一块的,每一块的功能都不一样,这有利于编程,主函数是用来汇总这些分支的,把功能都整合到一起。
  • 相关阅读:
    leetcode5 Longest Palindromic Substring
    leetcode17 Letter Combinations of a Phone Number
    leetcode13 Roman to Integer
    leetcode14 Longest Common Prefix
    leetcode20 Valid Parentheses
    leetcode392 Is Subsequence
    leetcode121 Best Time to Buy and Sell Stock
    leetcode198 House Robber
    leetcode746 Min Cost Climbing Stairs
    tomcat下使用druid配置jnid数据源
  • 原文地址:https://www.cnblogs.com/laotun/p/11723006.html
Copyright © 2011-2022 走看看