C语言机试题终极汇总 联系客服

发布时间 : 星期六 文章C语言机试题终极汇总更新完毕开始阅读2847a5f49e3143323968933c

第一部分-分支、循环部分

1、 某一次考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。

2、 从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。例如输入355和113,

输出3.14159.

3、 用while循环结构编写程序打印ASCII码为33-127的字符 4、 用do-while,for循环结构编写程序打印ASCII码为33-127的字符 5、 用for循环结构编写程序打印ASCII码为33-127字符

6、 在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构 7、 输入一个整数将其倒着输出,如54321 8、 计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4 9、 从键盘输入一整数n,计算1*1+2*2+...+n*n的值 10、 用 while 循环计算1+2+……+100的和 11、 用 do while循环计算1+2+……+100的和 12、 用 for 循环计算1+2+……+100的和 13、 输入一个小于等于10的整数n ,计算n!

14、 输入两个正整数m和n,计算m!+n!,m和n的值均小于10。 15、 用循环语句,计算1~100之间的所有3的倍数之和 16、 用循环语句,计算100-200之间的所有7的倍数之和

17、 输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数 18、 输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数 19、 输入一个整数,统计它有几位数

20、 编写程序,输出1到50中间所有能被3整除的正整数 21、 把100~200之间不能被3整除的输出 22、 编程Y=1+3+5+7+...111

23、 编程y=1*1/2*1/3*1/4*1/5*1/6*...前十项之积 24、 编程实现九九乘法表 25、 求1到100奇数和 26、 求1到100偶数和

27、 编程求200以内所有质数(素数) 28、 从键盘输入一个整数,求该数的绝对值

29、 从键盘输入+、-、*、/中的任一个,输出对应的英文单词:plus、minus、mutiply、divide,如输入

的不是这4个字符中的任一个,则输出“sorry,you are wrong”。

30、 从键盘输入一个字符,判断其是否为a,r,或f,并输出相应的信息(不区分大小写)。

31、 编一程序,对于给定的一个百分制成绩,输出用像'A','B','C','D','E'表示的等级成

绩。设:90分以上为'A',80~89分为'B',70~79分为'C',60~69分'D',60分以下为'E'。(要求

用switch语句编程)。

32、 输入一个整数,判断它能否被3,5,7整除。 33、 用整数1~12依次表示1~12月,由键盘输入一个月份数,输出对应的季节英文名称(12~2

月为冬季;3~5月为春季;6~8月为夏季;9~11月为秋季。要求用if嵌套实现)。

34、 编写输入整数a,b,c,当a为1时显示b和c之和,a为2时显示b与c之差,a为3

时显示b*c之积,a为4时取b/c之商,a为其他数值时不做任何操作的程序。

35、 编写输入一个整数,将其数值按小于10,10~99,100~999,1000以上分类并显示。 36、 编写输入一个整数,当为65时显示A,66时显示B,67时显示C,其他值时显示END

的程序。

37、 编程实现:输入4个整数,要求按由小到大输出

38、 企业发放的奖金根据利润的提成,利润I低于或等于10万元的,奖金可提10%;利润高于10万元

低于20万时,低于10万的部分按10%提成,高于10万元的部分,可提成7.5%;20万元

60-69分为’D’,60分以下为’E’。

40、 给出一个不多于5位的正整数,要求①求出它是几位数;②分别打印出每一位数字。 41、 从键盘输入三个正整数,判断这三个数能否构成三角形。

42、 编写输入两个整数a和b,若a≥b时,求其积c并显示,若a

程序。

43、 用循环结构实现下列图形的输出:

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

45、编程实现:从键盘输入三个正整数,判断它们是否构成直角三角形 46、编程实现:从键盘输入三个正整数,判断它们是否构成等腰三角形 47、用循环结构输出下列图形 * ** *** **** ***** ****** ******* ******** ********* **********

48、用循环结构输出下列图形 ********** ********* ******** ******* ****** ***** **** *** ** *

49、从键盘输入一个整数,判断其是否素数

