C语言复习补充题

合集下载

c语言补考试题及答案

c语言补考试题及答案

c语言补考试题及答案C语言补考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个是合法的变量名?A. 123abcB. var1C. forD. case答案:B2. 在C语言中,以下哪个语句是正确的?A. int a = 10;B. int a = "10";C. int a = 10.0;D. int a = 0x10;答案:A3. 下列哪个是C语言中的逻辑运算符?A. &&B. ||C. =D. ++答案:A4. C语言中,以下哪个不是标准库函数?A. printf()B. scanf()C. strcpy()D. myFunction()答案:D5. 在C语言中,以下哪个是正确的数组声明?A. int array[10] = {1, 2, 3};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2, 3, 4, 5, 6};D. int array = {1, 2, 3};答案:B6. C语言中,以下哪个是正确的字符串字面量?A. 'Hello World'B. "Hello World"C. Hello WorldD. "Hello\nWorld"答案:B7. 以下哪个是C语言中的控制语句?A. ifB. switchC. do-whileD. 所有选项都是答案:D8. 在C语言中,哪个关键字用于定义函数?A. functionB. defC. voidD. int答案:C9. 下列哪个是C语言中的位运算符?A. +B. -C. &D. /答案:C10. 在C语言中,以下哪个是正确的循环结构?A. for(;;)B. while(1)C. do { ... } while(0)D. 所有选项都是答案:D二、填空题(每空2分,共20分)1. C语言中,定义一个整型变量a的语句是 int a; 。

C语言补充练习题

C语言补充练习题

第一、二章 C语言概述及数据和运算一、单项选择题1.以下关于C语言的特点,正确的是。

A.表达能力强且灵活;B.可移植性好;C.提供了丰富的数据类型,允许程序员定义各种类型的变量指针和函数指针;D.以上答案都对。

2.”a”在内存中占字节。

A. 1个B. 2个C. 3个D. 4个3.‟A‟+10的结果是。

A.‟K‟B.”K”C.‟J‟D.”J”4. a=b+=c+5,若b=1,c=2,则a的值是。

A.1 B.7 C.8 D.出错5.下列合法的变量名是。

A.123 B.next C.int D.*x6.C源程序的基本单位是:A.程序行 B.语句 C.函数 D.字符7.字符型数据在微机内存中的存储形式是:A.反码 B.补码 C.EBCDIC码 D.ASCII码8. 用C语言编制的源程序要变为目标程序,必须经过:A. 汇编B.解释C. 编辑D.编译9. 请选出可作为C语言用户标识符的一组标识符:A.voidB.a3_b3C.ForD.Zadefine _123 _abc DOWORD IF case sizeof10.设有语句char a=‟\73‟;则变量a:A.包含1个字符B.包含2个字符C.包含3个字符D.说明不合法11.以下选项中正确的整型常量是:A.12.B.-20C.1,000D.4 5 612若变量已正确定义并赋值,不符合C语言语法的表达式是:A. a=a+7B.a=7+b+c,a++C.(int)(12.3)%4D.a=a+7=c+b13.以下选项中不合法的用户标识符是A.abc.cB.fileC.MainD.PRINTF14.以下选项中正确的实型常量是A. 0B. 3.1415C.0.329 102D. .87115.TURBO C中int类型变量所占字节数是:A.1B.2C.3D.416.下列说法不正确的是___________A.C程序由若干个源文件组成,一个源文件由若干个函数组成。

c语言补考试题及答案

c语言补考试题及答案

c语言补考试题及答案一、选择题(每题2分,共10分)1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. =D. :答案:D3. 在C语言中,哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A4. 下列哪个选项是正确的C语言变量声明?A. int a = 10, b = 20;B. int a = 10; b = 20;C. int a = 10; int b = 20;D. int a = 10, b = 20;答案:A5. C语言中,用于定义一个空指针的关键字是:A. NULLB. voidC. 0D. none答案:A二、填空题(每题2分,共10分)1. 在C语言中,字符常量可以用单引号括起来,例如:'A'。

()答案:正确2. C语言中,一个函数可以返回多个值,通过使用指针参数。

