高级语言程序设计 编写程序题+答案.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《高级语言程序设计 编写程序题+答案.pdf》由会员分享,可在线阅读,更多相关《高级语言程序设计 编写程序题+答案.pdf(84页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1已知银行整存整取存款不同期限的月息利率分别为:0.315%期限一年0.330%期限二年月息利率=0.345%期限三年0.375%期限五年0.420%期限八年要求输入存钱的本金和期限,求到期时能从银行得到的利息与本金的合计。2输入年份year和月month,求该月仃多少天。判断是否为闰年,可用如下C语言表达式:year%4=0&year%100!=0|year%400=0o若表达式成立(即表达式值为1),则year为闰年;否则,表 达式不成立(即值为0),year为平年。3编写一个简单计算器程序,输入格式为:datal opdata2其中datal和data2是参加运算的两个 数,op为运算符
2、,它的取值只能是+、-、*、九4输入n值,输出如图所示矩形。*图4.1 n=6时的矩形5输入n值,输出如图所示平行四边形。*图4.2 6时的平行四边形6输入n值,输出如图所示高为n的等腰3角形。*图4.3 n=6时的等腰三角形7输入n值,输出如图所示高为n的等腰3角形。*图4.4 n=6时的倒等腰三角形8输入n值,输出如图所示高和上底均为n的等腰梯形。*Us:瑟熹藕形*9输入n值,输出如图所示高和上底均为n的等腰空心梯形。*图4.6 5时的空心等腰梯形10输入n值,输出如图所示边长为n的空心正六边型。*图4.7 n=5时的空心正六边型11输入n值,输出如图所示图形。*图4.8 n=5时的X形1
3、2输入n值,输出如图所示图形。*图4.9 n=5时的Z形13输入n值,输出如图所示图形。*图4.10 n=3时的K形14输入n值,输出如图所示图形。*图4.12 n=5时的N形15输入n值,输出如图所示图形。*图4.12 n=3时的菱形16输入n值,输出如图所示图形。(例为n=6时)*图4.13 n=5时的上禊形17编写程序,输出如图所示sin(x)函数0到2tt的图形。-*-*18编写程序,在屏幕上输出一个由*号围成的空心圆。19编写程序,在屏幕上绘制如图余弦曲线和直线。若屏幕的横向为x轴,纵向为y轴,在屏幕上显示0360度的cos(x)曲线与直线x=f(y尸45*(y-l)+31的迭加图形
4、。其中cos图形用*表示,f(y)用+表示,在两个图形的交点 处则用f(y/l形的符号。*+*+*+*+*+*+*+*图4.15余弦曲线和直线20编写程序,输出如图所示高度为n的图形。123456789101112131415161718192021222324252627282930313233343536图4.16 n=6时的数字正方形21编写程序,输出如图所示高度为n的图形。1 3 6 10 15 212 5 9 14 204 8 13 197 12 1811 1716图4.17 n=6时的数字倒三角22输入n值,输出如图所示图形。1234511234111231111211111图4.
5、18 n=5时的数字矩形23输入n值,输出如图所示的nXn(nl),n a qX X X X 直到某一项A=0.000001时为止。输出最后C的值。35从键盘输入任意的字符,按下列规则进行分类计数。第一类O,T,2,3,4,5,6,7,8,9 第二类7,=第三类其它字符当输入字符时先计数,然后停止接收输入,打印计数的结果。36对从键盘上输入的行、单词和字符进行计数。我们将单词的定义进行化简,认为单词是不包含空格、制表符(t)及换行符的字符序列。例如:a+b+c,认为是1个单词,它由5个字符组成。又如:xyabc,为2个单词,6个 字符。一般用CTRL+D作为文件结束标记,其字符码值为-1,当输
6、入CTRL+D时表示文件输入结束,停止计数。37编写程序计算当x=0.5时下述级数和的近似值,使其误差小于某一指定的值ep述。n(例如:epsilon=0.000001):3 S TX XXX-+-+.3*1J 5*2!7*3!38编写程序计算下式的值:100 50 10 1Sk+Sk*k+S k=l k=l k=l k39编写程序计算下列序列的值:1111 11+-1X2 2X3 3X4 4 X5 NX(N+1)要求最后一项小于0.001时、或者当N=20时尚未达到精度要求,则停止计算。40已知求正弦sin(x)的近似值的多项式公式为:sin(x)=x+-+.+(-1)-+3!5!7!(2n
7、+l)1编写程序,要求输入*和,按上述公式计算sin(x)的近似值,要求计算的误差小于给定的。41从键盘输入十个整数,用插入法对输入的数据按照从小到大的顺序进行排序,将排序后的结果输出。42输入一个正整数,要求以相反的顺序输出该数。例如输入12345,输出位54321。43编写程序,读入一个整数N;若N为非负数,则计算N到2XN之间的整数和;若N为一个负数,则求2XN到 N之间的整数和。分别利用for和while写出两个程序。44求解爱因斯坦数学题。有一一条长阶梯,若每步跨2阶,则最后剩余1阶,若每步跨3阶,则最后剩2阶,若每 步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶,若每步跨7阶,最
8、后才正好一阶不剩。请问,这条阶梯共 有多少阶?45一个自然数被8除余1,所得的商被8除也余1,再将第二次的商被8除后余7,最后得到一个商为a。又知这个自然数被17除余4,所得的商被17除余15,最后得到一个商是a的2倍。编写程序求这个自然数。46编写程序,用二分法求一元二次方程2x3-4x2+3x-6=0在(10,10)区间的根。47中国古代科学家祖冲之采用正多边形逼近的割圆法求出了TT的值。请编写一程序,采用割圆法 求出TT的值,要求精确到小数点之后的第十位。48A、B、C、D、E五人在某天夜里合伙去捕鱼,到第二天凌晨时都疲惫不堪,于是各自找地方睡 觉。日上:竿,A第一个醒来,他将鱼分为五份
9、,把多余的一条鱼扔掉,拿走自己的一份。B第 二个醒来,也将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。C、D、E依次醒来,也按 同样的方法拿鱼。编写程序求出他们合伙至少捕了多少条鱼。49 一辆卡车违犯交通规则,撞人逃跑。现场三人目击事件,但都没记住车号,只记下车号的一些 特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的;丙是位数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索求出车号。50若一个口袋中放有12个球,其中有3个红的,3个白的和6个黑的,每次从中任取8个球,编 写程序求出共有多少种不同的颜色搭配。51100匹马驮100担货,大马一匹驮3担,中马一匹
10、驮2担,小马两匹驮1担。试编写程序计算 大、中、小马的数目。52编写程序,输出用一元人民币兑换成1分、2分和5分硬币的不同兑换方法。53显示200以内的完全平方数和它们的个数。(完全平方数:A2+B2=C2,求A、B、C)54设N是一个四位数,它的9倍恰好是其反序数(例如:123的反序数是321),求N的值。55将一个数的数码倒过来所得到的新数叫原数的反序数。如果一个数等于它的反序数,则称它为 对称数。求不超过1993的最大的二进制的对称数。56编写程序求解下式中各字母所代表的数字。PEAR ARAPEA57 一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,且这
11、两个三位数的数码顺序正好相反,求这个三位数。58请验证2000以内的哥德巴赫猜想,对于任何大于4的偶数均可以分解为两个素数之和。59如果一个正整数等于其各个数字的立方和,则称该数为阿姆斯特朗数(亦称为自恋性数)。如 407=43+03+73就是一个阿姆斯特朗数。编写程序求1000以内的所有阿姆斯特朗数。60任意输入一个偶数,请将它分解为两个素数之和。61如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。求3000以内的全部亲密数。62猜数游戏。由计算机想一个数请人猜,如果人猜对了,则结束游戏,否则计算机给出提
12、示,告诉人所猜的数是太大还是太小,直到人猜对为止。计算机记录人猜的次数,以此可以反映出猜 数者猜的水平。63编写程序求出1000!后有多少个零。64求矩阵A2*3的转置矩阵B3*2O设矩阵A为:r 1 2 3-I r 1 4-IA=|I B=|25|L 4 5 6 J L 3 6 J65十个小孩围成一圈分糖果,老师分给第一个小孩10块,第二个小孩2块,第三个小孩8块,第四个小孩22块,第五个小孩16块,第六个小孩4块,第七个小孩10块,第八个小孩6块,第 九个小孩14块,第十个小孩20块。然后所有的小孩同时将自己手中的糖分一半给右边的小孩;糖块数为奇数的人可向老师要一块。问经过这样儿次调整后大
13、家手中的糖的块数都一样?每人各 有多少块糖?66输入5 X5的数组,编写程序实现:求出对角线上各元素的和;求出对角线上行、列下标均为偶数的各元素的积;找出对角线上其值最大的元素和它在数组中的位置。67编写程序,以字符形式输入一个十六进制数,将其变换为一个十进制整数后输出。68编写程序,输入一个十进制整数,将其变换为二进制后储存在一个字符数组中。69编写程序,输出1000以内的所有完数及其因子。所谓完数是指一个整数的值等于它的因子之和,例如6的因子是1、2、3,而6=1+2+3,故6是一个完数。70对数组A中的N(0N100=个整数从小到大进行连续编号,输出各个元素的编号。要求不 能改变数组A中
14、元素的顺序,且相同的整数要具有相同的编号。例如数组是:A=(5,3,4,7,3,5,6)则 输出为:(3,1,2,5,1,3,4)71现将不超过2000的所有素数从小到大排成第一行,第二行上的每个数都等于它右肩上的素数 与左肩上的素数之差。请编程求出:第二行数中是否存在这样的若干个连续的整数,它们的和 恰好是1898?假如存在的话,又有儿种这样的情况?第一行:2 3 5 7 1 1 13 17.1979 1987 1993 第二行:1 2 2 4 2 4.8 672将1、2、3、4、5、6、7、8、9九个数字分成一组,每个数字只能用一次,即每组:个数不许 有重复数字,也不许同其它组的:个数字重
15、复,要求将每组中的三位数组成一个完全平方数。73 一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个3位数,且这 两个三位数的数码顺序正好相反,求这个三位数。74使用数组精确计算M/N(0MN 1)个元素的一维数组中,数组的每个元 素存放一位十进制数,即商的第一位存放在第一个元素中,商的第二位存放在第二个元素中,依次类推。这样可使用数组来表示计算的结果。75使用数组完成两个超长(长度小于1 0 0)正整数的加法。为了实现高精度的加法,可将正整数M存放在有N(N 1)个元素的一维数组中,数组的每个 元素存放一位十进制数,即个位存放在第一个元素中,十位存放在第二个元素中,依次类
16、推。这样通过对数组中每个元素的按位加法就可实现对超长正整数的加法。76使用数组完成两个超长(长度小于1 0 0)正整数的加法。为了实现高精度的加法,可将正整数M存放在有N(N 1)个元素的一维数组中,数组的每个 元素存放一位十进制数,即个位存放在第一个元素中,十位存放在第二个元素中,依次类推。这样通过对数组中每个元素的按位加法就可实现对超长正整数的加法。77使用数组完成两个超长(长度小于1 0 0)正整数的乘法。78马步遍历问题:已知国际象棋棋盘有8*8共64个格子。设计一个程序,使棋子从某位置开始跳马,能够把棋盘上的格子走遍。每个格子只允许走一次。79八皇后问题:在一个8 X 8的国际象棋盘
17、,有八个皇后,每个皇后占一格;要求棋盘上放上八个皇后时不会出 现相互攻击的现象,即不能有量个皇后在同一行、列或对角线上。问共有多少种不同的方法。80编制一个计算函数y=f(x)的值程序,其中:-X+2.5 0=x 2y=2-1.5(x-3)*(x-3)2=x 4x/2-1.5 4=x l)请编写递归程序实现。88编写函数,采用递归方法实现将输入的字符串按反序输出。89编写函数,采用递归方法在屏幕上显示如下杨辉:角形:11 11 2 113 3 1 14 6411 5 10 10 5 190编写函数,采用递归方法将任一整数转换为二进制形式。91设有字母a、b、c,请编程用递归的方法产生由这些字母
18、组成的,且长度为n的所有可能的字 符串。例如,输入n=2,则输出:aa ab ac ba bb be ca cb cc9 2将一个数的数码倒过来所得到的新数,叫作原数的反序数,如果一个数等于它的反序数,则称 它为对称数。编写程序,采用递归算法求不超过1993的最大的二进制的对称数。93从1到n(n1000)个自然数中选出r个数进行组合,并按指定的格式输出组合的结果。例如:n=5,r=3时,共有10种组合,运行程序,要按下面的格式输出:1 2 3453 454 52 3 454 53 4 5请用递归算法实现。94从键盘输入十个整数,用合并排序法对输入的数据按照从小到大的顺序进行排序,将排序后的
19、结果输出。95编写程序,读入一个以符号.结束的长度小于20字节的英文句子,检查其是否为回文(即正读和反读都是一样的,不考虑空格和标点符号)。例如:读入句子:MADAM IM ADAM,它是回文,所以输出:YES读入句子:ABCDBA).它不是回文,所以输出:NO96编写程序,其中包括一个函数,此函数的功能是:对一个长度为N的字符串从其第K个字符起,删去M个字符,组成长度为N-M的新字符串(其中N、M=80,K=N)。例如输入字符串We are poor students.,利用此函数进行删除poor的处理,输出处理后的字符串是We are students.%97编写函数,通过指针将一个字符串
20、反向。98编写一个函数insert(sl,s2,ch),实现在字符串si中的指定字符ch位置处插入字符串s2。99编写程序将输入的两行字符串连接后,将串中全部空格移到串首后输出。100编写程序,输入字符串,分别统计字符串中所包含的各个不同的字符及其各自字符的数量。如:输入字符串:abcedabcdcd则输出:a=2 b=2 c=3 d=3 e=1 o101 利用结构:struct complx int real;int im;卜编写求两个复数之积的函数cmult,并利用该函数求下列复数之积:(1)(3+4i)X(5+6i)(10+20i)X(30+40i102编写成绩排序程序。按学生的序号输入
21、学生的成绩,按照分数由高到低的顺序输出学生的名 次、该名次的分数、相同名次的人数和学号;同名次的学号输出在同一行中,一行最多输出10个 学号。103编写程序,实现输入的时间屏幕显示一秒后的时间。显示格式为HH:MM:SS。程序需要处理 以下:种特殊情况:若秒数加1后为60,则秒数恢复到01分钟数增加1;若分钟数加1后为60,则分钟数恢复到0,小时数增加1;若小时数加1后为24,则小时数恢复到0。104编写程序,从键盘输入3个学生的数据,将它们存入文件student;然后再从文件中读出数据,显示在屏幕上。105编写程序,从键盘输入一行字符串,将其中的小写字母全部转换成大写字母,然后输出到一 个磁
22、盘文件test中保存。106编写程序,读入磁盘上C语言源程序文件test8.c,删去程序中的注释后显示。【编写程序题参考答案1参考答案:#include main()int year;float money,rate,total;/*money:本金 rate:月利率 total:本利合计*/printf(nInput money and year=?);scanf(n%f%du,&money,&year);/*输入本金和存款年限*/if(year=l)rate=0.003 15;/*根据年限确定利率*/else if(year=2)rate=0.00330;else if(year=3)ra
23、te=0.00345;else if(year=5)rate=0.00375;else if(year=8)rate=0.00420;else rate=0.0;total=money+money*rate*12*year;/*计算到期的本利合计*/printf(n Total=%.2fnn,total);2参考答案:#include main()int year,month,days;printf(uEnter year and month:1);scanf(,%d%dn,&year,&month);switch(month)case 1:case 3:case 5:case 7:case
24、8:case 10:case 12:days=31;break;/*处理“大”月*/case 4:case 6:case 9:case 11:days=30;break;/*处理“小”月*/case 2:if(year%4=0&year%100!=0|year%400=0)days=29;/*处理闰年平月*/else days=28;/*处理不是闰年平月*/break;default:printf(nInput error!nn);/*月份错误*/days=0;if(days!=0)printf(%d,%d is%d daysn,year,month,days);3参考答案:#include
25、main()float datal,data2;/*定义两个操作数变量*/char op;/*操作符*/printf(Enter your expression:);scanf(%f%c%f,&datal,&op,&data2);/*输入表达式*/switch(op)/*根据操作符分别进行处理*/case+:/*处理加法*/printf(%.2f+%.2f=%.2fn,datal,data2,datal+data2);break;case 处理减法*/printf(%.2f-%.2f=%.2fn,datal,data2,datal-data2);break;case:/*处理乘法*/print
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级语言程序设计 编写程序题+答案 高级 语言程序设计 编写 程序 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内