范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

C语言函数在线练习题3

  1. 杀鸡用牛刀(3级)1
  【题目描述】
  哈哈!我们终于学了递归了,现在大家一定感到非常有意思吧,那个典型的"汉诺塔"问题,一个非常短的程序居然可以完成如此复杂的工作,真是神奇啊!来吧,让我们也动手编写一个递归程序,当然,我们要编写的不可能太复杂。功能:从键盘录入两个数n和m来表示一个区间, n 为区间的起始点,m为区间的终止点 ,求整数 n 到 m 区间的累加和,其中n<=m。
  【输入】
  两个整数n和m。
  【输出】
  n 到 m 区间的累加和。
  【样例输入】
  1 100
  【样例输出】
  5050
  参考代码:#include int GetSum(int n,int m) { if(n==m) return n; else return (m+GetSum(n,m-1)); } int main() { int m,n,s; scanf("%d%d",&n,&m); s=GetSum(n,m); printf("%d ",s); return 0; }   2. 求最大公约数(3级)1   【题目描述】   请使用递归算法计算正整数n和m的最大公约数GCD(n,m)。   【输入】   两个整数n和m。   【输出】   两个整数的最大公约数。   【样例输入】   24 48   【样例输出】   24
  参考代码:#include "stdio.h" int Gcd(int n,int m) { if(m<=n&&n%m==0) {return m;} else if(n  【样例输出】   1
  参考代码:#include int Fun(int n) { if(n==1||n==2) {return 1;} else if(n%2!=0) {return (Fun(n-1)+Fun(n-2));} else {return (Fun(n-1)-Fun(n-2));} } int main() { int n; scanf("%d",&n); printf("%d ",Fun(n)); return 0; }   4. 富翁与骗子(3级)Y 1   【题目描述】   据说有个智商不高的富翁和一个智商较高的骗子。有一天骗子对富翁说:"我搞了一个基金会,你将短期不用的富余资金存到我这里吧。第一天你只需要存入一元,第二天存入两元,以此类推,以后每天存入的资金是前一天的2倍,直到若干天期满为止。与此同时,你可以每天最多支取一笔价钱不菲的金额。"俩人按照上述要求立字据,合约执行若干天后结束,到时两人互不相欠。   现要求编写两个函数Deposit()和Withdraw()分别计算富翁的存入和支取金额,并编写程序调用这两个函数判断骗子要想骗取富翁的金钱,合约需要执行的最少天数,以及骗子总共骗取的金钱数,其中通过输入获得富翁每天可以支取的最大金额数。其中录入数据格式要求有多行。第一行输入一个整数n,表示有n行测试数据。以下有n行数据,每行数据表示富翁每天可以支取的最大金额数amount(1<=amount<=1000000),单位为元。输出有n行。每行两个数据,第1个数据表示,骗子要想骗取富翁的金钱,根据富翁每天可以支取的最大金额数,判断出的合约需要执行的最少天数;第2个数据表示骗子所骗取的金钱数。   【输入】   有多行。第1行输入一个整数n,表示有n行测试数据。以下有n行数据,每行数据表示富翁每天可以支取的最大金额数amount(1<=amount<=1000000),单位为元。   【输出】   有多行。每行两个数据,第1个数据表示,骗子要想骗取富翁的金钱,根据富翁每天可以支取的最大金额数,判断出的合约需要执行的最少天数;第2个数据表示骗子所骗取的金钱数。   【样例输入】   2
  300000
  400000
  【样例输出】   23天骗取现金1488607元   24天骗取现金7177215元   参考代码:#include long long int Deposit(int n) { int i; long long int s=0,a=1; for(i=1;i<=n;i++) {s=s+a; a=2*a; } return s; } int Withdraw(int a,int b) { return a*b; } int main() { int n,i,day; int amount,dpt,wd; scanf("%d",&n); for(i=1;i<=n;i++) { scanf("%d",&amount); for(day=1;;day++) { dpt=Deposit(day); wd=Withdraw(day,amount); if(dpt-wd>0) { printf("%d天骗取现金%d元 ",day,dpt-wd); break; } } } return 0; }   5. Hanoi(汉诺)塔问题(3级)1   【题目描述】   汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子A、B、C,在一根柱子A座上有64个黄金圆盘(如图所示),盘子大小不等,大的在下,小的在上 。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放从A座移到在另一根柱子C座上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。且在移动过程中在3个座上始终保持大盘在下,小盘在上。在移动地程中可以行用B座柱子,要求编程序打印出移动的步骤。   有预言说,这件事完成时宇宙会在一瞬间闪电式毁灭。也有人相信婆罗门至今还在一刻不停地搬动着圆盘。   【输入】   一个整数n,表示有n个盘子。   【输出】   具体的移盘步骤。   【样例输入】   3
  【样例输出】   A--->C   A--->B   C--->B   A--->C   B--->A   B--->C   A--->C   参考代码:   #include void move(char getong,char putone) { printf("%c--->%c ",getong,putone); } void hanoi(int n,char one,char two,char three) { if(n==1) { move(one,three); } else { hanoi(n-1,one,three,two); move(one,three); hanoi(n-1,two,one,three); } } int main() { int n; scanf("%d", &n); hanoi(n, "A", "B", "C"); return 0; }   6. 数星星(2级)Y 3   【题目描述】   天空非常晴朗,外面很静很静,连小虫儿的鸣叫声都能听见。天就渐渐变黑了,天空中出现了一颗颗星星,它们一闪一闪的好像在眨着眼睛又好像在向我述说着什么似的。望着,望着,我就禁不住要数星星了,一颗,两颗,三颗,四颗,五颗……数着,数着,就分不清哪些数过了,哪些还没数过。你能帮忙数清天上有几颗星星吗?   【输入】   第一行有一个整数N(0< N<=100),接下来有N行N列字符。*代表星星,#代表天空。   【输出】   输出星星数。   【样例输入】   3
  #*#   ##*   ***   【样例输出】   5
  参考代码:#include #define N 100 void CountStars(char stars[][N], int w, int*count) { int i, j; *count = 0; for (i = 0; i <= w; i++) { for (j = 0; j <= w; j++) { if (stars[i][j] == "*") *count = *count + 1; } } } int main() { int w,i,j,count; char stars[N][N]; scanf( "%d", &w ); getchar(); //吸收回车符 for ( i = 0; i < w; i++ ) fgets( stars[i], 200, stdin ); CountStars( stars, w, &count ); printf( "%d ", count ); return 0; }   7. 日期转换(3级)Y 3   【题目描述】   2014年是一个平年,农历甲午年,所属生肖马。2014年年历如下图   现在已知2014年的第几天,计算出它是几月几日   【输入】   一个整数n,表示2014年的第几天。   【输出】   输出对应的是几月几日。   【样例输入】   173
  【样例输出】   6月22日   参考代码:#include void fun(int n,int *month,int *day) { int i,a[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; for(i = 1; i < 13; i ++) { n -= a[i]; if(n < 0) { *month = i; break; } } *day = n + a[i]; } int main() { int n,month,day; scanf("%d",&n); fun(n,&month,&day) ; printf("%d月%d日 ",month, day) ; return 0; }   8. 吃巧克力(2级)1   【题目描述】   2013年12月8日,ACM俱乐部的小武代表学校参加了在吉林大学举办的第38届ACM国际大学生程序设计竞赛现场赛,返校时带了一盒好吃又精美的巧克力给滨滨(盒内共有 N 块巧克力,20 > N >0)。   小武告诉滨滨每天可以吃一块或者两块巧克力。假设滨滨每天都吃巧克力,问滨滨共有多少种不同的吃完巧克力的方案。   例如:   如果N=1,则滨滨第1天就吃掉它,共有1种方案;   如果N=2,则滨滨可以第1天吃1块,第2天吃1块;也可以第1天吃2块,共有2种方案;   如果N=3,则滨滨第1天可以吃1块,剩2块;也可以第1天吃2块剩1块,共有2+1=3种方案;   如果N=4,则滨滨可以第1天吃1块,剩3块;也可以第1天吃2块,剩2块,共有3+2=5种方案。   【输入】   一个正整数N。   【输出】   滨滨吃巧克力的方案数目。   【样例输入】   4
  【样例输出】   5
  参考代码:#include #include int Func(int n) { int c=0; if(n==1) c=1; if(n==2) c=2; if(n>=3) c=Func(n-1)+Func(n-2); return c; } int main( ) { int n; scanf("%d",&n); printf("%d ",Func(n)); return 0; }   9. 兔子繁殖(2级)1   【题目描述】   一般的,兔子在出生一个月后就有繁殖能力。假设一对兔子(一雌一雄)每个月可繁殖出一对小兔子来,并且所有的兔子都不死,这样从第一个月开始在笼中圈养一对有繁殖能力的小兔子,那么month个月可以繁殖多少对兔子。   【输入】   一个正整数month(1 < month < 20)。   【输出】   可以繁殖的兔子对数。   【样例输入】   5
  【样例输出】   8
  参考代码:#include #include int Func(int n) { int c=0; if(n==1) c=1; if(n==2) c=2; if(n>=3) c=Func(n-1)+Func(n-2); return c; } int main( ) { int month; scanf("%d",&month); printf("%d ",Func(month)); return 0; }   10. 数组转置(1级)2   【题目描述】   编写函数,使输入的3*3的二维整型数组转置,即行列互换。   【输入】   一个3*3的二维数组。   【输出】   转置后的数组。   【样例输入】   1 2 3   4 5 6   7 8 9   【样例输出】   1 4 7   2 5 8   3 6 9   参考代码:#include #define N 3 int array [N][N]; void convert(int array[][3]) { int i,j,t; for(i=0; i