()答案:正确3. C语言中,数组的索引是从0开始的。

()答案:正确4. 在C语言中,关键字`const`用于定义一个常量。

()答案:正确5. C语言中,`sizeof`运算符用于获取变量的大小。

()答案:正确三、简答题(每题5分,共20分)1. 请简述C语言中指针的作用。

答案:指针在C语言中用于存储变量的内存地址,它允许程序员直接访问和操作内存,从而提高了程序的灵活性和效率。

2. 解释C语言中函数原型的作用。

答案:函数原型在C语言中定义了函数的名称、返回类型和参数类型,它允许编译器在编译时检查函数调用的一致性,确保参数类型和数量正确。

3. 描述C语言中数组和指针的关系。

答案:在C语言中,数组名可以被用作指向数组首元素的指针。

数组和指针紧密相关,数组的每个元素都可以通过指针访问。

C语言补充习题

C语言补充习题

补充习题一、单选题1、下列语句中,符合语法的赋值语句是。

CA)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=(7+b,b++,a+7);D)a=7+b,c=a+7;2、对于char cx='\039';语句,正确的是。

AA)不合法B)cx的ASCII值是33C)cx的值为四个字符D)cx的值为三个字符3、以下所列的C语言常量中,错误的是。

BA)0xFF B)1.2e0.5C)2L D)‘\72’4、有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量 a的值为1,b的值为3,c的值为2,则正确的数据输入方式是。

DA)132↙B)1,3,2↙C)a=1 b=3 c=2↙D)a=1,b=3,c=2↙5、逻辑运算符两侧运算对象的数据类型。

DA)只能是0或1 B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据6、C语言对嵌套if语句的规定是:else总是与。

DA)其之前最近的if配对B)第一个if配对C)缩进位置相同的if配对D)其之前最近的且尚未配对的if配对7、设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为。

BA)1 B)2C)3 D)48、以下程序段的循环次数是。

Bfor (i=2; i==0; ) printf(“%d” , i--) ;A)无限次B)0次C)1次D)2次9、循环语句的循环体中执行 continue 语句,其作用是。

CA) 立即终止程序运行B) 继续执行 continue 语句之后的循环体各语句C) 结束本次循环D) 结束本次循环,跳出循环10、以下正确的说法是。

AA)实参和与其对应的形参各占用独立的存储单元B)实参和与其对应的形参共占用一个存储单元C)只有当实参和与其对应的形参同名时才共占用相同的存储单元D)形参时虚拟的,不占用存储单元11、以下正确的描述是。

c语言考试题及答案补考

c语言考试题及答案补考

c语言考试题及答案补考一、选择题(每题2分,共20分)1. 下列哪个是C语言的关键字?A. intB. integerC. stringD. float答案:A2. C语言中,哪个函数用于计算两个数的和?A. add()B. sum()C. max()D. min()答案:B3. 在C语言中,哪个语句用于结束程序?A. break;B. continue;C. exit();D. return;答案:C4. 以下哪个不是C语言的基本数据类型?A. charC. doubleD. string答案:D5. 在C语言中,数组的索引从哪个数字开始?A. 0B. 1C. -1D. 随机数答案:A6. 下列哪个是正确的C语言变量声明?A. int var = 5;B. var = 5;C. int 5var;D. var = int(5);答案:A7. C语言中,哪个运算符用于求模?A. /B. %C. *D. -答案:B8. 以下哪个是C语言中的逻辑运算符?B. ||C. !D. 所有选项都是答案:D9. 在C语言中,哪个语句用于循环遍历数组?A. forB. whileC. do-whileD. switch答案:A10. C语言中,哪个函数用于将整数转换为字符串?A. to_string()B. itoa()C. sprintf()D. atoi()答案:B二、填空题(每题2分,共20分)1. 在C语言中,`printf`函数用于_______。

答案:输出信息到标准输出2. 一个C语言程序的执行从`main`函数的_______开始。

答案:第一行3. C语言中的`switch`语句中,`case`后面必须跟一个_______。

答案:常量表达式4. 在C语言中,`sizeof`运算符用于获取_______。

