您好,欢迎访问三七文档
编程练习题一、程序控制结构编程练习题1.有一函数如下所示:已知x值时,输出y值。2.编程计算:s=2012312)2()1(ijji3.求sum=a+aa+aaa+aaaa+…+aa…a(表示n个a)的值。其中a是一位数字。例如当n=6,a=2时sum=2+22+222+2222+22222+222222。n和a的值由键盘输入。4.求100~230之间所有素数的和。5.从键盘上输入任意整数,逆序输出其各位数字,同时求出其位数及各位数字之和。6.输入某学生成绩,若成绩在90-100输出"excellent",若成绩在80-89输出"good",若成绩在70-79输出"general",若成绩在60-69输出”pass”,若成绩在0-59输出”nopass”。7.编程计算n!。n从键盘输入,且n=15。8.编程计算1!+2!+……+20!。9.输入三人数,按从小到大的大顺序输出。10.在100~200中找出同时满足3除余2,用5除余3和用7除余2的所有整数。11.找出20~150中所有能被3或被7整除的数。12.找出1~100这间所有的素数,要求一行输出5个。13.求20~130之间所有素数的和。14.求100~999中的。所谓水仙花数是指一个三位数,它的每位数字的立方之和等于该数。例如,因为153=13+53+33,所以153为水仙花数。15.求1000之内的所有完数。所谓完数是指一个数恰好等于它的所有因子之和。例如,6=1+2+3,所以6为完数。14.编一程序显示如下图案:*************************15.编一程序显示如下图案:*************************x(x1)Y=x+5(1≤x10)x-5(x≥10)16.编一程序显示如下图案:*****************************************17.编一程序显示如下图案:AABCABCDEABCDEFG18.根据π/4=1-1/3+1/5-1/7+…求π的近似值,直到最后一项的值小于0.000001为止。19.猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,发现只剩一个桃子了,求猴子第一天究竟摘了多少个桃子?20.编写程序输出菲波那切数列的前20项。即前两项为1,以后每一项为前两项之和。21.分别使用for、while、dowhile语句编程打印九九乘法表。22.若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年时有多少头母牛?24.从键盘上输入若干整数,计算并输出其中正整数的平均值,以0作为输入结束标志。(要求分别使用while语句、do…while语句编写)25.分别使用while、dowhile、for语句编程实现s=102!nn26.已知xxz+yzz=532,求所有可能的x,y,z的值27.编程计算1+2+3+…+10028.编程计算1~100所有奇数之和。29.编程计算1~100所有偶数之和。30.编程实现如下功能:从键盘输入两个正整数m,n(mn),求出两个值之间的全部素数。如输入20和200,程序会将20~200之间全部素数显示出来。31.编程实现下列功能:从键盘输入x,利用下列公式计算cos(x)的近似值。要求准确度达到10-8。....!8!6!4!21cos8642xxxxx32.从键盘输入任意多个正整数,计算其和。当输入为0时结束输入,并输出计算结果。33.写一个完整的程序,从键盘读入两个浮点数和一个运算符,根据运算符计算两个浮点数的运算结果,并输出。运算符可能的值是’+’,’-‘,’*’,’/’。34.编程统计数组a中正数、0、负数的个数35.从键盘输入10个正数存入数组x中,然后输入要查找的整数a,如找到则输出a及a的下标,如找不到,则把a存入到数组的最后。36.从键盘输入20个学生的成绩,输出平均分数,并统计优秀、良好、中等、及格和不及格学生的人数。37.把有序的一两个数组a和b合并,要求合并后的数组依然有序。二、函数编程练习题1.编写函数voidreverse(intn),将n逆序输出。2.编写函数intcount(charp[])统计字符串p的长度并作为函数值返回。3.函数intmax(inta,intb,intc)是求a、b、c中的最大值,请实现。4.函数voidprint_week(intm)是实现根据整型变量m的值,输出其表示的星期几的英语单词。(使用switch语句)5.编写二个函数:一个函数voidsum(n)是求指定范围1-n内所有素数的和;另一个函数intfact是判断一个数是否是素数;要求在sum中调用fact进行判断,然后求素数和。6.函数voidmenu()是实现一个简单的菜单程序,运行时显示:Menu:A(阶乘)S(求和)F(找素数)Q(退出)请选择(A/S/F/Q)?7.实现函数longfact(n),计算n的阶乘。8.函数intSUM(intn)是计算1+2+…+n.9.函数voidprim(intn)是找出2-n内的所有素数,每行输出10个素数。10.函数voidsum(intn=100)的功能是找出n以内的所有素数,并求和。11、函数longfact(intn)是计算1!+2!+3!+..+n!,并将结果作为函数值返回。请实现该函数。12.函数voidsum(int&s,intn)是计算s=1+2+3+…+n。请实现该函数。13.函数voidmax(inta[],intn,int&max)是求n个元素的数组a中的最大值,将最值存放在max中。请实现该函数功能。14.函数voidinput(foatscore[][3],int&n)是要求从键盘输入n个学生的3门成绩,存入score[][3]中。由于学生人数不确定,要求输入为999时结束输入主。最后实际录入的学生人数放入到n中返回调用处。请实现该函数。15.函数intdigit(charstr[])的功能是统计字符串str中的数字字符个数和,将统计结果作为函数值。请编程实现该函数。16.函数voidprint(int*p,intn)的功能是输出n个整数。这n个整数存放在以p为首地址的内在中。请实现该函数。17.函数voidprint(int(*p)[4],intn,intm)功能是输出p所指向的n行m列二维数组中所有的元素。18.有一结构体定义如下:typedefstructdate{intday;intmonth;intyear;}DATE;函数voidLuru(DATExs[],intn)的功能是从键盘上录入n个学生的生日。请实现该函数。19.有结构体定义如下:typedefstructstu{charno[12];charname[20];floatscore[4];floatzf;总分//floataver;//平均分}STUDENT;(1)函数voidpp(STUDENTxs[],intn)的功能是按表格的形式输出n个学生的所有信息。请实现该函数。(2)函数voidjishuan(STUDENTxs[],intn)的功能是计算n个学生的总分和平均分。请实现该函数。20.函数voidWrite(inta[],intn)的功能是将n个元素的数组a中的所有元素写入文件data.dat中。请实现该函数。21.函数voidRead(intb[],int&n)的功能是文件data.dat中的所有整数读入到数组b中,整数个数存入到n中。请实现该函数。22.文件file.txt中存放了若干字符。函数inttongji(int&n)是统计文件file.txt中数字和字母的个数。将字母个数存入到n中,数字的个数作为函数值。请实现该函数。三、递归函数设计1.计算最大约数gcd(m,n)可用递归形式定义如下:若m%n等于0,则gcd(m,n)等于n否则,gcd(m,n)等于gcd(n,m%n)。编写一递归函数,求最大约数,并测试。2.编写一递归函数,计算下面的级数:iim1......31211)(3.编写一递归函数,计算下面的级数:12.....11594735231)(iiim4.编写一函数,逆序输出一个整数n。函数头如下:voidreverseDisplay(intvalue)5.编写一函数,逆序输出一个字符串,函数头如下:voidreverseDisplay(constchar*s)6.编写一递归函数,统计一个指定字符在一个字符串中出现的次数,函数头如下:intcount(char*,char)7.编写一递归函数,计算一个整数中所有数字之和。函数头如下:intsumDigit(longn)8.编写一递归函数,计算2n9.编写一递归函数,计算1+2+3+4+…+n。n为正整数10.编写一递归函数,计算n!
本文标题:C++编程练习题
链接地址:https://www.777doc.com/doc-6857384 .html