目录

7-1 递归实现顺序输出整数:

7-2 递归求简单交错幂级数的部分和:

7-3 出生年:

7-4 近似求PI:


7-1 递归实现顺序输出整数:

-本题要求实现一个函数,对一个整数进行按位顺序输出。

-本题要求实现一个函数,对一个整数进行按位顺序输出。

-函数接口定义:

void printdigits( int n );

-函数printdigits应将n的每一位数字从高位到低位顺序打印出来,每位数字占一行。

-裁判测试程序样例:

#include <stdio.h>void printdigits( int n );int main()
{int n;scanf("%d", &n);printdigits(n);return 0;
}/* 你的代码将被嵌在这里 */

-输入样例:

12345

-结尾无空行

-输出样例:

1
2
3
4
5

-解答-

​
void printdigits( int n ){if(n<10) printf("%d\n",n);else{printdigits(n/10);printf("%d\n",n%10);}
}​​

7-2 递归求简单交错幂级数的部分和:

-本题要求实现一个函数,计算下列简单交错幂级数的部分和:

-f(x,n)=x−x2+x3−x4+⋯+(−1)n−1xn

-函数接口定义:

double fn( double x, int n );

-其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。建议尝试用递归实现。

-裁判测试程序样例:

#include <stdio.h>double fn( double x, int n );int main()
{double x;int n;scanf("%lf %d", &x, &n);printf("%.2f\n", fn(x,n));return 0;
}/* 你的代码将被嵌在这里 */

-输入样例:

0.5 12

-输出样例:

0.33

-解答1(函数法)-

double fn( double x, int n){if( n== 1) return x;elsereturn pow(-1,n-1)*pow(x,n)+fn(x,n-1);
}

-解答2(计算找规律法)-

//n=1,f(x,1)=x;
//n=2,f(x,2)=x-x*x=x*(1-x);
//n=3,f(x,3)=x-x*x+x*x*x=x*(1-x+x*x)=x*(1-x*(1-x));
//即,n=i时,f(x,i)=x*(1-f(x,i-1));    (i>1,i属于N) double fn( double x, int n ){if(n==1) return x;else return x*(1-fn(x,n-1));
}

7-3 出生年:

-以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不相同的年份。”也就是说,直到2013年才达到“4个数字都不相同”的要求。本题请你根据要求,自动填充“我出生于y年,直到x岁才遇到n个数字都不相同的年份”这句话。

-输入格式:

-输入在一行中给出出生年份y和目标年份中不同数字的个数n,其中y在[1, 3000]之间,n可以是2、或3、或4。注意不足4位的年份要在前面补零,例如公元1年被认为是0001年,有2个不同的数字0和1。

-输出格式:

-根据输入,输出x和能达到要求的年份。数字间以1个空格分隔,行首尾不得有多余空格。年份要按4位输出。注意:所谓“n个数字都不相同”是指不同的数字正好是n个。如“2013”被视为满足“4位数字都不同”的条件,但不被视为满足2位或3位数字不同的条件。

-输入样例1:

1988 4

-输出样例1:

25 2013

-输入样例2:

1 2

-输出样例2:

0 0001

-解答(此处没使用函数)- 

#include <stdio.h>
int main(){   int bir[4];int year, n;   scanf("%d%d",&year, &n);int i, count = 0;   for(i=year; i<3020; i++){//考虑到输入的是出生年份,作为界限的目标年份未知,取i<3020(其实经过检测上界限为3012)       count = 1;       bir[0] = i/1000;bir[1] = i/100%10;       bir[2] = i/10%10;       bir[3] = i%10;//转化成数字if(bir[0] != bir[1] && bir[0] != bir[2] && bir[0] != bir[3]) count++;      if(bir[1] != bir[2] && bir[1] != bir[3]) count++;        if(bir[2] != bir[3]) count++;//要求各项比较为异时记录数递加if(count == n) break;
}   printf("%d %04d", i-year, i);
}

7-4 近似求PI:

-本题要求编写程序,根据下式求π的近似值,直到最后一项小于给定精度eps。

-2π​=1+31!​+3×52!​+3×5×73!​+⋯+3×5×⋯×(2×i+1)i!​+⋯

-输入格式:

-输入在一行中给出精度eps,可以使用以下语句来读输入:

scanf("%le", &eps);

-输出格式:

-在一行内,按照以下格式输出π的近似值(保留小数点后5位):

PI = 近似值

-输入样例:

1E-5

-输出样例:

PI = 3.14158

-解答-

#include<stdio.h>
int main(void){double i=1;double eps,sum=0,re=1;scanf("%le", &eps);while(re>=eps){sum = sum + re;re = re * i/(2*i+1);i = i + 1;}sum = sum + re;printf("PI = %.5f",2*sum);return 0;
}