答案:变量或类型所占的内存大小5. 如果要在C语言中定义一个字符数组,可以使用_______。

答案:char array_name[size];6. C语言中的`if`语句用于_______。

C语言补充题2

C语言补充题2

一、选择题(一)概述1.(A )为正确变量名A)pro_5 B)case C)5_pro D)else2.( C )为正确的用户标识符。

A)min-5 B)3_row C)max_at D)union3.下面叙述正确的是(C )A)程序中必需包含自定义函数B)main( )函数必须位于源程序文件的开头C)所有语句都必须以分号“;”结束D)每行最多只能写两个语句4.下面叙述错误的是(A )A)注释说明部分只能位于C源程序的最前面B)C源程序必须包含一个main()函数C)C源程序可由一个或多个函数组成D)一个C源程序的执行是从main( )函数开始,直到main( )函数结束(二)语法基础5.下面叙述错误的是(C )A)算术运算符中不包含“=”运算符B)模运算符“%”是C语言基本的算术运算符C)算术运算符只有“*”,“/”优先级高于关系运算符D)自增和自减运算符只能用于变量,而不能用于常量或表达式6.下面叙述中正确的是(B )A)(3+9)++是正确的表达式B)C语言中的整型与字符型变量混合运算的结果是整型C)模运算符“%”两边运算数的数据类型是任意的D)“abc”+“xxx”是正确的表达式7.若有定义:int i=3, j=6; 则表达式(- -i)*(j++)的值为(A)。

A)12 B)10 C)18 D)158.若有定义:float x=3.5, y=5.5; 则表达式(B )的值为2.A)(x+y)%7 B)(int)(x+y)%7C)(int)x+y%7 D)int(x+y)%7 9 若有定义int x=1, y=2, n=3; 则(B )为正确表达式A)x=ny B)x=y*3, y=(x+n)/yC)(x+y)(y+n) D)float(y/n)10若有定义:int a, 且表达式!a的值为0,则表达式(BD )的值为1A)!(a<0||a>0) B)a!=0 C)a=0 D)a= =011若有定义:int a=3, b=5, c=8; 则表达式!(a-b)||(c-b)的值为()。

C语言补充题(1-3)

C语言补充题(1-3)

C语言补充题(1-3)一、C语言概述练习题选择1.一个C程序的执行是从。

A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。

A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。

A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。

A)一个主程序和若干个子程序组成B) 函数组成C) 若干过程组成D) 若干子程序组成5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。

A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。

A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件7.以下叙述正确的是。

A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x))C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为x=(i=4,j=16,k=32) A) 4 B) 16 C) 32 D) 522.下列四组选项中,均不是C语言关键字的选项是。

补充习题(C语言概述)

补充习题(C语言概述)

第一章C语言概述之基本规则一、选择题1、C语言程序的基本单位是()(A)函数(B)过程(C)子程序(D)子例程2、下列各选项中,合法的C语言关键字是()(A)integer (B)sin (C)string (D)void3、下列选项中,是C语言提供的合法关键字是()(A)swicth (B)cher (C)default (D)Case4、C语言的程序一行写不下时,应该()(A)用回车符换行(B)在任意一个空格处换行(C)用分号换行(D)用逗号换行5、下列叙述不正确的是()(A)在C程序中,%是只能用于整数运算的运算符(B)在C程序中,无论是整数还是实数,都能正确无误地表示(C)若a是实型变量,C程序中a=20是正确的,因此实型变量允许被整型数赋值。

(D)在C程序中,语句之间必须用分号“;”分隔6、在C程序中,可以作为用户标识符的一组标识符是()(A)void define WORD (B)as_b3 _224 Else(C)Switch –wer case (D)4b DO SIG7、在C语言中,下列合法的字符常量是()(A)’\039’(B)’\x76’(C)’ab’(D)’\o’注:参见P14,3.字符常量。

