《程序设计基础编程题.doc》由会员分享,可在线阅读,更多相关《程序设计基础编程题.doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流12345 程序设计基础编程题【精品文档】第 7 页6 一尺之捶,日取其半。我国古代著作庄子中记载道:“一尺之捶,日取其半,万世不竭”。其含义是:对于一尺的东西,今天取其一半,明天取其一半的一半,后天再取其一半的一半的一半总有一半留下,所以永远也取不尽。请编写一个程序,使其可以计算出一条长为m的绳子,在n天之后剩下的长度。输入m#includeint main() int m,n; scanf(%d%d,&m,&n); while(n-) m/=2; printf(%d,m); return 0;2.某网上购物网站对用户实行优惠,买家购物货款p越多,则折
2、扣越多。今天正值该网站优惠折扣日,货款高于100元的买家可获得15%的折扣,否则买家可获得8%的折扣,。请编程从键盘输入买家购物货款p,计算并输出买家折扣后实际应付出的价钱。注:程序中的数据类型为float。#includeint main() float p,q; scanf(%f,&p); if(p100) q=1.15*p; printf(%f,q); else printf(%f,1.08*p); return 0;3.编程求解马克思手稿中的趣味数学题:有30个人,其中有男人、女人和小孩,在一家饭馆里吃饭共花了50先令,每个男人各花3先令,每个女人各花2先令,每个小孩各花1先令,请编程
3、计算并输出男人、女人和小孩各有几人?X+y+z=303X+2y+z=504. 我国古代的张丘建算经中有这样一道著名的百鸡问题:“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?”其意为:公鸡每只5元,母鸡每只3元,小鸡3只1元。用100元买100只鸡,编程计算并输出公鸡、母鸡和小鸡各能买多少只?x+y+z=1005x+3y+z/3=100#includeint main() int man,woman; for(man=1; man=17; man+) for(woman=1; woman=25; woman+) if(50 = man*3 + woman*2
4、 +(30-man-woman) ) printf(%d %d %dn,man,woman,30-man-woman); return 0;5. 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?#includeint main() float h=100,s=0; int i; for(i=1;i=10;i+) s=s+h+h/2; h=h/2; printf(%fn,s); printf(%fn,h); return 0;6两数值的谐均值可以这样计算:首先对两数值的倒数取平均值,最后再取倒数。编写一个带有两个double
5、参数的函数,计算这两个参数的谐均值。函数原型为:double Calculate(double x,double y);#includedouble Calculate(double x,double y) double a,b; a=(1.0/x+1.0/y)/2; b=1.0/a; return b;int main() double x,y,b; scanf(%lf%lf,&x,&y); printf(%lfn, Calculate(x, y); return 0;7.假设有这样一个三位数m,其百位、十位和个位数字分别是a、b、c,如果m= a!+b!+c!,则这个三位数就称为三位阶乘和
6、数(约定0!=1)。请编程计算并输出所有的三位阶乘和数。函数原型: long Fact(int n);函数功能:计算n的阶乘#include long Fact(int n) if (n = 1) return 1; else return n * Fact(n - 1);int main() int a, b, c, m; long z; for(a = 1; a = 9; a+) for(b = 1; b = 9; b+) for(c = 1; c = 9; c+) m = 100 * a + 10 * b + c; if (m = Fact(a) + Fact(b) +Fact(c) )
7、 printf(%dn, m); return 0;8陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。现在已知10个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。输入包括两行数据: 第1行包含10个100到200之间的整数(包括100和200,以厘米为单位),分别表示10个苹果到地面的高度。两个相邻的整数之间用一个空格隔开。 第2行只包括一个100到120之间的整数(包含100和120
8、,以厘米为单位),表示陶陶把手伸直的时候能够达到的最大高度。 #includeint main() int a10; int i,count=0,n; for(i=0; i10; i+) scanf(%d,&ai); scanf(%d,&n); for(i=0; i10; i+) if(ai=n+30) count+; printf(%d,count); return 0;9.凯撒密码是罗马扩张时期朱利斯凯撒(Julius Caesar)创造的,用于加密通过信使传递的作战命令,其原理很简单,就是通过将字母表中的字母移动一定位置而实现加密。例如,每个字母按字母表顺序向后移3位,如a加密后变成d,
9、b加密后变成e,x加密后变成a,y加密后变成b,z加密后变成c。请编写一个程序,将用户从键盘输入的文本字符串(只包含az的字符且长度小于100)进行加密后输出。函数原型:void Caesar(char c);函数功能:计算凯撒密码10 有一天,一位百万富翁遇到一个陌生人,陌生人找他谈一个换钱的计划,陌生人对百万富翁说:“我每天给你10万元,而你第一天只需给我1分钱,第二天我仍给你10万元,你给我2分钱,第三天我仍给你10万元,你给我4分钱。你每天给我的钱是前一天的两倍,直到满一个月(30天)为止”,百万富翁很高兴,欣然接受了这个契约。请编程计算在这一个月中陌生人总计给百万富翁多少钱,百万富翁总计给陌生人多少钱。#includeint main() double a=100000,b=0.01,sum1=0,sum2=0; int i; for(i=1;i=30;i+) sum1+=a; sum2+=b; b*=2; printf(%lfn,sum1); printf(%lfn,sum2); return 0;11.从键盘输入一串字符(假设字符数少于8个),以回车表示输入结束,编程将其中的数字部分转换为整型数并以整型的形式输出。函数原型为int Myatoi(char str);其中,形参数组str对应用户输入的字符串,函数返回值为转换后的整型数。
限制150内