精选-c语言复习题
c语言基础知识复习题模拟试题

c语言基础知识复习题模拟试题c语言是一种广泛使用的计算机编程语言,它以其高效性、灵活性和对硬件的直接控制能力而受到程序员的青睐。
为了帮助学习者复习和巩固c语言的基础知识,以下是一套模拟试题:一、选择题1. C语言中,以下哪个关键字用于声明一个变量?- A. var- B. define- C. int- D. declare2. 以下哪个是C语言的标准输入输出库?- A. <stdio.h>- B. <iostream.h>- C. <io.h>- D. <stream.h>3. 在C语言中,用于定义一个函数的关键字是:- A. function- B. def- C. void- D. return4. 下面哪个选项是C语言中正确的数组定义方式?- A. int array[5] = {1, 2, 3};- B. int [5] array = {1, 2, 3};- C. int array = {1, 2, 3};- D. int array[5] = 1, 2, 3;5. 在C语言中,哪个运算符用于计算两个数的和?- A. +- B. +=- C. ||- D. &&二、填空题1. 一个完整的C语言程序通常以______关键字开始,以main函数作为程序的入口点。
2. 在C语言中,______关键字用于定义一个函数的返回类型。
3. 在C语言中,______是基本数据类型之一,用于存储字符。
4. 一个C语言程序中,所有的函数调用必须在______函数中实现。
5. 在C语言中,______运算符用于连接字符串。
三、简答题1. 描述C语言中变量的作用域和生命周期。
2. 解释C语言中指针的概念以及如何声明和初始化一个指针。
3. 简述C语言中结构体的定义和使用。
四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和、差、积、商。
c语言答案——精选推荐

第一章习题1.1选择题:⑴一个C程序的执行是(A)。
A)从main()函数开始,直到main()函数结束B)从第一个函数开始,直到最后一个函数结束C)从第一个语句开始,直到最后一个语句结束D)从main()函数开始,直到最后一个函数结束⑵计算机能直接执行的语言是(B)。
A)汇编语言B)机器语言C)高级语言D)A和B⑶一个C程序是由(C)。
A)一个主程序和若干子程序组成B)若干过程组成C)一个或多个函数组成D)若干子程序组成⑷下列说法正确的是(B )。
A)C程序书写格式限制严格,一行内必须写一个语句B)C程序书写比较自由,一个语句可以分行写在多行上C)C程序书写格式限制严格,要求一行内必须写一个语句,并要求行号D)C程序中一个语句不可以分写在多行上1.2填空题:⑴构成C语言程序的基本单位是函数。
⑵C语言源程序文件的后缀是.c,经过编译后,生成文件的后缀是,obj,经过连接后,生成文件的后缀是.exe。
⑶在TURBO C环境中用RUN命令运行一个C程序时,所运行的程序的后缀是.exe。
⑷一个C语言程序必须有而且只能有一个主函数,它的函数名为main。
⑸一个函数有两部分组成,第一部分称为函数首部;第二部分称为函数体。
⑹函数体由符号{开始,用符号}结束。
函数体的前面是声明部分,其后是执行部分。
1.3上机编辑、调试、运行下列程序,发现错误,并改正之。
/*求1 + 2 + 3 + ……+ 10的和*/#include <stdio.h>main(){int s,n;sum = 0;n = 1;while(n < 0){sum = sum + n;n = n + 1;}printf("sum = %d \n",sum)}第二章习题2.1选择题⑴在以下标识符中,( B )是合法的用户标识符。
A)a#b B)getch C)void D)ab*⑵不合法的八进制数是(B)。
INT X X=23 %oA)0 B)028 C)077 D)01⑶不合法的十六进制数是(A)。
C语言 复习题.doc