8、以下说法正确的是()(A)C语言程序是从第一个定义的函数开始执行(B)在C语言程序中,要调用的函数必须在main()函数中定义(C)C语言程序是从main()函数开始执行(D)C语言程序中的main()函数必须放在程序的开始部分9、以下叙述中不正确的是()(A)在C程序中所有的变量必须先定义后使用(B)在程序中,aph和APH是两个不同的变量(C)若a和b类型相同,在执行了赋值语句a=b后,b中的值放入a中,b 中的值不变(D)当输入数值时,对于整型变量只能输入整型值,对于实型值只能输入实型值10、以下选项中合法的用户标识符是()(A)int (B)a# (C)5mem (D)_24311、C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符()(A)必须为字母(B)必须为下划线(C)必须为字母或下划线(D)可以是字母、数字、下划线中任意一种二、填空题1、C语言中的标识符可分为_____、_____和预定义标识符3类。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编程题:1编出完整程序实现打印出1 000以内的所有“完数”。

所谓“完数”是指它的所有小于它本身的因子之和等于它本身的数编程题2:上机实习题:看课本5.39以下题目只作复习题目类型与难度参考。

注意,没有上的章节不考。

一选择题(本大题共40个选项,【1】~【40】每个选择项1.5分,共60分)1. 在C语言中,用户能使用的合法标识符是【D】。

【1】A)姓名B)-xyzC)5i D)For2. 执行语句printf( "%d\n" , strlen("abc\x41\n") );的输出结果是【A】。

【2】A)5 B)7C)abcA D)abc\x413. 在C语言中,合法的字符常量是【D】。

【3】A)'字' B)"A"C)"ABC" D)'\x41'4. C语言中简单数据类型包括【A】。

【4】A)整型、实型、字符型B)整型、实型、逻辑型C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型5. 在C语言中,不合法的实型常量是【D】。

【5】A)-0.123 B)-.123C)-1.23e-1 D)-123e-3.06. 以下关于C语言变量的叙述,错误的是【C】。

【6】A)变量名必须由字母或下划线开头B)变量按所定义的类型存放数据C)不同基本类型的变量之间不能混合运算D)变量的类型确定了变量的取值范围7. 以下整数值中,不正确的八进制或十六进制数是【D】。

【7】A)0x9a B)012C)-0x3A D)0908. 下列i、j、k均为整型变量,选项中不正确的C语言赋值语句是【A】。

【8】A)i+1 = k; B)i = j = k = 1;C)i = j += ++k; D)j = i+1 == i++;9. 以下程序的运行结果是【D】。

main(){ int a=1, b=2, c;c = a < b ? 3 : a >= b ? a : b ;printf("%d\n", c);}【9】A)0 B)1C)2 D)310. 设E为表达式,以下与do …while(E);不等价的语句是【C】。

【10】A)do …while(!E==0); B)do …while(E>0||E<0);C)do …while(E==0); D)do …while(E!=0);11.以下程序的运行结果是【C】。

main(){ int a=-1,b=4,k;k=((a++<=0)&&(!b--<=0));printf("%d%d%d",k,a,b);}【11】A)003 B)012 C)103 D)11212. 以下程序的运行结果是【B】。

main(){ int x=023; 注意:八进制转化为十进制,2*8^(2-1)+3*8^(1-1)=19printf("%d",x)}【12】A)35 B)19 C)23 D)02313. sizeof(double)是【C】。

【13】A)一种函数调用B)一个双精度表达式C)一个整型表达式 D)一个不合法的表达式14. 以下程序运行时,若从键盘输入5,则输出结果是【D】。

main(){ int a;scanf("%d",&a);if(a++>5) printf("%d\n",a);else printf("%d\n",a--);}【14】A)7 B)4 C)5 D)615. 以下程序运行后,a的值是【D】。

main(){ int a,b;for(a=1,b=2;a<=100;a++){if(b>=20) break;if(b%3==1){ b+=3; continue; }b+=5;}}【15】A)10 B)9 C)8 D)716. 以下程序段的运行结果是【D】。

int x=3;do{printf("%3d, ", x-=2 );}while(!(--x));【16】A)1 B)3 0 C)死循环D)1 -217. 下列程序段中,非死循环的是【】。

