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

    问题 答案
    这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 C语言I博客作业05
    我在这个课程的目标是 熟练掌握C语言
    这个作业在哪个具体方面帮助我实现目标 学会了如何去定义一个函数
    参考文献 Markdown基本语法思维导图

    一.PTA实验作业

    1. 判断一个整数的各位数字平方之和能否被5整除

     题目内容描述:编写函数fun,其功能是:判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
    
    函数接口定义:
     int fun(int n );
    

    其中 n 是用户传入的参数。 函数判断n的各位数字平方之和能否被5整除,能被5整除则返回1,否则返回0。

    裁判测试程序样例:
     #include <stdio.h>
     int fun( int n );
    
     int main()
     {
           int m;
           scanf("%d", &m);
           printf("The result is %d\n", fun(m));
           return 0;
     }
    
     /* 你的程序将被嵌入在这里 */
    
    输入样例:
     12
    
    输出样例:
     The result is 1
    
    输入样例:
     123
    
    输出样例:
     The result is 0
    

    (1)数据处理

     数据表达:用了整形变量S,i,n;n 是用户传入的参数,S来保存n的各位数字平方之和,i用来保存要输出的结果。
     数据处理:用了while语句和if-else语句,用了表达式S+=((n%10)*(n%10))。
     函数参数:主函数的名称为main,被调函数的名称为fun,类型为整形。实参为整形m,形参为整形n。
    

    (2)实验代码截图

    (3)造测试数据

    输入数据 输出数据 说明
    0 The result is 1 当n=0时
    1 The result is 0 当n=1时
    86 The result is 11 当n为较大数时

    (4)PTA提交列表及说明

    提交列表说明

     1.编译错误:第一次使用while语句不小心将while打为whhile。
    

    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最小的解。
    
    裁判测试程序样例:
     #include <stdio.h>
     #include <math.h>
    
     int prime( int p );
     void Goldbach( int n );
    
     int main()
      {
         int m, n, i, cnt;
    
         scanf("%d %d", &m, &n);
         if ( prime(m) != 0 ) printf("%d is a prime number\n", m);
         if ( m < 6 ) m = 6;
         if ( m%2 ) m++;
         cnt = 0;
         for( i=m; i<=n; i+=2 ) {
             Goldbach(i);
             cnt++;
             if ( cnt%5 ) printf(", ");
             else printf("\n");
         }
    
         return 0;
     }
    
     /* 你的代码将被嵌在这里 */
    
    输入样例:
     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)数据处理

     数据表达:用了整形变量flag,i;,i用于控制for循环的结束状态,flag用于贮存返回的值。
     数据处理:用了for循环和if判断语句。
     函数参数:主函数的名称为main ,被调函数的名称为prime,类型为整形。实参为整形n,形参为整形p。
    

    (2)实验代码截图

    (3)造测试数据

    输入数据 输出数据 说明
    79 90 79 is a prime number,80=7+73, 82=3+79, 84=5+79, 86=3+83, 88=5+83 90=7+83, 随机测试
    11 13 11 is a prime number 12=5+7, 随机测试

    (4)PTA提交列表及说明

    提交列表说明

     1.表示该题完全没有思绪,借鉴百度后才做出来,但是对于  if(p<2)return 0; if(p==2)return 1;还是不是很懂。
    

    二.代码互评

    同学(杨宇)代码:

    同学(柏朝晖)代码

    自己代码:

    比较

     (1)第一份用了while语句,而我的是直接赋值于a,b,c.她只用了2个变量来计算总数,而我用了4个变量,相对于我的,她的更好一些,因为她所需开辟的空间要少。
     (2)第二份直接将大括号打在for语句体的后面,而我是另取一行与回括的大括号对齐导致代码行数比这位同学多,而他更好的节省了空间。
    

    三.学习总结

    1.学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第四周/9.16~9.22 7小时 100行 在屏幕上显示Hello World! 暂无
    第五周/9.23~9.29 8小时 100行 求华氏温度对应的摄氏温度 暂无
    第六周/9.30~10.6 30小时 200行 如何用 MinGW-w64 来编译C程序 暂无
    第七周/10.7~10.13 24小时 300行 运用if语句完成各种数学程序 对于&&的用法不了解
    第八周/10.14-10.20 24小时 300行 学会了for循环语句 暂无
    第九周/10.21-10.28 24小时 300行 学会了如何去自定义一个函数 暂无

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

    3 .学习内容总结和感悟

    (1)学习内容总结

    (2) 学习体会

     感觉这一星期没有休息时间,游戏都没有时间玩了。虽然是忙了点,但是我觉得很充实,每天熬夜写作业是真的很快乐。别人都说大一很闲,我表示我们专业真的是太难了啊。每次C语言作业一布置下来我就没有资格早睡。希望慢慢的我做作业的速度越来越快。
  • 相关阅读:
    VIM 用正则表达式,非贪婪匹配,匹配竖杠,竖线, 匹配中文,中文正则,倒数第二列, 匹配任意一个字符 :
    中国科学院图书馆分类法
    让进程在后台可靠运行的几种方法 nohup,setsid,&,disown,CTRL-z ,screen
    Exception Handling Statements (C# Reference)
    ChannelFactory.Endpoint 上的地址属性为空。ChannelFactory 的终结点必须指定一个有效的地址。
    .NET中六个重要的概念:栈、堆、值类型、引用类型、装箱和拆箱
    WCF Host中的BaseAddress 和 Endpoint中的Address的区别
    使用vs自带的wcf配置工具
    Automatic Code Generation-->Implement Interface
    Learning WCF Chapter1 Exposing Multiple Service Endpoints
  • 原文地址:https://www.cnblogs.com/sunmengjiaoing/p/11717622.html
Copyright © 2011-2022 走看看