文档库 最新最全的文档下载
当前位置:文档库 › C语言编程题练习

C语言编程题练习

C语言编程题练习
C语言编程题练习

1.编程求出1000到3000之间能被7、11、17同时整除的整数的平均值,并输出(结果保留两位小数)。

2.用选择结构的嵌套实现:判断一个数是否同时是5和7的倍数

3.在给定的含n(不超过100)个整数的数组中查找某个数m,若找到则打印在数组中第几个元素,若

不在该数组中则打印“无此数”。

4.编程判断输入的正整数是否既是5又是7的整倍数。若是,输出yes,否则输出no。

5.歌唱比赛有10个评委,分别给出1~100分,除去一个最高分,再除去一个最低分,剩余8个人的给

分的平均值作为选手的最终得分。请编写该程序。

6.输入一个正整数n(1

要求使用数组实现。

7.编程求1+(1+2)+…+(1+2+…+n),n的值由键盘输入。要求使用for语句实现

8.输入一个字符,判断它是否是小写字母,是小写字母,则将它转换成大写字母,如果不是,则不转换,

然后输出所得到字符。

9.输入1个整数,判断该数是奇数还是偶数

10.从键盘输入10个整数,统计其中正数、负数和零的个数,并在屏幕上依次输出。要求必须使用while

语句。

11.用数组实现以下功能:输入5个学生成绩,而后求出这些成绩的平均值并显示出来。

12.从键盘接收一个字符,如果是字母,输出其对应的ASCII码,如果是数字,按原样输入,否则给出提

示信息“输入错误!”。

13.在给定的含n(不超过100)个整数的数组中查找某个数m,若找到则打印在数组中第几个元素,若

不在该数组中则打印“无此数”。

14.编写一个程序,能够实现当从键盘输入x和y时,求出xy的结果。

15.定义一个菜单,用switch结构显示选择的菜单项

16.从键盘输入正整数n,输出1+1/3+1/5+1/7+…前n项的和.(输入的n<=10)

17.从键盘接收三个整数,分别存在变量x,y,z中。编程输出最大数。

18.实现从键盘输入两个字符串,分别存入两个不同的字符数组中;将两个字符串连接为一个字符串,并

打印输出连接后的整个字符。

19.输出打印九九乘法表。

20.输入一个字符,判断它是否是小写字母,是小写字母,则将它转换成大写字母,如果不是,则不转换,

然后输出所得到字符。

21.输入n个整数(假定n不超过100),将其中最小的数与第一个数对换,把最大的数与最后一个数对

换。

22.从键盘输入一个数,求出该数绝对值所对应的开方

23.键盘输入10个实型数,求其倒数的和并输出.

24.输入一个正整数n(1

25.编写程序,求S=(100/(1+2))*(100/(2+3))*(100/(3+4))*……前20项之积

26.编程程序,输入两个整数num1和num2,并根据运算符的不同进行不同的运算。例如,可以进行和、

差、乘、除、求余运算。

27.对任意给定的3个字符串(假定每个字符串长度不超过20),求其中最大者。提示:字符串操作相

关库函数,拷贝函数strcpy,字符串比较strcmp。

28.求一个3×3矩阵对角线元素之和。从键盘输入矩阵元素的值并输出和的值.

29.一个小球从100米落下,每次落地后反弹到原来高度的一半,然后再落下。问:第10次落地的时候,

一共经过了多少长度?第10次反弹高度是多少?

30.键盘输入2个加数,再输入答案,如果正确,显示“right”,否则显示“error”。

31.编程求出1000到3000之间能被7、11、17同时整除的整数的平均值,并输出(结果保留两位小数)。

32.输入10个整数,使用冒泡法对这10个数进行排序。要求使用数组实现。

33.从键盘接收一个字母,如果接收的是‘n’或者‘N’,则输出“no”。否则输出“wrong”。

34.统计在[2100-15870]之间有多少个数能被19整除,而不能被21整除。

35.输入一个正整数n(1

要求使用数组实现。

36.利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示, 60

分以下的用C表示。

37.设N是一个四位数,它的9倍恰好是其反序数(例如:1234的反序数是4321),求N的值

38.调查电视节目受欢迎程度。某电视台要调查观众对该台10个栏目(设编号为0~9)的受欢迎情况,

共调查了30位观众,现要求编写程序,输入每一观众的投票情况(每一位观众只能从10个栏目中选一个最喜欢的进行投票),统计输出各栏目的得票情况。

39.输入一个正整数n(1

40.求解简单的表达式。输入一个形式如“操作数运算符操作数”的四则运算表达式,输出运算结果,

要求使用switch语句编写。

41.求n!。

42.从键盘输入30名学生的成绩数据,求其中的最高分、最低分和平均分。(提示:用数组存放成绩数据)

43.编写程序,输入一个n阶(不超过6)方阵a,如果a是上三角矩阵(即主对角线以下的元素都是0,

主对角线为从矩阵左上角至右下角的连线),输出“YES”,否则,输出“No”。

44.编写程序,输入两个正整数m和n,计算m!+n!的值。

45.输入10个整数,统计同时能被3和7整除的个数,结果存放在变量nCount中,将nCount输出。要

求必须使用do-while语句实现。

46.从键盘输入你和你朋友的年龄,编程判断谁的年龄较大,并打印较大者的年龄。

47.素数是指除了 1 和它本身之外没有其它因子的自然数。编一程序,要求能够实现判断任一整数是否

为素数。

48.输入一个字符,再输入一个回车结束的字符串(少于80个字符),在字符串中查找该字符。如果找

到,则输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。

49.编程序实现求1-1000之间的所有奇数的和并输出。

50.有一函数当x<0时y=1,当x>0时,y=3,当x=0时y=5,编程,从键盘输入一个x值,输出y值。

51.实现从键盘输入两个字符串,分别存入两个不同的字符数组中;将两个字符串连接为一个字符串,并

打印输出连接后的整个字符

52.统计在[30-15810]之间有多少个数能被23整除,而不能被37整除。

53.中国古代科学家祖冲之采用正多边形逼近的割圆法求出了π的值。请编写一程序,采用割圆法求出π

的值,要求精确到小数点之后的第十位。

54.编程序,输入一个长度为20的整型数组,把数组中重复出现的元素删去(如出现三个0,则删去后

两个),输出删节后的新数组。

55.判断一个学生成绩的“优、良、中、差”: 假如从键盘输入的字母是‘A’,输出评语

“You are Excellent!”; 如果输入‘B’,输出评语“You are well!”; 如果输入‘C’,输出评语“You are passing!”; 如果输入‘D’,输出评语“You are not passing!”。如果输入的不是这四个字母,则出现提示“Input error!”请编写一个程序,实现该判断功能。要求必须使用switch-case结构实现。

56.编写一个程序,求a-|b|,其中a,b为两个整数。

57.键盘输入10个实型数,求其倒数的和并输出。

58.从键盘输入一个学生的分数, 要求实现这样的判断功能: 如果分数大于100,输出”Input error!”

如果分数介于100到90之间, 输出”Very Good!”如果分数介于80到90只,输出”Good!”如果

分数介于70到80之间,输出”Middle”如果分数介于60到70之间, 输出”Pass”如果分数小于60,输出”No Pass!”。要求必须使用if-else-if结构实现。

59.求 1 + 2 + 3 + …… + n的和。

60.定义一个5X5的整型数组,给每个元素赋0~100的随机数值,输出该数组内容并找到数值最大的数组

元素所在的位置。

61.神州行用户无月租费,话费每分钟0.6元,全球通用户月租费50元,话费每分钟0. 4元。输入一个

月的通话时间,分别计算出两种方式的费用,判断哪一种合适。

62.用循环的方法构造一个5行5列的二维数组,使主对角线上的变量为1,其它为0,并将数组中所有

项按行列打印出来。

63.编写程序,求S=1/(1+2)+1/(2+3)+1/(3+4)+……前50项之和。要求必须使用while语句实现。

64.输入一个年份year,判断改年是否是闰年。判断闰年的条件是:能被4整除但不能被100整除,或

能被400整除。

65.有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中。提示:考虑插入到

数组最开始、最末尾及中间三种情况。

66.输出以下杨辉三角形(要求输出10行)。

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

......

67.从键盘接收三个整数,分别存放在变量a,b,c中,编程求出最小数。

68.有一数列:2/1,3/2,5/3,8/5,……,求出这个数列的前10项之和。

69.输入3个整数,将它们按从大到小的顺序排序后输出。

70.输入日期(年、月、日),输出它是该年的第几天。提示:使用二维数组实现。

71.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上

又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的桃子的一半多一个。到第10天早上想再吃,见只剩下一个桃子了。求第一天共摘了多少桃子。

72.将一个3x2的矩阵存入1个3x2的二维数组中,找出最大值以及它的行下标和列下标,并输出该矩阵。

73.输入一个正整数,要求以相反的顺序输出该数。例如输入12345,输出位54321。注:建议使用while

语句实现。

74.输入20个字符,统计其中英文字母、数字字符和其他字符的个数。

75.有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中。提示:考虑插入到

数组最开始、最末尾及中间三种情况。

76.求解爱因斯坦数学题。有一条长阶梯,若每步跨2阶,则最后剩余1阶,若每步跨3阶,则最后剩2

阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶,若每步跨7阶,最后才正好一阶不剩。请问,这条阶梯共有多少阶?

77.用循环的方法构造一个5行5列的二维数组,使主对角线上的变量为1,其它为0,并将数组中所有

项按行列打印出来。

78.调查电视节目受欢迎程度。某电视台要调查观众对该台10个栏目(设编号为0~9)的受欢迎情况,

共调查了30位观众,现要求编写程序,输入每一观众的投票情况(每一位观众只能从10个栏目中选一个最喜欢的进行投票),统计输出各栏目的得票情况。

79.输入一个学生的生日和当前日期,输出该学生的实足年龄。

C语言程序设计程序填空题库及答案

程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); }

【】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言程序设计教程第一章练习题题目

单选题 1、下列语言中不属于计算机语言的三大类的是(C)。 A.机器语言 B.汇编语言 C.脚本语言 D.高级语言 2、下列说法中不正确的是(C) A.计算机语言大致可分为三大类,即机器语言、汇编语言和高级语言 B.C语言是一种通用的、过程式的编程语言,具有高效、灵活、可移植等优点 C.C语言属于汇编语言 D.高级语言比汇编语言更贴近于人类使用的语言,易于理解、记忆和使用 3、以下开发工具中不属于主流的开发工具的是(B) A.Visual Studio B.Xcode C.Code::Block D.Eclipse 4、下列选项是对主流开发工具的介绍,其中错误的是(B) A.Visual Studio支持C/C++、C#、F#、VB等多种程序语言的开发和测试 B.Code::Block是一个免费的跨平台IDE,支持C、C++和Fortan程序的开发 C.Eclipse是一种被广泛使用的免费跨平台IDE,最初由IBM公司开发 D.Vim是一款功能非常强大的IDE ( 和其他IDE不同的是,Vim本身并不是一个用于开发计算机程序的IDE,而是一款功能非常强大的文本编辑器,它是UNIX系统上Vi编辑器的升级版。) 5、下列选项中,不属于开发一个C语言应用程序的具体实现步骤的是(A) A.启动开发工具 B.添加源文件 C.编写代码 D.运行程序 6、下列选项中,关于main()函数叙述不正确的是(C) A.一个完整的C语言程序中,有且只能有一个main()函数 B.main()函数是程序的主入口,程序总是从main()函数开始执行 C.如果没有声明main()函数,程序将从第1行开始执行 D.main()函数可以有返回值,也可以没有返回值 7、下面程序中,合法的选项是(D) A.#includeint main() { printf("hello world\n"); return 0; } B.#includeint man() { printf("hello world\n"); return 0; } C.#includeint main() { printf("hello world\n") return 0; } D.#includeint main() { print("hello world\n"); return 0; } 8、下面程序中,运行结果为“1,2”的是(A) A.#includeint main() { int a = 1; int b = 2; printf("%d %d\n",a,b); return 0; } B.#includeint main() { int a = 1; int b = 2; printf("%d,"a); printf("%d\n",b); return 0; } C.#includeint main() { int a = 1, b = 2; printf("%d,,%d\n",a,b); return 0; }

C语言程序设计期末考试试题(含答案)

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( )

#include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、 1 B、 1 2 C、 1 2 3

C语言程序设计期末练习填空题.docx

面向对象程序设计期末综合练习二(填空题) 填空题 1.C++ 语言是在 _________语言的基础上发展起来的。 2.C++ 语言的编译单位是扩展名为 __________的 __________文件。 3.行尾使用注释的开始标记符为 __________ 。 4.多行注释的开始标记符和结束标记符分别为__________ 和 __________。 5.用于输出表达式值的标准输出流对象是_________。 6.用于从键盘上为变量输入值的标准输入流对象是________。 7.一个完整程序中必须有一个名为 ________的函数。 8.一个函数的函数体就是一条 _________语句。 9.当执行 cin 语句时,从键盘上输入每个数据后必须接着输入一个________符,然后才能继续输入下一个数据。 10.在 C++程序中包含一个头文件或程序文件的预编译命令为__________。 11.程序中的预处理命令是指以______字符开头的命令。 12.一条表达式语句必须以 ______ 作为结束符。 13.在#include 命令中所包含的头文件,可以是系统定义的头文件,也可以是 ________定义的头文件。 14.使用 #include 命令可以包含一个头文件,也可以包含一个______文件。 15.一个函数定义由 ________和 ________两部分组成。 16.若一个函数的定义处于调用它的函数之前,则在程序开始可以省去该函数的______语句。 17. C++头文件和源程序文件的扩展名分别为______和 ______。 18.程序文件的编译错误分为 ________和 ________两类。 19.当使用 _______保留字作为函数类型时,该函数不返回任何值。 20.当函数参数表用 ______保留字表示时,则表示该参数表为空。 21 .从一条函数原型语句“int fun1(void);”可知,该函数的返回类型为______,该函数带有______ 个参数。 22.当执行 cout 语句输出 endl 数据项时,将使 C++显示输出屏幕上的光标从当前位置移动到 ________的开始位置。 23.假定 x=5,y=6,则表达式 x++*++y 的值为 __________ 。 24.假定 x=5,y=6,则表达式x--*--y的值为__________。 25.假定 x=5,y=6,则执行表达式 y*=x++ 计算后, x 和 y 的值分别为 __________和 __________ 。 26.假定 x=5,y=6,则执行表达式 y+=x-- 计算后, x 和 y 的值分别为 __________和 __________ 。 27.C++ 常数 0x145 对应的十进制值为 __________。 28.C++ 常数 0345 对应的十进制值为 __________ 。 29.十进制常数 245 对应的十六进制的 C++表示为 __________。 30.十进制常数 245 对应的八进制的 C++表示为 __________ 。 31.signed char类型的值域范围是________至__________之间的整数。 32.int和float类型的数据分别占用_________和__________个字节。 33.float和double类型的数据分别占用_________和________个字节。 34.bool和char类型的数据分别占用_________和________个字节。 35.unsigned short int和int类型的长度分别为_________和________。

《C语言程序设计》综合练习题与答案

《C语言程序设计》综合练习题与答案 一、简要问答下列问题 1.什么是源程序? 2.C语言源程序的编译过程是怎样的? 3.简述C语言的特点 4.C/C++程序都是由函数组成的,其中最主要的、不可缺少的函数是哪一个?举例说明该函数的结构。 5.函数的返回值是通过什么语句来实现的,它的格式是什么? 6.在编写C程序时,为什么要把库函数的头文件包含到用户源程序中?如何把用户的头文件包含到用户源程序? 7.在计算机中,存储的数据为什么要分成多种不同的数据类型? 8.什么是常量?什么是变量? 9.C语言的五种基本数据类型有哪些?它们的关键字和所占的字节数分别是什么? 10.判断标识符是否合法的三条规则是什么? 11.什么是C语言的关键字?关键字对标示符有何影响? 12.全局变量和局部变量有什么区别? 13.什么是空语句,什么是语句块? 14.结构化程序设计的三种基本结构是什么? 15.三种循环语句各有什么特点? 16.什么叫多重循环结构? 17.Continue语句与break语句有什么区别? 18.字符与字符串有什么区别?‘b’与“b”相同吗? 19.什么是数组?一维数组的定义形式是怎样的? 20.字符串的结束标记是什么? 21.什么是按位操作?C语言对按位操作有哪些要求? 22.什么是指针?指针的两个操作符表示什么意义? 23.指针和数组有什么关系? 24.指针有那几种算术运算?说明指针变量的算术运算与一般变量的算术运算有何区别? 25.函数是由哪三部分组成的?函数定义的一般形式是什么? 26.函数原型是什么情况下使用?有什么作用? 27.形参和实参有什么关系,函数的两种调用方式是什么? 28.什么是函数的递归调用? 29.什么是函数指针?说明定义函数指针的一般形式。 30.什么是内部函数?什么是外部函数? 31.C语言的四种用户定义数据类型是什么? 32.C系统提供的三种主要预处理功能是什么? 33.什么是文件包含? 34.什么是文件?什么是流?

大学计算机C语言程序设计(填空题)

一、填空共219题 第1题题号:422 设有以下结构类型说明和变量定义,则变量a在内存所占字节数是【1】 . Struct stud { char num[6]; int s[4]; double ave; } a,*p; 答案: 1). 22 第2题题号:533 设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是【1】. for (x=0,y=0;y!=123&&x<3;x++) scanf ("%d",&y); 答案: 1). 3 第3题题号:496 静态变量和外部变量的初始化是在【1】阶段完成的,而自动变量的赋值是 在【2】时进行的. 答案: 1). 编译 2). 函数调用 第4题题号:96 已知a=13,b=6, a&b的十进制数值为【1】. 答案: 1). 4 第5题题号:398