【17】A)int i=100;B)int k=0; C)int s=10; D)for(;;) while(1) do{ while(++s%2+s%2){ i=i%100+1; ++k; s++;if(i>=100) break; }while(k>=0);} printf("d\n",k);17. 设已定义char s[]="\"Name\\Address\023\n";,则字符串所占的字节数是【18】。

【18】A)19 B)15 C)18 D)1418. 以下程序段的运行结果是【19】。

main(){ int a[]={2,4,6,8,10},y=1,x;for(x=0;x<3;x++) y+=a[x+1];printf("%d\n",y);}【19】A)17 B)18 C)19 D)2019. 已定义char c[]="Fujian"; int i;,则下列函数调用中错误的是【20】。

【20】A)printf("%s",c); B)for(i=0;i<8;i++) printf("%c",c[i]);C)puts(c); D)for(i=0;i<8;i++) puts(c[i]);20. 已定义char x[8]; int i;,为了给该数组赋值,下列语句正确的是【21】。

【21】A)x[8]="Turbo C"; B)x="Turbo C";C)x[]="Turbo C"; D)for(i=0;i<7;i++) x[i]=getchar();21. 以下程序运行结果是【22】。

main(){ char a[][5]={ "ABCD","1234","abcd","5678","EFGH"};int i;for(i=0;i<3;i++) printf("%s",a[i]);}【22】A)A1a B)ABCD1234abcdC)ABC D)ABCD1234abcd5678EFGH22. 设int a[][4]={0,0};,则下列描述错误的是:【23】。

【23】A)数组a的每个元素都可得到初值0B)二维数组a的第一维大小为1C)数组a的行数为1D)只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值023. 设有下列语句,则【24】是对a数组元素的不正确引用,其中0≤i<10。

int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;【24】A)a[p-a] B) *(&a[i]) C)p[i] D)*(*(a+i))24. 若有以下程序:main{ char ch[]="I am student! ",*p;p=ch;printf("%x\n",p);printf("%x\n",p+9);}其中有两个printf(),如果第一个printf()运行结果是ffd6,则第二个printf()运行结果是【25】。

【25】A)ffdf B)ffe8 C)ffd6 D)ffcf25. 以下程序的运行结果是【26】。

main(){ int i;char aa[][3]={'a','b','c','d','e','f'};char (*p)[3]=aa;for(i=0;i<2;i++)if(i==0) aa[i][i+1]=**(p++);printf("%c\n",**p);}【26】A)a B)b C)d D)c26. 设有下列语句:char str1[]="string",str2[8],*str3,*str4="string";则【27】是对库函数strcpy的不正确调用。

此函数用来复制字符串。

【27】A)strcpy(str3, "HELLO3"); B)strcpy(str2, "HELLO2");C)strcpy(str1, "HELLO1"); D)strcpy(str4, "HELLO4");27. 以下程序是将一个整数存放到一个数组中,存放时按逆序存放,例如483存放成384请选择填空完善程序。

void convert(char *a,int n){ int i;if((i=n/10)!=0) convert(【28】,i);*a=n%10+'0';}char str[10]= " ";main(){ int number;scanf("%d",&number);convert(str,number);puts(str);}【28】A)a++ B)a+1 C)a-- D)a-128. 以下程序的运行结果是【29】。

fun3(int x){ static int a=3;a+=x;return a;}main(){ int k=2,m=1,n;n=fun3(k);n=fun3(m);printf("%d\n",n);}【29】A)3 B)4 C)6 D)929. 以下程序的运行结果是【30】。

void ast (int x,int y,int *cp,int *dp){*cp=x+y; *dp=x-y;}main(){ int a=4,b=3,c,d;ast(a,b,&c,&d);printf("%d,%d\n",c,d);}【30】A)7,1 B)1,7 C)7,-1 D)c、d未赋值,编译出错30. 以下程序的运行结果是【31】。

main(){ int x=1,y=2,z;z=x>y?++x:++y;printf("%d,%d,%d\n",x,y,z);}【31】A)1,2,3 B)1,3,3 C)2,3,3 D)2,2,3 31. 若有以下程序段,则z的二进制值是【32】。

相关文档
最新文档