50、两个乒乓球队进行比赛,各出3人。甲队为A,B,C3人,已队为X,Y,Z3人。已抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比,请编程找出3对赛手的名单。 51、编写程序,从键盘输入两个不等于零的正整数a,b(a

52、编写程序,统计从键盘输入的字符的个数(回车换行符也是一个字符),当遇到结束标志时程序结束。 53、编写程序,求面积在100平方米以内的半径,输出所有满足条件的半径值和圆的面积的值。 54、编写程序,在屏幕上输出阶梯形式的乘法口诀表。

55、求两个正整数的最大公约数和最小公倍数。

56、某人有5张2角和4张3角的邮票,使用这些邮票能组合出多少种不同面值的邮资。 57、求不超过1000的回文素数。

58、自守数是指一个数的平方的尾数等于该数自身的自然数。如:76=5776,求出2000000

2

以内的自守数。

59、输入自然数n,将n分解为质因子连乘的形式输出。例如,输入756,则程序显示为756=2*2*3*3*3*7。

60、从键盘上输入若干个学生的成绩,当成绩小于等于0时结束输入。计算出平均成绩,并输出不及格的成绩和人数。

第二部分-函数、数组、指针

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.

编一函数,将一个字符串的字符反向输出到屏幕。 例6-5 编一函数,从键盘输入一个正整数n,求n!。 编一函数,从键盘输入一个正整数n,求Xn

编一函数,从键盘输入2个正整数,求最小公倍数。 输入1行字符(不超过80个字符)。编一函数,统计该行字符中数字的个数。

输入一个5行、6列的整数数组,先以5行6列的格式输出该数组;从键盘输入一个整数,然后编一函数,查找该数是否在数组中。

编写程序,通过调用函数int abs_sum(int a,int b),求从键盘输入的任意3个整数的绝对值的和。

Fibonacci数列的组成规律为:0,1,1,2,3,5,8,13,21,?。编写程序,求Fibonacci数列第i项的值(0≤i≤40)。

编写程序,通过调用函数double area(double r),计算园的面积,要求圆的半径r从键盘输入。

编写程序,通过调用函数double area(double r, double h),计算园柱的表面积,要求圆柱的半径r及高h的值从键盘输入。

编写程序,通过调用函数double area(double r, double h),计算园柱的体积,要求圆柱的半径r及高h的值从键盘输入。

编写一个函数,计算并返回一个整数的立方。 设计一个函数,交换数组a和数组b的对应元素。 编写一个函数,求满足一下条件的最大的n值。

21+ 22+ 23+. . . +2n<1000

15. 设有两个整型数组a,b,试比较这两个数组统计出这两个数组中对应元素相等与不相等

的个数。

16. 找出二维数组的鞍点,即该位置上的元素是该行上的最大值,是该列上的最小值。二

维数组也可能没有鞍点。

17. 编写程序,将字符串str中的所有字符k删除。

18. 回文是从前向后和从后向前读起来都一样的句子。写一个函数,判断一个英文字符串

是否为回文。

19. 从键盘输入整数n,输出由*号组成的高度为n的等腰三角形图案。

例如,当n=5时,输出的图案如下:

20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30.

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

若有说明:int a[2][3]={{1,2,3},{4,5,6}};,现要将a的行和列的元素互换后存到另一个二维数组b中,试编程。

求Sn=a+aa+aaa+?+aaa?a的值。例如当a=2,n=4时,Sn=2+22+222+2222。a和n由键盘输入。(用函数调用实现)

求两个正整数的最大公约数 (用函数调用实现)。

计算1!+2!+3!+?+n!的值,n值由键盘输入(要注意n!的有效性)。 编写程序,用冒泡法对20个整数排序。

编写程序,将一个数插入到有序的数列中去,插入后的数列仍然有序。 输入1行字符(不超过80个字符)。编一函数,统计该行字符中空格的个数。 编一函数,连接2个字符串,输出连接后的字符串。

编一函数,将1个字符串复制到另1个字符串,输出字符串。

输入一个5行、6列的数组,先以5行6列的格式输出该数组,然后编一函数,找出该数组中值最小的元素,输出该元素及其两个下标。 输入1行字符(不超过80个字符)。编一函数,统计该行字符中字母的个数。

31. 编写程序,用冒泡法对20个从键盘输入的字符排序后输出。

32. 编写程序,在有序的数列中查找某数,若该数在此数列中,则输出它所在的位置,否则

输出no found。

33. 编写函数,从一个排好序的整型数组中删去某数。

34. 数组a长度为10,保存10个整数。试编程将数组中的元素逆置。要求:使用自定义函数实

现逆置操作。(将数组中元素顺序颠倒)

35. 编程模拟字符串复制函数strcpy。要求:不能调用系统函数,使用自定义函数实现 36. 编程模拟字符串比较函数strcmp。要求:不能调用系统函数,使用自定义函数实现 37. 编程模拟字符串连接函数strcat。要求:不能调用系统函数,使用自定义函数实现 38. 编程模拟字符串操作函数strupr(小写转化为大写)。要求:不能调用系统函数,使用自定

义函数实现

39. 编程模拟字符串操作函数strlwr(大写转化为小写)。要求:不能调用系统函数,使用自定

义函数实现

40. 从键盘输入5个整数,保存于数组中。编程找出其中最大值和最小值,把二者位置对调,

然后输出调整后的数组。要求:使用自定义函数实现对调。

41. 有一个已排序好的数组,现输入一个数,要求按原来排序规则插入到数组中。使用自定义

函数实现。

42. 使用二维数组,计算并输出以下形式的杨辉三角(要求输出10行)

43. 1 44. 1 1 45. 1 2 1 46. 1 3 3 1 47. 1 4 6 4 1 48. 1 5 10 10 5 1

49. ……

50. 编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数 51. 请编一个函数fun(char *s),函数的功能是把字符串中所有的字母改写成该字母的下一个字