程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次. 答案: 1). 0 第6题题号:651 设w=5;w+= -2;则w的值为【1】. 答案: 1). 3 第7题题号:258 下面程序段的输出结果是【1】. int a=12; a=a&0377;pritnf("%d\n",a); 答案: 1). 12 第8题题号:457 设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!(a+b)+c-1&&b+c/2 后,t的值是【1】. 答案: 1). 1 第9题题号:402 设a取二进制数00101101,若想通过a^b运算使a的高4位取反,低4位不变,则b的 二进制数是【1】. 答案: 1). 11110000 第10题题号:311 若所用变量均已正确定义,则执行下面程序段后的值是【1】. for(i=0 ; i<2 ; i++ ) printf("YES"); printf("\n"); 答案: 1). YESYES

C语言程序设计练习题(含程序及参考答案)21182

C语言练习题 (所提供的源程序均采用自定义函数方式解决,如不采用函数方式,也可直接在main函数中借鉴该思想编程,因时间有限,所有程序未能一一验证,仅供参 考使用) 1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。 #include int fun(int a,int b,int c) { if(a+b>c && b+c>a && a+c>b) { if(a==b && b==c ) return 3; else if(a==b||b==c||a==c) return 2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf("\nInput a,b,c: "); scanf("%d%d%d",&a,&b,&c); printf("\na=%d, b=%d, c=%d\n",a,b,c); shape =fun(a,b,c); printf("\n\nThe shape : %d\n",shape); }

