世娱网
您的当前位置:首页C++编程练习题

C++编程练习题

来源:世娱网
编程练习题

一、程序控制结构编程练习题 1.有一函数如下所示:

x (x<1)

Y= x+5 (1≤x<10)

x-5 (x≥10)

已知x值时,输出y值。

2.编程计算:s=(i1)2(j2)2

i1j12033.求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-输出"good",若成绩在70-79输出"general",若成绩在60-69输出”pass”,若成绩在0-59输出”no pass”。

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.编一程序显示如下图案: ********* ******* ***** ***

*

16.编一程序显示如下图案:

~

*

*** ***** ******* ********* ******* ***** *** *

17.编一程序显示如下图案:

A

A B C A B C D E A B C D E F G

18.根据π/4 =1-1/3+1/5-1/7+…求π的近似值,直到最后一项的值小于为止。 19.猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,发现只剩一个桃子了,求猴子第一天究竟摘了多少个桃子

20.编写程序输出菲波那切数列的前20项。即前两项为1,以后每一项为前两项之和。

21.分别使用for、while、do while语句编程打印九九乘法表。

22.若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年时有多少头母牛

24.从键盘上输入若干整数,计算并输出其中正整数的平均值,以0作为输入结束标志。(要求分别使用while语句、do …while语句编写) ;

)

25.分别使用while 、do while、 for语句编程实现s=n!

n21026.已知xxz+yzz=532,求所有可能的x,y,z的值 27.编程计算1+2+3+…+100

28.编程计算1~100所有奇数之和。 29.编程计算1~100所有偶数之和。

30.编程实现如下功能:从键盘输入两个正整数m,n(mx2x4x6x8cosx1....

2!4!6!8!32.从键盘输入任意多个正整数,计算其和。当输入为0时结束输入,并输出计算结果。

33.写一个完整的程序,从键盘读入两个浮点数和一个运算符,根据运算符计算两个浮点数的运算结果,并输出。运算符可能的值是’+’,’-‘,’*’,’/’。 \"

34.编程统计数组a中正数、0、负数的个数

35.从键盘输入10个正数存入数组x中,然后输入要查找的整数a,如找到则输出a及a的下标,如找不到,则把a存入到数组的最后。

36.从键盘输入20个学生的成绩,输出平均分数,并统计优秀、良好、中等、及格和不及格学生的人数。

37.把有序的一两个数组a和b合并,要求合并后的数组依然有序。

二、函数编程练习题

1.编写函数void reverse(int n),将n逆序输出。

2.编写函数int count (char p[])统计字符串p的长度并作为函数值返回。 3.函数int max(int a,int b,int c)是求a、b、c中的最大值,请实现。

4.函数void print_week(int m)是实现根据整型变量m的值,输出其表示的星期几的英语单词。(使用switch语句) 、

5.编写二个函数:一个函数void sum(n)是求指定范围1-n内所有素数的和;另一个函数int fact是判断一个数是否是素数;要求在sum中调用fact进行判断,然后求素数和。

6.函数void menu()是实现一个简单的菜单程序,运行时显示:

Menu: A(阶乘) S(求和) F(找素数) Q(退出)

请选择(A/S/F/Q)

7.实现函数long fact(n),计算n的阶乘。 8.函数int SUM(int n)是计算1+2+…+n. ~

9.函数void prim(int n)是找出2-n内的所有素数,每行输出10个素数。 10.函数void sum(int n=100)的功能是找出n以内的所有素数,并求和。

11、函数long fact(int n)是计算1!+2!+3!+..+n!,并将结果作为函数值返回。请实现该函数。

12.函数void sum(int &s,int n)是计算s=1+2+3+…+n。请实现该函数。

13.函数void max(int a[],int n,int &max)是求n个元素的数组a中的最大值,将最值存放在max中。请实现该函数功能。

14.函数void input(foat score[][3],int &n)是要求从键盘输入n个学生的3门成绩,存入score[][3]中。由于学生人数不确定,要求输入为999时结束输入主。最后

实际录入的学生人数放入到n中返回调用处。请实现该函数。

15.函数int digit(char str[])的功能是统计字符串str中的数字字符个数和,将统计结果作为函数值。请编程实现该函数。

16.函数void print(int *p,int n)的功能是输出n个整数。这n个整数存放在以p为首地址的内在中。请实现该函数。

17.函数void print(int (*p)[4],int n,int m)功能是输出p 所指向的n行m列二维数组中所有的元素。

18.有一结构体定义如下: )

typedef struct date { int day; int month; int year; }DATE;

函数void Luru(DATE xs[],int n)的功能是从键盘上录入n个学生的生日。请实现该函数。

19.有结构体定义如下:

typedef struct stu { char no[12]; char name[20]; \"

float score[4];

float zf;总分数void Write(int a[],int n)的功能是将n个元素的数组a中的所有元素写入文件中。请实现该函数。

21. 函数void Read(int b[],int &n)的功能是文件中的所有整数读入到数组b中,整数个数存入到n中。请实现该函数。

22.文件中存放了若干字符。函数int tongji(int &n)是统计文件中数字和字母的个数。将字母个数存入到n中,数字的个数作为函数值。请实现该函数。

三、递归函数设计

1.计算最大约数(m,n)可用递归形式定义如下:

若m%n等于0,则(m,n)等于n 否则,(m,n)等于(n,m%n)。

编写一递归函数,求最大约数,并测试。 )

2.编写一递归函数,计算下面的级数:

111m(i)1......

23i3.编写一递归函数,计算下面的级数:

12345im(i).....

3579112i14.编写一函数,逆序输出一个整数n。函数头如下:

void reverseDisplay(int value)

5.编写一函数,逆序输出一个字符串,函数头如下:

void reverseDisplay(const char *s) 6.编写一递归函数,统计一个指定字符在一个字符串中出现的次数,函数头如下: int count(char *,char )

7.编写一递归函数,计算一个整数中所有数字之和。函数头如下: int sumDigit(long n)

8. 编写一递归函数,计算2n

9. 编写一递归函数,计算1+2+3+4+…+n。n为正整数 10. 编写一递归函数,计算n!

因篇幅问题不能全部显示,请点此查看更多更全内容