11.10错题集(7-函数)相关推荐

  1. C语言练习题的错题集

    @C语言练习题错题集 判断题错题集 1.在对数组全部元素赋初值时,不可以省略行数,但能省略列数. 对于数组来说,列数是不可以省略的,相反的可以省略行数. 2.数组名就是一个指针常量,指向数组的首元素( ...

  2. golang的个人学习笔记以及错题集

    主要参考对象 https://docs.microsoft.com/zh-cn/learn/paths/go-first-steps/ https://tour.go-zh.org/ 安装 https ...

  3. 《考研计算机专业基础综合考试解析配套1000题》错题集20155314刘子健

    <考研计算机专业基础综合考试解析配套1000题>错题集 By20155314刘子健 目录 数据结构部分 第一章 线性表 第二章 栈.队列和数组 第三章 树与二叉树 第四章 图 第五章 查找 ...

  4. Python错题集(贰)

    1.编写一个函数,接收一个字符串,分别统计大写字母,小写字母,数字,其他字符的个数, 并以元组的形式返回结果 def calculation(num):capital=little=digit=oth ...

  5. C语言易错题集 第二部

    C语言易错题集后续 一.共用体相关(union) 二.do,while相关 三.char溢出相关 四.printf()相关 五.++相关 六. for语句相关 七.calloc()相关 八.defin ...

  6. 阿里云ACP云计算错题集1-40

    大家都来考个阿里云ACP认证吧,这里是阿里云ACP云计算错题集1-40,powered by zhengkai.blog.csdn.net. 1.在阿里云上创建专有网络VPC时,VPC会自动为用户创建 ...

  7. 一本好的“错题集”如何做?看这里

    <错题本>制作 每个人肯定都有听说,错题本对高考到底多么多么有用,对我们的复习多么多么有用.但是问题也来了,做错题本好像要用我们很多的时间,可能做完了还空看,那怎么办呢?今天本车从做错题本 ...

  8. PMP备考-错题集(第6版)

    这是我自己备考过程中,记录的错题集. 1. [单选] 作为你们公司项目办公室的经理,你必须经常判定哪些项目应该得到额外的资源.你还要建议哪些项目应该启动.继续进行或取消.有利于你做出这些决策的一个方法 ...

  9. 计算错题集(有错误就加入错题集,持续更新)

    VASP计算错题集   万事开头难,学习第一性原理计算的一年中碰到了很多让我困惑的问题,在这里总结整理出来(随时更新),防止师弟师妹们陷入困惑,真的很让人头大,并且超级费时间,希望能帮助避雷!如果师弟 ...

最新文章

  1. JAVA_Java常用核心包(概念)
  2. 人工智能免费公开课一网打尽!14个类别、230门课程,GitHub标星6000+
  3. Spring学习篇:IoC知识整理(一)
  4. 四十七、微信小程序开发页面结构WXML
  5. 王小川 python_Python与量化投资:从基础到实战
  6. 北邮计算机学院崔哲域,邂逅北邮 是最美的期待—北京邮电大学2019级本科生开学典礼采访纪实...
  7. 秒杀核心设计(减库存部分)-防超卖与高并发
  8. NGINX基于Tomcat配置负载均衡
  9. SpringBoot通用的敏感词拦截
  10. linux zip unzip 命令
  11. 选课系统软件功能测试报告,学生选课系统测试报告.doc
  12. 介绍几款低代码生成器,神器
  13. 彻底清除 mplay.com与mplay.exe病毒
  14. PAT乙级10015题——C语言
  15. 多块英伟达K80显卡linux安装,ubuntu14.04下NVIDIA Tesla K80 、GTX1080顯卡驅動以及Tensorflow、Python的安裝教程...
  16. IDEA 没识别 resources(找不到 resources)
  17. php毫米级监控,监控镜头毫米数与距离对照表
  18. python自动生成采集规则_快速制作规则及获取规则提取器API
  19. SkyWalking--告警--使用/教程/示例
  20. Jenkins部署Git项目

热门文章

  1. 二叉树的先序遍历和非递归遍历
  2. 二叉树 二度节点和叶子节点之间的数量关系
  3. 文巾解题 面试题 01.01. 判定字符是否唯一
  4. Linux疑难杂症解决方案100篇(一)-静态链表全解析
  5. MATLAB自定义函数及局部变量
  6. Anaconda 查找安装的环境,以及移除旧环境命令
  7. Python编程基础:第六节 math包的基础使用Math Functions
  8. Docker run 命令【转】
  9. 记住,永远不要在MySQL中使用“utf8”-转
  10. Netflix正式开源其API网关Zuul 2--转