欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    高级语言程序设计编写程序题+答案.docx

    • 资源ID:13682344       资源大小:298.68KB        全文页数:75页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    高级语言程序设计编写程序题+答案.docx

    1、高级语言程序设计编写程序题+答案高级语言程序设计 编写程序题+答案(总84页)1已知银行整存整取存款不同期限的月息利率分别为:% 期限一年% 期限二年月息利率 % 期限三年% 期限五年% 期限八年要求输入存钱的本金和期限,求到期时能从银行得到的利息与本金的合计。2输入年份year和月month,求该月有多少天。判断是否为闰年,可用如下语言表达式:year%4=0 & year%100!=0 | year%400=0。若表达式成立(即表达式值为1),则year为闰年;否则,表达式不成立(即值为0),year为平年。3编写一个简单计算器程序,输入格式为:data1 op data2。其中data1

    2、和data2是参加运算的两个数,op为运算符,它的取值只能是+、-、*、/。4输入n值,输出如图所示矩形。5输入n值,输出如图所示平行四边形。6输入n值,输出如图所示高为n的等腰三角形。7输入n值,输出如图所示高为n的等腰三角形。8输入n值,输出如图所示高和上底均为n的等腰梯形。9输入n值,输出如图所示高和上底均为n的等腰空心梯形。10输入n值,输出如图所示边长为n的空心正六边型。11输入n值,输出如图所示图形。12输入n值,输出如图所示图形。13输入n值,输出如图所示图形。14输入n值,输出如图所示图形。15输入n值,输出如图所示图形。16输入n值,输出如图所示图形。(例为n=6时)17编写

    3、程序,输出如图所示sin(x) 函数0到2的图形。18编写程序,在屏幕上输出一个由*号围成的空心圆。19编写程序,在屏幕上绘制如图余弦曲线和直线。若屏幕的横向为x轴,纵向为y轴, 在屏幕上显示0360度的cos(x)曲线与直线x=f(y)=45*(y-1)+31的迭加图形。其中cos图形用*表示,f(y)用+表示,在两个图形的交点处则用f(y)图形的符号。20编写程序,输出如图所示高度为n的图形。21编写程序,输出如图所示高度为n的图形。22输入n值,输出如图所示图形。23输入n值,输出如图所示的nn(n10)阶螺旋方阵。1 2 3 4 516 17 18 19 615 24 25 20 71

    4、4 23 22 21 813 12 11 10 9图 n=5时的螺旋方阵24输入n值,输出如图所示回型方阵。25输出如图所示的数字金字塔26输入n值,输出如图所示图形。27输入顶行字符和图形的高,输出如图所示图形。 28输入首字符和高后,输出如图所示回型方阵。A A A A A A B B B A A B C B A A B B B A A A A A A 图 首字符为A、高为5的方阵29输入中心字符和高后,输出如图所示回型方阵。X X X X X X Y Y Y X X Y Z Y X X Y Y Y YX X X X X图 中心字符为Z、高为5的方阵30编写程序,输出如图所示上三角形式的乘

    5、法九九表。31编写程序,输出如图所示下三角乘法九九表。32编写程序,输入三角型的三条边长,求其面积。注意:对于不合理的边长输入要输出数据错误的提示信息。33编写程序求出555555的约数中最大的三位数是多少。34编写程序计算下列算式的值:直到某一项A=时为止。输出最后的值。35从键盘输入任意的字符,按下列规则进行分类计数。 第一类 0,1,2,3,4,5,6,7,8,9 第二类 +,-,*,/,%,= 第三类 其它字符当输入字符时先计数,然后停止接收输入,打印计数的结果。36对从键盘上输入的行、单词和字符进行计数。我们将单词的定义进行化简,认为单词是不包含空格、制表符(t)及换行符的字符序列。

    6、例如:a+b+c,认为是个单词,它由个字符组成。又如:xy abc,为个单词,个字符。一般用CTRL+D作为文件结束标记,其字符码值为-1,当输入CTRL+D时表示文件输入结束,停止计数。37编写程序计算当x=时下述级数和的近似值,使其误差小于某一指定的值epsilon(例如:epsilon=):38编写程序计算下式的值:39编写程序计算下列序列的值:要求最后一项小于时、或者当N=20时尚未达到精度要求,则停止计算。40已知求正弦sin(x)的近似值的多项式公式为:编写程序,要求输入x和,按上述公式计算sin(x)的近似值,要求计算的误差小于给定的。41从键盘输入十个整数,用插入法对输入的数据

    7、按照从小到大的顺序进行排序,将排序后的结果输出。42输入一个正整数,要求以相反的顺序输出该数。例如输入12345,输出位54321。43编写程序,读入一个整数;若为非负数,则计算到2之间的整数和;若为一个负数,则求到之间的整数和。分别利用for和while写出两个程序。44求解爱因斯坦数学题。有一条长阶梯,若每步跨2阶,则最后剩余1阶,若每步跨3阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶,若每步跨7阶,最后才正好一阶不剩。请问,这条阶梯共有多少阶 45一个自然数被8除余1,所得的商被8除也余1,再将第二次的商被8除后余7,最后得到一个商为。又知这个自然数被17除余4

    8、,所得的商被17除余15,最后得到一个商是的2倍。编写程序求这个自然数。46编写程序,用二分法求一元二次方程2x3-4x2+3x-6=0在(10,10)区间的根。47中国古代科学家祖冲之采用正多边形逼近的割圆法求出了的值。请编写一程序,采用割圆法求出的值,要求精确到小数点之后的第十位。48A、B、C、D、E五人在某天夜里合伙去捕鱼,到第二天凌晨时都疲惫不堪,于是各自找地方睡觉。日上三竿,A第一个醒来,他将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。B第二个醒来,也将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。C、D、E依次醒来,也按同样的方法拿鱼。编写程序求出他们合伙至少捕了多少条鱼。

    9、49一辆卡车违犯交通规则,撞人逃跑。现场三人目击事件,但都没记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的;丙是位数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索求出车号。50若一个口袋中放有12个球,其中有3个红的,3个白的和6个黑的,每次从中任取8个球,编写程序求出共有多少种不同的颜色搭配。51100匹马驮100担货,大马一匹驮担,中马一匹驮担,小马两匹驮担。试编写程序计算大、中、小马的数目。52编写程序,输出用一元人民币兑换成1分、2分和5分硬币的不同兑换方法。53显示200以内的完全平方数和它们的个数。(完全平方数:A2+B2

    10、=C2,求A、B、C)54设N是一个四位数,它的9倍恰好是其反序数(例如:123的反序数是321),求N的值。55将一个数的数码倒过来所得到的新数叫原数的反序数。如果一个数等于它的反序数,则称它为对称数。求不超过1993的最大的二进制的对称数。56编写程序求解下式中各字母所代表的数字。 57一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,且这两个三位数的数码顺序正好相反,求这个三位数。 58请验证2000以内的哥德巴赫猜想,对于任何大于4的偶数均可以分解为两个素数之和。59如果一个正整数等于其各个数字的立方和,则称该数为阿姆斯特朗数(亦称为自恋性数)。如407=4

    11、3+03+73就是一个阿姆斯特朗数。编写程序求1000以内的所有阿姆斯特朗数。60任意输入一个偶数,请将它分解为两个素数之和。61如果整数的全部因子(包括,不包括本身)之和等于;且整数的全部因子(包括,不包括本身)之和等于,则将整数和称为亲密数。求3000以内的全部亲密数。62猜数游戏。由计算机想一个数请人猜,如果人猜对了,则结束游戏,否则计算机给出提示,告诉人所猜的数是太大还是太小,直到人猜对为止。计算机记录人猜的次数,以此可以反映出猜数者猜的水平。63编写程序求出1000!后有多少个零。64求矩阵 A2*3 的转置矩阵 B3*2。设矩阵 A 为: 1 2 3 1 4 A = B = 2 5

    12、 4 5 6 3 6 65十个小孩围成一圈分糖果,老师分给第一个小孩10块,第二个小孩2块,第三个小孩8块,第四个小孩22块,第五个小孩16块,第六个小孩4块,第七个小孩10块,第八个小孩6块,第九个小孩14 块,第十个小孩20块。然后所有的小孩同时将自己手中的糖分一半给右边的小孩;糖块数为奇数的人可向老师要一块。问经过这样几次调整后大家手中的糖的块数都一样每人各有多少块糖66输入55的数组,编写程序实现:(1)求出对角线上各元素的和;(2)求出对角线上行、列下标均为偶数的各元素的积;(3)找出对角线上其值最大的元素和它在数组中的位置。67编写程序,以字符形式输入一个十六进制数,将其变换为一个

    13、十进制整数后输出。68编写程序,输入一个十进制整数,将其变换为二进制后储存在一个字符数组中。69编写程序,输出1000以内的所有完数及其因子。所谓完数是指一个整数的值等于它的因子之和,例如6的因子是1、2、3,而6=1+2+3,故6是一个完数。70对数组A中的N(0N100个整数从小到大进行连续编号,输出各个元素的编号。要求不能改变数组中元素的顺序,且相同的整数要具有相同的编号。例如数组是:A=(5,3,4,7,3,5,6) 则输出为:(3,1,2,5,1,3,4)71现将不超过2000的所有素数从小到大排成第一行,第二行上的每个数都等于它右肩上的素数与左肩上的素数之差。请编程求出:第二行数中

    14、是否存在这样的若干个连续的整数,它们的和恰好是1898假如存在的话,又有几种这样的情况?第一行:2 3 5 7 11 13 17 . 1979 1987 1993 第二行: 1 2 2 4 2 4 . 8 672将1、2、3、4、5、6、7、8、9九个数字分成三组,每个数字只能用一次,即每组三个数不许有重复数字,也不许同其它组的三个数字重复,要求将每组中的三位数组成一个完全平方数。73一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,且这两个三位数的数码顺序正好相反,求这个三位数。74使用数组精确计算M/N(0MN=100)的各小数位的值。如果M/N是无限循环小数,

    15、则计算并输出它的第一循环节,同时要求输出循环节的起止位置(小数的序号)。为了实现高精度计算结果,可将商存放在有()个元素的一维数组中,数组的每个元素存放一位十进制数,即商的第一位存放在第一个元素中,商的第二位存放在第二个元素中,依次类推。这样可使用数组来表示计算的结果。 75使用数组完成两个超长(长度小于)正整数的加法。为了实现高精度的加法,可将正整数存放在有()个元素的一维数组中,数组的每个元素存放一位十进制数,即个位存放在第一个元素中,十位存放在第二个元素中,依次类推。这样通过对数组中每个元素的按位加法就可实现对超长正整数的加法。76使用数组完成两个超长(长度小于)正整数的加法。为了实现高

    16、精度的加法,可将正整数存放在有()个元素的一维数组中,数组的每个元素存放一位十进制数,即个位存放在第一个元素中,十位存放在第二个元素中,依次类推。这样通过对数组中每个元素的按位加法就可实现对超长正整数的加法。 77使用数组完成两个超长(长度小于)正整数的乘法。78马步遍历问题:已知国际象棋棋盘有8*8共64个格子。设计一个程序,使棋子从某位置开始跳马,能够把棋盘上的格子走遍。每个格子只允许走一次。79八皇后问题:在一个的国际象棋盘,有八个皇后,每个皇后占一格;要求棋盘上放上八个皇后时不会出现相互攻击的现象,即不能有量个皇后在同一行、列或对角线上。问共有多少种不同的方法。80编制一个计算函数y=

    17、f(x)的值程序,其中:-x + 0= x 2y= 2 - (x-3)*(x-3) 2= x 4x/2 - 4= x 1)请编写递归程序实现。88编写函数,采用递归方法实现将输入的字符串按反序输出。89编写函数,采用递归方法在屏幕上显示如下杨辉三角形:1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 90编写函数,采用递归方法将任一整数转换为二进制形式。91设有字母a、b、c,请编程用递归的方法产生由这些字母组成的,且长度为n的所有可能的字符串。例如,输入n=2,则输出:aaabacba bb bc ca cb cc92将一个数的数码倒过来所得到的新数,叫

    18、作原数的反序数,如果一个数等于它的反序数,则称它为对称数。编写程序,采用递归算法求不超过1993的最大的二进制的对称数。93从到n(n1000)个自然数中选出个数进行组合,并按指定的格式输出组合的结果。例如:n=5,r=3时,共有10种组合,运行程序,要按下面的格式输出:请用递归算法实现。94从键盘输入十个整数,用合并排序法对输入的数据按照从小到大的顺序进行排序,将排序后的结果输出。95编写程序,读入一个以符号.结束的长度小于20字节的英文句子,检查其是否为回文(即正读和反读都是一样的,不考虑空格和标点符号)。例如: 读入句子:MADAM IM ADAM. 它是回文,所以输出:YES读入句子:

    19、ABCDBA). 它不是回文,所以输出:NO96编写程序,其中包括一个函数,此函数的功能是:对一个长度为N 的字符串从其第K个字符起,删去M个字符,组成长度为N-M的新字符串(其中N、M=80,K=N)。例如输入字符串We are poor students.,利用此函数进行删除poor的处理,输出处理后的字符串是We are students.。97编写函数,通过指针将一个字符串反向。98编写一个函数insert(s1,s2,ch),实现在字符串s1中的指定字符ch位置处插入字符串s2。99编写程序将输入的两行字符串连接后,将串中全部空格移到串首后输出。100编写程序,输入字符串,分别统计字

    20、符串中所包含的各个不同的字符及其各自字符的数量。如:输入字符串: abcedabcdcd则输出:a=2 b=2 c=3 d=3 e=1。101利用结构:struct complx int real;int im;编写求两个复数之积的函数cmult,并利用该函数求下列复数之积: (3+4i)(5+6i) (10+20i)(30+40i102编写成绩排序程序。按学生的序号输入学生的成绩,按照分数由高到低的顺序输出学生的名次、该名次的分数、相同名次的人数和学号;同名次的学号输出在同一行中,一行最多输出10个学号。103编写程序,实现输入的时间屏幕显示一秒后的时间。显示格式为HH:MM:SS。程序需要

    21、处理以下三种特殊情况: 若秒数加1后为60,则秒数恢复到0,分钟数增加1; 若分钟数加1后为60,则分钟数恢复到0,小时数增加1; 若小时数加1后为24,则小时数恢复到0。104编写程序,从键盘输入3个学生的数据,将它们存入文件student;然后再从文件中读出数据,显示在屏幕上。105编写程序,从键盘输入一行字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件test中保存。106编写程序,读入磁盘上语言源程序文件,删去程序中的注释后显示。【编写程序题参考答案1参考答案:#include main( ) int year;float money,rate,total; /* m

    22、oney:本金 rate:月利率 total:本利合计*/printf(Input money and year =);scanf(%f%d, &money, &year); /* 输入本金和存款年限 */if(year=1) rate=; /* 根据年限确定利率 */else if(year=2) rate=;else if(year=3) rate=;else if(year=5) rate=;else if(year=8) rate=;else rate=;total=money + money * rate * 12 * year; /* 计算到期的本利合计 */printf( Tot

    23、al = %.2fn, total);2参考答案:#include main( ) int year, month, days;printf(Enter year and month:);scanf(%d%d, &year, &month);switch (month) case 1: case 3: case 5: case 7: case 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&y

    24、ear%100!=0 | year%400=0)days=29; /* 处理闰年平月 */else days=28; /* 处理不是闰年平月 */break;default: printf(Input error!n); /* 月份错误 */days=0;if( days!=0 )printf(%d, %d is %d daysn, year, month, days);3参考答案:#include main ( ) float data1, data2; /* 定义两个操作数变量 */char op; /* 操作符 */printf(Enter your expression:);scanf

    25、(%f%c%f, &data1, &op, &data2); /* 输入表达式 */switch(op) /* 根据操作符分别进行处理 */ case + : /* 处理加法 */printf(%.2f+%.2f=%.2fn, data1, data2, data1+data2); break;case - : /* 处理减法 */printf(%.2f-%.2f=%.2fn, data1, data2, data1-data2); break;case * : /* 处理乘法 */printf(%.2f*%.2f=%.2fn, data1, data2, data1*data2); brea

    26、k;case / : /* 处理除法 */if( data2=0 ) /* 若除数为0 */printf(Division by zero.n);elseprintf(%.2f/%.2f=%.2fn, data1, data2, data1/data2);break;default: /* 输入了其它运算符 */printf(Unknown operater.n);4分析:打印此图形用两重循环实现。图形要重复n行,故采用循环结构实现循环n次,循环体内部打印一行*号,把上述思路表示为:for(i=1;i=n;i+)打印一行*号;每行有n个*号,再采用循环结构实现n次循环,循环内部用格式输出语句打

    27、印一个*号,即:for(j=1;j=n;j+)printf(*);按照上述思路,实现打印矩形。参考答案:main() int i,j,n;printf(nPlease Enter n:);scanf(%d,&n);for(i=1;i=n;i+) for(j=1;j=n;j+)printf(*);printf(n);5分析:此图形和上题的区别在于在每一行先要打印空格,然后再打印n个*号,在上题第一层循环体内打印*号的循环前面增加一个循环打印空格。每行空格的个数是逐行减少的,由于第一层循环的控制变量i是逐行增1,所以用一个固定值的数减去i就可实现对空格个数的控制,在此题中固定值可使用变量n。参考答案: main( ) int i,j,n;printf(nPlease Enter n:);scanf(%d,&n);for(i=1;i=n;i+)


    注意事项

    本文(高级语言程序设计编写程序题+答案.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开