2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include void fun(int *x,int *y) { int t; t=*x;*x=*y;*y=t } void main() { int a=3,b=8; printf("%d %d\n",a,b); fun(&a,b); printf("%d %d\n",a,b); }

C语言程序设计的试题及答案

C语言程序设计的试题及答案 C语言程序设计的试题及答案C语言程序设计的试题及答案第一章基础知识 一、填空 1.每个C程序都必须有且仅有一个________函数。 2.C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。 3.软件是程序,以及______、使用和维护所需要的所有文档。 4.国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。 5.程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。 6.C语言是由________组成的。 7.C语言的函数可分为主函数ain、标准库函数和_________。 8.一个函数是由两部分组成的,即:________和函数体。 9.编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。 10.程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作的要求。不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自

动化、管理信息系统、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。 11.机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。 12.与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对象,也可以用标号和符号来代替地址、常量和变量。 13.在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。 14.C程序的执行均是由执行_________开始。15.函数体即为包含在{}内的部分。它分为________和为完成功能任务由若干个C语句组成的执行部分。 16.C语言程序中一条简单语句是以________字符作为结束符的。 17.C语言是结构化、________的程序设计语言。 18.由于计算机硬件不能直接识别高级语言中的语句,因此,必须经过“_______程序”,将用高级语言编写的程序翻译成计算机硬件所能识别的机器语言程序方可执行。 19.用高级语言编写的程序需翻译成计算机硬件所能识别的机器语言程序方可执行。所以说,用高级语言进行程序设计,其编程效率高,方便易用,但_______没有低级语言高。 20.第一个系统体现结构化程序设计思想的教学工具语言是_______语言。

