博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C语言博客作业--函数
阅读量:5297 次
发布时间:2019-06-14

本文共 2389 字,大约阅读时间需要 7 分钟。

一、PTA实验作业

题目1:使用函数输出水仙花数

1. 本题PTA提交列表

1233778-20171118161115374-2023576597.png

2.设计思路

-水仙花数判断(int narcissistic( int number )):
  • 1.计算接收的数字number的位数,即幂数 for(i=number;i>0;i/=10) n++;
  • 2.计算各位数的n次幂之和 (i=number;i>0;i/=10) sum+=pow(i%10,N);
  • 3.当各位数n次幂之和sum==number,返回1,否则返回0;
-打印m到n之间的水仙花数:
  • 调用narcissistic()函数判断m到n之间的各数是否为水仙花数,输出其间所有水仙花数for(v=m+1;v<=n-1;v++) if(narcissistic(v)) printf("%d\n",v);

3.本题调试过程碰到问题及PTA提交列表情况说明。

  • 无问题.

题目2:求组合数

1. 本题PTA提交列表

1233778-20171118162435749-170589852.png

2.设计思路

-定义fact()函数计算阶乘:
  • 定义初始化为1的变量flag
  • 计算并返回接收数字的阶乘 for(int i=1;i<=x;i++) fact*=i; return fact;
-主函数:
  • 定义变量m,n.输入m和n
  • 输出组合数result = fact(n)/( fact(m)*fact(n-m) ).

3.本题调试过程碰到问题及PTA提交列表情况说明。

  • 无问题

题目3:使用函数验证哥德巴赫猜想

1. 本题PTA提交列表

1233778-20171118163651984-118823046.png

2.设计思路

-定义prime()函数判断素数:
  • for(int i=2;i<=sqrt(num);i++) if(p%i==0) break;

    if(i>sqrt(num)&&num!=1) return 1;
    return 0;

    -输出分解式
  • 1.定义其中一个因子为p,则另一个因子为n-p
  • 2.循环判断p及num-p是否都为素数.
  • 3.因要求输出所有解中p最小的解,初设p为3,每完成一次循环p+=2
  • 4.当满足条件时,输出n=p+(n-p). 并退出循环

    if(prime(p))
    if(prime(n-p))
    {
    printf("%d=%d+%d",n,p,n-p);
    break;
    }

3.本题调试过程碰到问题及PTA提交列表情况说明

1233778-20171118232300312-410163216.png

一开始判断条件写错 p != 1 写成 i != 1导致输出全错. 改正后解决问题.

二、同学代码结对互评

1.同学互评照片。

1233778-20171118232748234-421293835.png

2.我的代码、互评同学代码截图

我的代码int fib( int n ){    int flag,flag1=1,flag2=1;    if(n==1||n==2) return 1;    for(int i=3;i<=n;i++)    {        flag=flag1+flag2;        flag1=flag2;        flag2=flag;    }    return flag;}void PrintFN( int m, int n ){    for(int u=1;fib(u)<=n;u++){        if(fib(u)>=m){            printf("%d",fib(u));            if(fib(u+1)>n) return ;            printf(" ");        }    }    printf("No Fibonacci number");}
陈文杰的代码int fib( int n ){    int count=0,total=0,middle=0,i;    for(i=1;i

3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出来哪里出问题。

  • 陈文杰用judge变量判断是否存在Fibonacci数.我的代码中,一旦满足m<=fib(u)<=n,即存在Fibonacci数时,函数便只会在循环内结束调用,否则将在循环结束时输出No Fibonacci number并结束函数调用.
  • 我更喜欢我的代码.

    三、截图本周题目集的PTA最后排名。

    1233778-20171118221323734-845251251.png

    四、本周学习总结

    1.你学会了什么?

    1.1 C语言哪数据类型?

  • 空类型(void); 整型(int),短整型(short),长整型(long); 单精度浮点型(float),双精度浮点型(double); 字符型变量(char).

1.2 字符型数据需要注意地方?

  • 字符型变量的输入只能接收一个字符.
  • 可以输出为整型或浮点型.
  • 可以用转义字符的方式输入.

1.3 自增自减运算符?

  • 自增(自减)运算符为单目运算符.即只需要一个变量.
  • 运算符:++(--)能使变量的值增加(减少)1
  • 如果运算符前置,则先运算再对表达式赋值;如果后置,则先对表达式赋值再进行运算.

1.4 运算符优先级?

1233778-20171118230734015-267532512.png

1.5 C语言哪些表达式?课堂派哪里做错,做错的请在这里分析原因?

  • 算术表达式(+ - * /)
  • 关系表达式(> >= < <= == !=)
  • 赋值表达式(-= += *= /= %= =)
  • 条件表达式:exp?:exp1,exp2; 当exp为真时,表达式的值为exp1的值,否则为表达式2的值.
  • 逗号表达式:表达式1,表达式2...表达式n 其表达式的值为表达式n的值.
  • 逻辑表达式:!,&&,||

2.本周的内容,你还不会什么?

  • 基本理解.

3.循环结构考试总结

  • 做第五题的时候有点急,改来改去发现在第一次提交的代码中加入一些判断就可以通过.
  • 本次考试结果能接受.
posted on
2017-11-19 00:01 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/wu98/p/7857217.html

你可能感兴趣的文章
php server port,$_SERVER[‘SERVER_PORT’]关于php5.2一个bug
查看>>
php 类 init,PHP内核探索:类的定义
查看>>
java的二叉树树一层层输出,Java构造二叉树、树形结构先序遍历、中序遍历、后序遍历...
查看>>
meep php,麻省理工时域差分软件 MEEP windows 下编译开发(一)——准备工作
查看>>
matlab的清除0,matlab中的平均值clear %清除变量dx=0.01*2*pi; %间隔x=0:dx:2*pi; %自变量向量y=...
查看>>
php 循环套 重复,php 循环套循环 出现重复数据
查看>>
mysql distince,MySQL学习(未完待续)
查看>>
php libevent 定时器,PHP 使用pcntl和libevent实现Timer功能
查看>>
对数字进行 混淆 php,解密混淆的PHP程序
查看>>
zencart不支持php7的原因,Zen Cart1.3.8产品页报错提示:Deprecated: Function ereg_replace() is deprecated...
查看>>
php仿阿里巴巴,php实现的仿阿里巴巴实现同类产品翻页
查看>>
matlab fis编辑器在哪,基本FIS编辑器
查看>>
linux的串口子系统,TTY子系统
查看>>
linux查看cpu目录,linux常用命令-查看cpu、内存、磁盘和目录空间
查看>>
修改linux远程22端口,linux修改ssh远程端口22
查看>>
Linux系统的创始者,组图:Linux之父的办公室首度曝光
查看>>
ubuntu18.04运行linux,如何在 Ubuntu 18.04 上安装 Postman
查看>>
关于linux的环境变量设置,linux环境变量设置
查看>>
linux查看内存和硬盘,Linux 查看内存,CPU及硬盘大小的步骤
查看>>
linux下tcp ip的配置,linux下配置TCP/IP的几种方法
查看>>