苹果iOS15这10大隐藏功能,真香快升级吧今天拿到货的朋友是不是已经玩得舍不得放下了?其实,你买的不只是全新的产品,还有让苹果设备活起来的软件。堪称苹果设备灵魂的,正是与新机一起来到的iOS15和iPadOS15。会用iO华为正式宣布,全球5g用户超4。9亿,华为新系统准备就绪今天,我给大家带来几个关于华为的好消。第一个好消息,相信大家都已经知道了。第二个好消息是,2021年,中国企业500强已经发布,华为在研发投资和专利方面排名第一。让我们马上看看排名确认了,华为要推自研编程语言仓颉!将用于鸿蒙和欧拉两大系统9月25日,华为推出了全新版本的OpenEuler操作系统,其专为数字基础设施而设计。同时,华为高管邓泰华在接受采访时表示,OpenEuler和OpenHarmony未来将共享能力科技早报华为双系统战略落地雷军设定拿下全球手机销量第一目标记者姜菁玲编辑雷军力争拿下全球手机销量第一的目标据中新视频,9月25日,在2021中关村论坛上,小米集团创始人董事长兼首席执行官雷军出席中关村论坛并发表演讲。雷军表示,2021年7骁龙888Plus拥有自研架构AdrenoGPU,面对高强度手游毫无压力最近这几年,手游产业一直处于上升趋势,几乎每个人的手机里都装着这么一两款好玩的游戏。大型游戏包括和平精英原神等,休闲小游戏如开心消消乐极品飞车。对于普通玩家来说,这些或大或小的手游腾讯应用宝,越过山丘欢迎各位回到霍格沃茨!如果要问近期最具存在感的游戏是什么,哈利波特魔法觉醒一定榜上有名。随着游戏在各平台上线,全网玩家都忙着学习魔法课程,一时间爷青回的感慨刷爆了朋友圈。而当机智的实体店在互联网中如何逆袭1。搭建实体宝App平台。一款可以连接店内高清摄像头的平台,可以实时在平台看到店内产品及提供的服务,可以在线沟通,只要上班开门把摄像头打开,就开始营业了,有顾客流览时会提醒店主接待提个问阿里腾讯打通之后,到底利好了谁?(本文首发于刘润公号,订阅刘润公号,和190万读者一起洞察商业本质)前段时间,工信部召开行政指导会,要求包括腾讯阿里在内的互联网企业,限期(9月17日前)停止屏蔽网址链接行为,否则20。8!软件产业快速发展,折射数字中国哪些新变化?新华社北京9月26日电题20。8!软件产业快速发展,折射数字中国哪些新变化?新华社记者张辛欣工信部最新数据显示,1月至8月,我国软件业完成软件业务收入59710亿元,同比增长20。事关尊严,我不会让华为和中国蒙羞!1028天后孟晚舟安全归来任正非在1028天的非法拘押之后,华为高级副总裁孟晚舟终于在国庆节前安全归国。从1987年创立华为以来,任正非经历过无数困难和危机,但或许没有一次困难会比这一次更严重。任正非曾经一5G大数据人工智能看看现代交通的创新元素新华社北京9月27日电题5G大数据人工智能看看现代交通的创新元素新华社记者叶昊鸣周圆推动交通运输行业高质量发展,离不开科技创新的战略支撑和科研攻关的持续推进。近些年来,5G大数据人
起步即巅峰?vivo首款平板暗藏玄机最近一段时间,vivo的大动作着实不少,前有NEX系列并入X系列,NEX系列的探索创新意志完全由X系列继承,后有vivoX80系列vivoXNotevivoXFold三大新品已经准平安集团以423件专利申请数排名2022全球隐私计算专利排行榜第二近日,全球知识产权综合信息服务提供商IPRdaily与incoPat创新指数研究中心联合发布全球隐私计算技术发明专利排行榜(TOP100)。截止2022年3月8日,入榜前十名企业主Charationalinvestment在下一个城市的中国基金排行榜上大举登场如果有一位像英国管家一样聪明的投资顾问,既绅士又值得信赖,能够洞察你的需求,帮助你理性投资,让你以低成本享受私人银行家的专业投资和金融服务,你想尽快体验吗?随着人工智能时代的到来,先别着急给视频号下定义图片来源视觉中国文新眸,作者叶静,编辑桑明强今年的微信公开课上,视频号站到了C位。这并不是腾讯第一次重金押注短视频。4年前,短视频热潮席卷互联网,抖音快手各自占山为王,腾讯重启了微手机该不该取消看视频等功能?问的这个问题有点可笑,你说该不该取消看视频的功能?你愿意用不能看到视频图片的手机吗?你愿意用,只能打电话,接电话,这样的手机吗?你愿意回到过去吗?用脚趾头想,你也不愿意,车轮都是向怎么把有声视频转换成无声视频?把有声视频转换为无声视频,可以通过关闭视频原声的方法,还可以把视频音轨单独分离出来并修改音量的方法。在电脑上可以用pr和ae软件,手机端剪映,快影等等也可以。视频剪辑软件pr,新建天文学家最新研究认为银河系约130亿年前形成中新社北京3月24日电(记者孙自法)银河系有多大年纪了?它是如何形成和演化的?国际著名学术期刊自然北京时间3月24日以封面文章形式发表天文学家最新研究成果论文指出,银河系可能经过了2022年学生必备五大件选购攻略篇二哪些笔记本电脑值得选?多图长文,涉及学生必备的全部5大类数码设备工具!2022年如何选购,看这篇就够了!由于篇幅过长,我将分为5篇连载,本篇是第2篇,大家可以关注我持续跟进接下来的攻略更新!阅读指南前言6款常见跑步机对比测评哪一款更适合你?1木卫六大屏智能跑步机2998国产品牌,木卫六这款跑步机主打是智能大屏和有奖有趣的互动,更注重跑步中的趣味性。如果感觉跑步很枯燥坚持不下去,可以试试这款像游戏机一样的跑步机。这款整看过来!关于征集建设广西科技成果转移转化综合服务平台基础信息及需求建议的通知各设区市科技局,各有关单位为深入实施创新驱动发展战略,加快建设创新型广西,建立健全科技成果转移转化服务体系,加强技术市场建设,推进科技成果转化服务经济社会高质量发展,根据广西科技创抖音直播发布专项治理公告,严肃整治不良直播PK内容近日,抖音直播发布关于抖音直播严肃整治不良直播PK内容的公告(以下简称公告)。公告称,为进一步规范直播社区内容生态,平台将严格把控社区内容,严肃清理扰乱社区秩序破坏平台生态冲击正确