C语言程序设计函数练习题及参考答案

C语言程序设计练习题及参考答案 1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。 #include int fun(int a,int b,int c) { if(a+b>c && b+c>a && a+c>b) { if(a==b && b==c ) return 3; else if(a==b||b==c||a==c) return 2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf("\nInput a,b,c: "); scanf("%d%d%d",&a,&b,&c); printf("\na=%d, b=%d, c=%d\n",a,b,c); shape =fun(a,b,c); printf("\n\nThe shape : %d\n",shape); }

2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include void fun(int *x,int *y) { int t; t=*x;*x=*y;*y=t } void main() { int a=3,b=8; printf("%d %d\n",a,b); fun(&a,b); printf("%d %d\n",a,b); }

C语言程序设计试题集及答案

单项选择题 (002) 阅读程序题 (018) 程序填空题 (039) 编写程序题 (070) 一、单项选择题 导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。本类习题主要检查对C语言基本概念的掌握情况,读者可根据学习进度选做部分习题。在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。对于掌握不准的问题,应该通过上机实验来检验。 【1.1】以下不正确的C语言标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 【1.2】以下是正确的C语言标识符是____。 A) #define B) _123C) %d D) \n

【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。 ??? A) print B) i\am C) Pxq D) str_l ??? _3d one_half My->book Cpp ??? oodbs tart$it line# pow ??? aBc 3pai His.age while 【1.4】下面各选项组中,均是C语言关键字的组是。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type 【1.5】下列不属于C语言关键字的是。 A) default B) register C) enum D) external 【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。 A) 程序文件的开始B) 程序文件的最后 C) 它所调用的函数的前面D) 程序文件的任何位置 【1.7】下列关于C语言的叙述错误的是____ A) 大写字母和小写字母的意义相同 B) 不同类型的变量可以在一个表达式中 C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D) 同一个运算符号在不同的场合可以有不同的含义 【1.8】在C语言中,错误的int类型的常数是。 A) 32768 (超过了范围) B) 0 C) 037 D) 0xAF 【1.9】执行语句printf("%x",-1);屏幕显示____。 A) -1 B) 1 C) –ffff D) ffff 【1.10】已知long i=32768;执行语句printf("%d",i);屏幕显示____。 A) -1 B) -32768C) 1 D) 32768 【1.11】已知long i=65539; 执行语句printf("%d",i);屏幕显示____。 A) 65539 B) -3 C) 3D) 程序不能执行 【1.12】在C语言中,整数-8在内存中的存储形式是。 A) 1111 1111 1111 1000B) 1000 0000 0000 1000 C) 0000 0000 0000 1000 D) 1111 1111 1111 0111 【1.13】C语言中字符型(char)数据在内存中的存储形式是____。