C语言试卷复习题一选择题1、C语言中函数体一般包括?( D )A)声明部分B)执行部分C)语句部分D)声明部分和执行部分2、在下列符号中,可以选用作变量名的变量符号是?( C )A.caseB. "cdeC. e_aD. c&c3、若 x 为 float 型变量,且 x = 1234. 123,则 printf 3f", x)语句输出为?( A )A.1234.123B.-1234.123C. 01234. 123D. 1234.12304、在组成C程序的若干个函数中。
(B )A.只能有一个主函数,它可以由编程者自己命名B.只能有一个主函数,它被规定命名为main。
C.可能有一个以上的主函数,它可以由编程者自己命名D.主函数可有可无,如果有,它被规定命名为main()5、以下叙述正确的是?( C )A.在C程序中,每行只能写一条语句B.在C程序中,整数和实数都能准确无误地表示C.若float a;C程序中允许赋值a=10;所以实型变量可以存放整型数D.在C程序中,%只能用于整型数的运算6、若x为int型变量,则逗号表达式(x = 4*5,x*5,x+25)的结果为?( D )A. 20B. 45C. 100D. 1257、有说明char w; int x; float y;double z;则表达式w*x+z-y值的数据类型为?( B )A. floatB. doubleC.intD. char8、逻辑运算符两端运算对象的数据类型为?( B )A,只能是0和1 B.只能是0和非0的正数C.可以是任何类型的数据D.只能是整型的数据9、若有说明:inta[10];则对a数组元素的正确引用是?( D )A. a[10]B. a[3. 5]C. a(5)D. a[10T0]10、下面是一个初始化指针语句:int *pt=&a;其中指针变量的名字应该是?( A )B. *aC. pxD. &aA.pt11、在C语言中逻辑”真”用什么表示?( CA. TRUEB.大于1的数C.非0正数D.非012、对输入语句scanf ("%d:%d:%d”, &x, &y, &z)的正确输入为?( A )A. 1:2:3B. 1, 2, 3C. 1 2 3D. 12313、在C语言中,字符型数据在内存中是以(D )形式存放的。
C语言程序设计复习题(含参考答案)

C语言程序设计复习题(含参考答案)C语言程序设计复习题(含参考答案)一、单项选择题(本题共30小题,每小题2分,共60分)在每小题列出的四个备选项中只有一个是符合题目要求的。
1. 以下正确的C语言自定义标识符是______。
A. _1aB. 2a_C. doD. a.122、假设所有变量均为整型,则表达式(x=3,y=4,y++, y-x`)的值是______。
A.7B.1C.6D.23. 设int a, x=2; 执行语句a=x>0?3*x:x=10; 后,变量x的值是_______。
A. 1B. 2C. 6D. 104.设有以下程序段:int x=2,y=2,z=0,a;a=++x||++y&&z++;printf("%d,%d,%d\n",x,y,z);执行后输出的结果是_________。
A. 2, 2, 0B. 3, 3,1C. 3, 2, 0D. 3, 2, 15. 在C语言中,strlen("\\TOP\t\65\"")的值是_______。
A. 5 B.7C. 8D. 126. 设float x,由键盘输入:12.45, 能正确读入数据的输入语句是_________。
A. scanf("%5f",&x);B. scanf("%5d",&x);C. scanf("%f",x);D. scanf("%s",&x);7.若有int a=5;则逗号表达式a=2*6,a*3,a+5的值是_________。
A. 12B. 17C.36 D. 108. C语言程序中,整型常量的书写形式不包括_________。
A. 二进制B. 八进制C. 十进制D. 十六进制9.下面程序的输出结果是_____。
#includemain(){ float d=2.2; int x,y;x=6.2;y=(x+3.8)/5.0;printf("%f",d*y);}A. 4B. 4.4C. 2.2D. 010. 设int x;,则与计算︱x︱等价的表达式是_________。
C语言总复习练习题

C语⾔总复习练习题C语⾔期末整理练习题⼀.选择题1、以下选项中属于C语⾔的数据类型是()。
A. 复合型B. 双精度型C. 逻辑型D. 集合型2、选出下列标识符中不是合法的标识符的是()。
A. hot_doB. printfC. _priD. 2ab3、在下列选项中,不正确的赋值语句是()A. ++t;B. n1=(n2=(n3=0));C. k=i==j;D. a=b+c=1;4、以下4组⽤户定义标识符中,全部合法的⼀组是()A._main enclude sinB.If -max turboC.txt REAL 3COMD.int k_2 _0015、表⽰关系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、设C语⾔的⼀个int型数据在内存中占2个字节,则unsigned int型数据的取值范围是()A)0~255 B)0~32767 C)0~65535 D)0~21474836477、下⾯4个选项中,均是不合法的⽤户标识符的选项是()A)A P_0 doB)float la0 _AC)b-a goto intD)_123 temp INT8、下⾯4个选项中,均是合法整型常量的选项是()A)160 -0xffff 011B)-0xcdf 01a 0xeC)-01 986,012 0668D)-0x48a 2e5 0x9、下⾯4个选项中,均是不合法的整型常量的选项是()A)-0f1 -0xffff 0011B)-0Xcdf 017 12,456C)-018 999 5e2D)-0x48eg -068 03f10、下⾯4个选项中,均是不合法的浮点数的选项是()A)160. 0.12 e3B)123 2e4.2 .e5C)-.18 123e4 0.0D)-e3 .234 1e311、下⾯4个选项中,均是合法浮点数的选项是()A)+1e+1 5e-9.4 03e2B)-.60 12e-4 -8e5C)123e 1.2e-.4 +2e-1D)-e3 .8e-4 5.e-012、下⾯4个选项中,均是合法转义字符的选项是()A)’\’’‘\\’‘\n’B)’\’‘\017’‘\”‘C)’\018’‘\f’‘xab’D)’\\0’‘\101’‘xlf’13、下⾯4个选项中,均是不合法的转移字符的选项是()A)’\”‘‘\\’‘\xf’B)’\1011’‘\’‘\a’C)’\011’‘\f’‘\}’D)’\abc’‘\101’‘xlf’14、下⾯正确的字符常量是()A)”c”B)”\\”C)’W’D)’’15、下⾯4个选项中,均是正确的⼋进制数或⼗六进制数的选项是()A)-10 0x8f -011B)0abc -017 0xcC)0010 -0x11 0xf1D)0a12 -0x123 -0xa16、下⾯4个选项中,均是正确的数制常量或字符常量的选项是()A)’as’-0fff ‘\0xa’B)’\\’‘\101’’12,456’C)-0x18 01177 0xfD)0xabc ‘\0’“a”17、若有代数式,则不正确的C语⾔表达式是()A)a/b/c*e*3 B)3*a*e/b/c C)3*a*e/b*c D)a*e/c/b*3 18、以下表达式的值为3的是()A)16-13%10 B)2+3/2C)14/3-2 D)(2+6)/(12-9)19、有以下程序main(){int m=12,n=34;printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);}程序运⾏后的输出结果是()A. 12353514B. 12353513C. 12343514D. 1234351320、有以下程序main(){int a,b,d=25;a=d/10%9;b=a&&(-1);printf("%d,%d\n",a,b);}程序运⾏后的输出结果是()A. 6,1B. 2,1C. 6,0D. 2,021、读出以下语句的输出结果是( )。
c语言期末复习题

c语言期末复习题C语言期末复习题一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. IntegerB. intC. stringD. float2. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /3. 以下哪个是C语言中合法的变量名?A. 2variableB. variable2C. variable-twoD. variable#4. C语言中,哪个函数用于计算一个数的平方根?A. sqrt()B. pow()C. log()D. exp()5. 在C语言中,哪个语句用于结束一个循环?A. continueB. breakC. returnD. exit()6. 以下哪个是C语言中的控制语句?A. ifB. switchC. both A and BD. none of the above7. 在C语言中,数组的索引从哪个数字开始?A. 0B. 1C. -1D. 随机数8. 以下哪个是C语言中结构体的定义?A. struct name { ... };B. class name { ... };C. union name { ... };D. enum name { ... };9. 在C语言中,哪个函数用于将整数转换为字符串?A. atoi()B. itoa()C. toupper()D. tolower()10. C语言中,哪个函数用于输出格式化的字符串到控制台?A. printf()B. scanf()C. getchar()D. gets()二、填空题(每空2分,共20分)1. C语言中,基本数据类型包括______、______、______、______和______。
2. 在C语言中,定义一个字符变量可以使用关键字______。
3. 一个C程序的执行从______函数开始。
4. 在C语言中,使用______语句可以进行条件判断。
c语言答案——精选推荐

C语言基础一、选择题(每题3分)1.指针运算:int *p1, *p2; int value;p1 = (int *)0x500; p2 = (int *) 0x518; value = p2-p1;问:value的值?A 8B 4C 2D 6答案:D2、void main(void){ char x = 127;char a = x + 1;long b = x + 1;printf("%d, %d, %d", a, b);}请问输出多少_____A: 128, 128 B: -128, -128 C: 128, -128 D: -128, 128答案:D3.下面堆(Heap)与栈(stack)的差别叙述不正确的是A) Stack的空间由操作系统自动分配/释放,Heap上的空间手动分配/释放。
B) C中的malloc函数分配的内存空间即在堆上C)局部非静态变量和函数的入参都在栈中分配。
D) 程序中定义变量尽可能从堆中分配,因为堆的效率比栈高答案:D4. 定义如下变题和数组:int i;int x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是for(i=0;i<3;i++)printf(“%d”,x[i][0]);A)1 5 9 B)1 4 7 C)3 5 7 D)3 6 9答案:B5.关于sizeof下列哪些说法是正确的(A)A)sizeof运算符在编译阶段执行。
B)sizeof的参数不可以是常量。
C)sizeof运算符在程序运行阶段执行。
D)sizeof运算符与系统字节对齐没有关系。
6.关于strlen和sizeof,下列哪些说法是正确的(B)A)sizeof函数是在程序运行阶段执行。
B)strlen函数是在程序运行阶段执行。
C)sizeof函数的结果跟字节序有关系。
D)strlen函数的结果跟字节对齐有关系。
7.关于编译的说法哪些是正确的(AB)A)#if #endif等标志符在预编译阶段处理。
C语言常见复习题(选择填空)及参考答案

C语言常见复习题及参考答案一、选择题1.下述标识符中,()是合法的用户标识符。
A.A#CB.getchC.voidD.ab*2.在C语言中,字符型数据在内存中是以()形式存放的。
A.原码B.BCD码C.反码D.ASCII码3.以下选项中不合法的用户标识符是()。
A.abc.cB.fileC.MainD.PRONTF4.以下选项中不合法的用户标识符是()。
A.123B.printfC.Anbsp;D.Dim5.可以在C语言程序中用做用户标识符的一组标识符是()。
A.voidB.as-b3C.forD.2cdefine -123 -abc DoWORD If cas SIG6.在以下各组标识符中,合法的用户标识符是(1)、(2)、(3)。
(1)A.001 B.table_1 C.0_t D.k%Int t*.1 W10 point(2)A.Fast_ B.void C.pbl D.Fast+Big abs fabs beep(3)A.xy_ B.longdouble C.*p D.CHAR变量1 signed history Float7.()是构成C语言的基本单位。
A.函数B.过程C.子程序D.子例程8.若有说明:char s1='\067';char s2="1";char s3='1';则s1中(1),s2中(2),s3中(3)。
(1).A.包含3个字符 B.包含2个字符C.包含1个字符D.无定值,说明不合法(2).A.包含1个字符 B.包含2个字符C.包含3个字符D.无定值,说明不合法(3).A.包含1个字符 B.包含2个字符C.包含3个字符D.无定值,说明不合法9.若x为int型变量,则执行以下语句后,x的值为x=6;x+=x-=x*xA.36B.-60C.60D.-2410.在C语言中,char 型数据在内存中是以()形式存储的。
A.原码B.补码C.ASCII码D.反码11.以下运算符中优先级最低的算符为(),优先级最高的为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1[单选题]有以下程序
#include
Main()
{ int a=3;
Printf(“%d\n”,a+=a-=a*a
程序运行后的输出结果是
A.3 B.9 C.0 D.-12
参考答案:D
参考解析:本题考查目的是运算符的结合性和优先级。首先计算a*a,结果
为9,然后执行a=a-9,即3-9,结果为-6,然后执行a=(-6)+(-6),即8=的值
为-12。所以选择D。
2[单选题] 以下叙述中正确的是
A.两个字符串可以用关系运算符进行大小比较
B.函数调用strlen(s);会返回字符串S实际占用内存的大小(以字节为单
位)
C.C语言本身没有提供对字符串进行整体操作的运算符
D.当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间的
和
参考答案:C
参考解析:本题考查字符串处理函数strien、strcat、strcmp。B选项中
strlen返回的是字符串s实际占用内存大小加上结尾符,A选项中不能用关系运
算符进行大小比较,可以使用strcmp。D选项当使用连接函数strcat时,内存
空间会减少一个字符位置。
3[单选题] 一个工作人员可以使用多台计算机,而一台计算机可被多个人使
用,则实体工作人员与实体计算机之间的联系是( )。
A.一对一B.一对多C.多对多D.多对一
参考答案:C
参考解析:因为一个人可以操作多个计算机,而一台计算机又可以被多个人
使用,所以两个实体之间是多对多的关系。
4[单选题] 对于while(!E)s;,若要执行循环体s,则E的取值应为:
A.E等于1B.E不等于0C.E不等于1D.E等于0
参考答案:D
参考解析:while语句的一般形式为:while(表达式)语句;其中表达式是循
环条件,语句为循环体。while语句的语义是:计算表达式的值,当值为真(非
0)时,执行循环体语句。该题中如要执行语句s,则!E应为真,因此E应等于0,
D选项正确。
5[单选题] 在软件设计中不使用的工具是( )。
A.系统结构图B.PAD图C.数据流图(DFD图)D.程序流程图
参考答案:C
参考解析:系统结构图是对软件系统结构的总体设计的图形显示。在需求分
析阶段,已经从系统开发的角度出发,把系统按功能逐次分割成层次结构,是在
概要设计阶段用到的。PAD图是在详细设计阶段用到的。程序流程图是对程序流
程的图形表示,在详细设计过程中用到。数据流图是结构化分析方法中使用的工
具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必
须完成的逻辑功能,所以它是一种功能模型,是在可行性研究阶段用到的而非软
件设计时用到,所以选择C。
6[单选题] 若有定义语句:char a='\82';则变量a( )
A.说明不合法B.包含1个字符C.包含2个字符D.包含3个字符
参考答案:B
参考解析:char a='\82',定义字符量a,char型变量值为1个字节长度,
并从右侧开始运算,所以a的值应为'2'。因此B选项正确。
7[单选题] 有以下程序
程序运行后的输出结果是
A.to Beijing!B.you to Beijing!C.Welcome you to Beijing!D.Beijing!
参考答案:A
参考解析:while函数判断P指针指向地址的内容是否和a指针指向地址的
内容相等,如果不是,则移动指针p+1,当p指向*b字符串中的´y´时,和*a首
地址元素相等,退出while语句后,P再向右移动a字符串长度+1个单位地址,
此时P指向´t´,输出´t´及剩余的字符串,答案为A选项。
8[单选题] 若fp已定义为指向某文件的指针,且没有读到该文件的末尾,
则C语言函数feof(fp)的函数返回值是
A.EOFB.非0C.-1D.0
参考答案:D
参考解析:本题考查文件的定位,feof函数的用法是从输入流读取数据,
如果到达文件末尾(遇文件结束符),eof函数值为非零值,否则为0,所以选项
D正确。
9[单选题] 有以下程序:
参考答案:C
参考解析:flm()函数作用冒泡法排序,fla9控制升序(0)或者降序(1)。n
为参与排序的元素个数。a为数组的起始地址。因此,flm(a,4,1),数组的前
四个降序排序,fun(a+4,6,O)对数组的第四项后六个元素进行升序排序。故结
果为10,9,8,7,1,2,3,4,5,6。答案为C选项。
10[单选题] 以下叙述中正确的是
A.只要适当地修改代码,就可以将do-while与while相互转换
B.对于“for(表达式1;表达式2;表达式3)循环体”首先要计算表达式2的
值,以便决定是否开始循环
C.对于“for(表达式1;表达式2;表达式3)循环体”,只在个别情况下才能
转换成while语句
D.如果根据算法需要使用无限循环(即通常所称的“死循环”),则只能使用
while语句
参考答案:A
参考解析:B选项中,for语句中需要先求解先求解表达式1;C选项中,for
语句使用最为灵活,它完全可以取代while语句;D选项中,对于死循环,也可
以使用for语句。因此A选项正确。
(注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分
来自网络,供参考。可复制、编制,期待你的好评与关注)