华师《C语言程序设计》练习题库答案

《C语言程序设计》试题库答案 一、选择题(下列各题有四个选项,只有一个答案是正确的,请选出正确选项)1--5ACDCB 6--10 ACBAB 11--15CCADB 16--20BABCD 21--25CDACC 26--30 DDBDB 31--35DADAA 36—40BCBCC 41—45CDCCB 46--50 CBAAD 51--55 BCAAC 56--60 DBBCA 61--65 CDCCD 66-70 CDDAC 71—75 CCDBC 76—80 DDBCA 81—85 CDDDB 86—90 BBBAB 二、填空题 1、【1】1 【2】2 2、【1】4 【2】8 3、 -16 4、 -32768 ~ 32767 5、【1】单精度型(或:float)【2】双精度型(或:double) 6、【1】整型【2】字符型【3】枚举类型 7、 1 8、 26 9、【1】12 【2】4 10、【1】6 【2】4 【3】2 11、 -60 12、 2 13、【1】10 【2】6 14、 5.500000 15、 3.500000 16、 i:dec=-4,oct=177774,hex=fffc,unsigned=65532 17、 *3.140000,3.142* 18、 c:dec=120,oct=170,hex=78,ASCII=x 19、 *d(1)=-2*d(2)=-2*d(3)=-2* *d(4)=177776*d(5)=177776*d(6)=177776* 20、 *d(1)=-2*d(2)=-2*d(3)=-2* *d(4)=fffe*d(5)=fffe*d(6)=fffe* 21、 *d(1)=3.50000e+00*d(2)=3.500e+00*d(3)=3.500e+00* *d(4)=-3.50000e+00*d(5)=-3.50000e+00*d(6)=-3.5000e+00* 22、 x=1 y=2 *sum*=3 10 Squared is: 100 23、 (1) 10 (2) □□□□10 (□表示空格) (3) 56.100000 (4) □□□□□□3.141600 (5) 5.68100e+02 (6) □□□3.14160e+00

C语言程序设计练习题(含程序及参考答案)

1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰返回2,一般三角形返回1,若不能构成三角形返回0。 #include <> int fun(int a,int b,int c) { if(a+b>c && b+c>a && a+c>b) { if(a==b && b==c ) return 3; else if(a==b||b==c||a==c) return 2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf("\nInput a,b,c: "); scanf("%d%d%d",&a,&b,&c); printf("\na=%d, b=%d, c=%d\n",a,b,c); shape =fun(a,b,c); printf("\n\nThe shape : %d\n",shape); } 2、编写一个程序,将两个变量的值交换, 例如变量a中的值

原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include <> void fun(int *x,int *y) { int t; t=*x;*x=*y;*y=t } void main() { int a=3,b=8; printf("%d %d\n",a,b); fun(&a,b); printf("%d %d\n",a,b); } 3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。 例如,输入的数为:55 12 34, 输出结果应当是:a=,b=,c=。 #include <> void fun(float *p,float *q,float *s) { float k; if (*p<*q) { k=*p;*p=*q;*q=k;} if (*q<*s) { k=*s;*s=*p;*p=k;}

(完整word版)C语言程序设计填空题及答案复习用

. 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a,b); } 【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include double pi(long n) { double s=0.0; long i; for(i=1;i<=n;i++) s=s+ ①; return( ②); } 【3.3】下面的程序的功能是求一维数组中的最小元素。findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p0?t=-1:1; } printf("%d\n",s); } 【3.5】有以下程序段: s=1.0; for(k=1;k<=n;k++) s=s+1.0/(k*(k+1)); printf("%f\n",s); 填空完成下述程序,使之与上述程序的功能完全相同。 s=0.0; ①; k=0; do { s=s+d; ②; d=1.0/(k*(k+1)); }while( ③); printf("%f\n",s); 【3.6】下面程序的功能是从键盘上输入若干学生的学习 成绩,统计并输出最高成绩和最低成绩,当输入为负数 时结束输入。 main() { float x,amax,amin; scanf("%f",&x); amax=x; amin=x; while( ①) { if(x>amax) amax=x; if( ②) amin=x; scanf("%f",&x); } printf("\namax=%f\namin=%f\n",amax,amin); } 【3.7】下面程序的功能是将形参x的值转换为二进制数, 所得的二进制数放在一个一维数组中返回,二进制数的 最低位放在下标为0的元素中。 fun(int x,int b[]) { int k=0,r; do { r=x% ①; b[k++]=r; x/= ②; }while(x); } 【3.8】下面程序的功能是输出1到100之间每位数的乘 积大于每位数的和的数。例如数字26,数位上数字的乘 积12大于数字之和8。 main()

C语言程序设计填空题及答案复习用

C语言程序设计填空题及答案复习用 公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-

导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。【】下面程序的功能是不 用第三个变量,实现两个 数的对调操作。 #include <> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a ,b); a= ①; b= ②; a= ③; printf("a=%d,b=%d\n",a ,b); } 【】下面程序的功能是根 据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include <> double pi(long n) { double s=; long i; for(i=1;i<=n;i++) s=s+ ①; return( ② ); } 【】下面的程序的功能是 求一维数组中的最小元 素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言程序设计选择填空习题及答案

习题一 一、选择题 1.C程序的基本单位是(A)。 A.函数B.文件C.语句D.字符 2.C程序中的变量(B)。 A.不用说明B.先说明后引用 C.先引用后说明D.引用和说明顺序无关 3.变量的说明在(B)。 A.执行语句之后B.执行语句之前 C.执行语句当中D.位置无关 4.C语言是一种(C)。 A.机器语言B.符号语言 C.高级语言D.面向对象的语言 二、填空题 1.一个C程序总是从主函数开始执行。 2.结构化程序由顺序、选择、循环三种基本结构构成。 3.一个C程序只有一个名为main的主函数。 4.C程序中的每个语句以分号结束。 5.C程序中,函数由函数首部和函数体组成。 6.每个基本结构有一个入口和一个出口,没有死循环和死语句。7.算法是计算机解决问题所依据的步骤。 习题二 一、选择题 1.下列数据中属于字符串常量的是( B)。 A.ABC B."ABC" C.'abc' D.'A' 2.在计算机内存中,'\n'占用的字节数是( C)。 A.4 B.3 C.1 D.2 3.字符串"ABC"在内存中占用的字节数是( D)。 A.6 B.8 C.3 D.4 4.在C语言中,合法的长整型常数是( B)。 A.568701400 B.0L C.0.03546287 D.2.654e11 5.char型常量在内存中存放的是( A)。 A.ASCII代码值B.BCD代码值 C.十进制代码值D.内码值 6.下列各项中正确的标识符是( D)。 A.?bb B.a=8 C. b.βD.b_4 7.下列不正确的转义字符是( D)。 A.\\ B.\ 0 C.\" D.0x4

8.设整型变量a、b的值均为5,则表达式(m=n=a++)/(n=b-2)的值为( B)。 A.0 B.1 C.2 D.3 9.设a的值为5,执行下列语句后,b的值不为2的是( C)。 A.b=a/2 B.b=6-(--a) C.b=a%2 D.b=(float)a/2 10.执行语句x=(a=3,b=a--)后,x、a、b的值依次是( C)。 A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,2 11.设有语句int a=3;,则执行了语句a+=a-=a*a;后,变量a的值是( D)。 A.3 B.0 C.9 D.-12 12.在下列运算符中,优先级最高的是( B)。 A.&& B.% C.= D.>= 13.设整型变量a的值为3,则计算表达式a---a后,表达式的值为(B)。 A.1 B.0 C.2 D.表达式出错 14.设整型变量a、b、c的值均为2,表达式a---b+++c++的结果是( C)。 A.6 B.9 C.2 D.表达式出错 15.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是( D)。 A.1 B.2.5 C.2 D.2.0 16.下列表达式中符合C语言语法的赋值表达式是( C)。 A.a=4+b++c=a+8 B.a=4+b++=a+8 C.a=(4+b,b++,a+8) D.a=4+b,c=a+8 17.若有以下定义:char a;int b;float c;double d;,则表达式a*b+d-c的值的类型为( D)。 A.int B.float C.char D.double 二、填空题 1.在内存中存储"A"要占 2 个字节,存储'A'要占 1 个字节。 2.符号常量的定义方法是 #define 常量名常量。 3.无符号基本整型的数据类型符为 unsigned int双精度实型数据类型符为 double ,字符型数据类型符为 char 。 4.十进制数673的二进制、八进制和十六进值数分别为 1010100001 、 2412 和 2A1 。 5.在C语言中,书写八进制数时必须加前缀 0 ;书写十六进制数时必须加前缀 0x 。6.在微机上,int型、short型、long型、float型和double型数据一般在内存中分别占 2 字节、 2 字节、 4 字节、 4 字节和 8 字节。 7.设有下列运算符:<<、+、++、&&、>=,其中优先级最高的是 ++ ,优先级最低的是 && 。8.设x、y为int型变量,且x=1,y=2,则表达式1.0+x/y的值为 1.0 。 9.设整型变量x、y、z均为5,则: ①执行x-=y-z后,x的值为 5 。 ②执行x%=y+z后,x的值为 5 。 10.数学式 a b×c 的C语言表达式为 a/b*c) 。 三、简答题 1.字符常量与字符串常量有什么区别? 2.对于Turbo C系统来说,char型变量与int型变量在内存中存储数据的区别是什么?3.整型变量可细分为哪六类? 4.什么是一个实型数据的规范化指数形式?

C语言程序设计(02600)复习题

C语言程序设计 一、单项选择题 1.一个C语言程序总是从()位置开始执行。【】 A) 第一个函数B) 程序的第一行C) main( ) D) 第一条执行语句 2.字符…m?的ASCII码为109,有如下定义char a,则执行语句a=…9?+…m?-…8?后,【】变量a中的值为()。 A) a B) n C)m D) 109 3.下面的程序运行时输入数据:7,32↙(↙表示回车),输出结果为()。【】main() { int i,j; scanf(“%d%d”,&i,&j); printf(“%d”,i+j); } A) 39 B)7 C) 32 D) 不确定值 4.设有int a=3,b=2,c=1,d=5,m=4,n=4;执行(m=ad)后n的值为()。【】 A) 1 B) 2 C) 3 D) 4 5.为表示关系x≥y≥z,应使用C语言表达式()。【】 A) (x>=y)&(y>=z) B) (x>=y)AND(y>=z) C)(x>=y>=z) D)(x>=y)&&(y>=z) 6.指出下面哪项不是合法的变量名()。【】 A)_ANT B)4ant C)_ant_5_8 D)ant90 7.若运行时给变量m输入11,则以下程序的运行结果是()。【】main() { int m,n; scanf(“%d”,&m); n=m>12 ? m-- : ++m; printf(“%d,%d\n”,m,n); } A) 12,12 B) 11,11 C)11,12 D) 12,11 8.以下程序的运行结果是()。【】main() {int s=9; char grade; switch(s) {case 9 : grade='A'; case 8 : grade='B'; case 7 : grade='C';break; case 6 : grade='D'; } printf("%c\n",grade); } A) A B) B C) C D)D

C语言程序设计填空题及答案复习用

导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include main(){ int a,b;scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b);a= ①;b= ②;a= ③;printf("a=%d,b=%d\n",a,b);} 【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。#include double pi(long n){ double s=0.0;long i;for(i=1;i<=n;i++)s=s+ ①;return( ②);}【3.3】下面的程序的功能是求一维数组中的最小元素。findmin(int *s,int t,int *k){ int p;for(p=0,*k=p;p0?t=-1:1;}printf("%d\n",s);}【3.5】有以下程序段:s=1.0;for(k=1;k<=n; k++)s=s+1.0/(k*(k+1));printf("%f\n",s);填空完成下述程序,使之与上述程序的功能完全相同。s=0.0;①;k=0;do{ s=s+d;②;d=1.0/(k*(k+1));}while( ③);printf("%f\n",s);【3.6】下面程序的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。main(){ float x,amax,amin;scanf("%f",&x);amax=x;amin=x; while( ①){ if(x>amax) amax=x;if( ②) amin=x; scanf("%f",&x);}printf("\namax=%f\namin=%f\n ",amax,amin);}【3.7】下面程序的功能是将形参x的 值转换为二进制数,所得的二进制数放在一个一维数组 中返回,二进制数的最低位放在下标为0的元素中。 fun(int x,int b[]){ int k=0,r;do{ r=x% ①;b[k++]=r; x/= ②;}while(x);}【3.8】下面程序的功能是输出1 到100之间每位数的乘积大于每位数的和的数。例如数 字26,数位上数字的乘积12大于数字之和8。 main(){ int n,k=1,s=0,m;for(n=1;n<=100; n++){ k=1;s=0;①;while( ②) { k*=m%10; s+=m%10;③;}if(k>s)printf("%d",n);}}【3.9】下面 程序的功能是统计用0至9之间的不同的数字组成的三 位数的个数。main(){ int i,j,k,count=0;for(i=1;i<=9; i++)for(j=0;j<=9;j++)if( ①) continue;else for(k=0; k<=9;k++)if( ②) count++;printf("%d",count);} 【3.10】下面程序的功能是输出100以内的个位数为6、 且能被3整除的所有数。main(){ int i,j;for(i=0;①; i++) { j=i*10+6;if( ②) countinue;printf("%d",j);}} 【3.11】下面程序的功能是用辗转相除法求两个正整数 m和n的最大公约数。hcf(int m,int n){ int r; if(mmain(){ ①;int i,j;printf("Input 10 numbers please\n");for(i=0;②;i++ ) scanf("%f", &a[i]);printf("\n");for(i=2;③;i++ ) for(j=0;④; j++ )if( ⑤) { x=a[j];⑥;a[j+1]=x;}printf("The sorted 10 numbers;\n");for(i=0;⑦;i++ ) { if( ⑧) printf("\n");printf("%f\t",a[i]);}printf("\n");}【3.13】 下面程序的功能是读入20个整数,统计非负数个数,并 计算非负数之和。#include "stdio.h"main(){ int i,a[20],s,count;s=count=0;for(i=0;i<20; i++ )scanf("%d", ①);for(i=0;i<20;i++){ if(a[i]<0) ②;s+=a[i];count++;}printf("s=%d\t count=%d\n",s,count);}【3.14】下面程序的功能是 删除字符串s中的空格。#include main(){ char *s="Beijing ligong daxue"; int i,j;for(i=j=0;s[i]!='\0';i++)if(s[i]!= ' ') ①;else ②;s[j]= '\0';printf("%s",s);}【3.15】下面程序的功 能是将字符串s中所有的字符'c'删除。请选择填空。 #includemain( ){ char s[80];int i,j; gets(s);for(i=j=0;s[i]!= '\0';i++ )if(s[i]!= 'c') ①; s[j]= '\0';puts(s);} 【3.16】下面程序的功能是输出两个字符串中对应相等 的字符。请选择填空。 #include char x[]="programming"; char y[]="Fortran"; main() { int i=0; while(x[i]!= '\0' && y[i]!= '\0') if(x[i]==y[i]) printf("%c", ①); else i++; __________________________________________________

相关文档
相关文档 最新文档