C语言期中考试
大一c语言期中考试试题及答案

大一c语言期中考试试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个结构体类型的关键字是()。
A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的运算符?()A. %B. &&C. ::D. ==答案:C3. 在C语言中,用于定义一个函数的关键字是()。
A. intB. voidC. returnD. function答案:B4. 下列哪个选项不是C语言中合法的变量名?()A. _nameB. name_2C. 2nameD. name答案:C5. 在C语言中,用于表示逻辑“与”的运算符是()。
A. &&B. ||C. !D. ^答案:A6. 下列哪个选项是C语言中的控制语句?()A. ifB. switchC. caseD. all of the above答案:D7. C语言中,用于定义一个字符常量的是()。
A. 'a'B. "a"C. aD. a答案:A8. 在C语言中,用于表示“不等于”的运算符是()。
A. ==B. !=C. =D. ==答案:B9. 下列哪个选项是C语言中的文件操作函数?()A. printfB. scanfC. fopenD. fclose答案:C10. 在C语言中,用于定义一个整型数组的语法是()。
A. int arr[10];B. int arr=10;C. int arr[];D. int [10] arr;答案:A二、填空题(每题2分,共20分)1. C语言中,用____关键字定义一个全局变量。
答案:extern2. 一个C语言程序的执行从____函数开始。
答案:main3. C语言中,用于声明一个指针变量的语法是____。
答案:int *p;4. C语言中,____运算符用于取地址。
答案:&5. C语言中,____运算符用于解引用指针。
C语言期中试卷(含答案)

《 C语言》课程期中考试试卷一. 在A B C D四个选项中,选择一个正确的答案填入括号内( )1、用char定义的变量在IBM PC机中能表示的数的范围是:A) 0 ~+255 B) 0 ~+65535C) -128 ~+127 D) 只能存字符,不能存数( )2、设有int k=2; 则执行printf(“%d”,k++);的输出为:A) 0 B) 1 C) 2 D) 3()3、在while(!x)中,!x与______等价。
A) x==0 B) x!=0 C) x==1 D) x!=1()4、设有声明int value=‟5‟;,则执行下列选项的赋值语句后,value的值不等于5的是_____。
A.) value=value - ‟0‟; B) value=value - 0x30;C) value=value - 49; D) value=value - ‟\060‟;()5、如int k=7;float x=2.5,y=4.7; 则表达式 x+k%3*(int)(x+y)%2/4 运算后的值是:A) 0 B) 2 C) 2.5 D) 2.75( ) 6、若有int a,b;则语句:printf("%d",(a=2)&&(b=-2);的输出结果是:A)无输出 B)结果不确定 C)-1 D)1( ) 7、设有int a=2; 则执行printf("%d",5>a>1);的输出为:A)0 B)1 C)2 D)3( ) 8、执行语句c=(a=2,a+1,b=a++);后, a,b,c的值依次为:A)2,3,4 B)3,3,3 C)4,5,4 D)3,2,2( )9、以下程序的输出结果是A)2 0 B)3 1 C)3 2 1 D)2 1 0main( ){ int n=4;while(n--)printf("%d ",--n);}( )10、给出以下定义:char x[ ]="abcdef";char y[ ]={'a','b','c','d','e','f'};则正确的叙述为A) 数组x和数组y等价 B) 数组x和数组y的长度相同C) 数组x的长度大于数组y的长度 D) 数组x的长度小于数组y的长度( )11、若对一个函数调用在前, 定义在后,C语言将视其返回值为__________类型。
c语言期中考试题

C语言试题(考试时间:60分钟总分:100分)一、选择题(每小题2分,共30分)1.下列常量正确的是A.087 B. 6e-1.1 C. ‘\’ D. “\\”2.下列字符常量中不同于其他三个的是A.‘\101’B.‘A’C.‘\a’D.‘\x41’3. 系统默认的C语言源程序扩展名为.C,需经过之后,生成.obj文件A. 编辑B.连接C.编译D.翻译4.下列不是关键字的是。
A、ifB、breakC、mainD、static5.以下不正确的C语言标识符是。
A. ABCB. a2bcC. _abcD. f3 6.设int a=3,b=4,c=5;,下列表达式的值不为1的是。
A)a+b>c&&b==c B)a||b+c&&b-cC)!(a>b)&&!c||1 D)!(a+b)+c-1&&b+c/27.printf("a\bre\'hi\'y\\\bou\n");的输出结果是A)a\bre\'hi\'y\\\bou B)a\bre\'hi\'y\bouC)re'hi'you D)abre'hi'y\bou8. int a=1; char b=2; float c=1.1; 则sizeof(a+b+c)的值。
A. 4B. 8C. 2D. 19.下列运算符中,不属于关系运算符的是。
A. <B. > =C. >D. %=10. 在c语言中执行这条语句 printf("%d\n", 5.01); 屏幕显示为A.5 B.6 C.不确定D. 5.0111.有以下程序:int y=1111;printf(“y=%6d\n”,y);printf(“y=%#6x\n”,y);程序运行的结果是:()a) y= 1111 b) y= 1111 c) y=1111 d) y= 1111y= 0x457 y=0x 457 y= ox457 y=ox45712. { float y=3.667;printf(“*%f*\n”,y);printf(“*%7.2f*\n”,y);printf(“*%8.0f*\n”,y); }程序运行的结果是:()a) *3.667000* b) *3.667000** 3.67* *3.667 ** 4* *4.000000*c) *3.667* d) *3.667000**3.667000* * 3.67**3.667000* *4.000000*13.已有定义:double a,b;,输入方式(此处*代表一个空格) **1.0**2.0<回车> 分别给a,b,则能正确进行输入的语句是()a) scanf(“%f%f”,&a,&b); b) scanf(“%5.1lf%5.1lf”,&a,&b);c) scanf(“%lf%lf”,&a,&b);d) scanf(“%4e%4e”,&a,&b);14.有以下程序:{ int k=2,i=2,m; m=(k+=i*=k++);printf(“y=%d,%d\n”,m,i); }程序运行的结果是:()a) 8,6 b) 8,3 c) 6,4 d) 7,415. c har a[10]; scanf(“%s”,a);printf(“%s”,a);输入wang t回车结果为A. wang tB. wangC. 不确定D.无法运行二、阅读程序题:(每题8分,共40分)1. 写出以下程序运行的结果输入“12345,xyz”,下列程序输出的结果是。
C语言期中考试题目及答案

一、选择题:【1】在C语言中,用户能使用的正确标识符是。
A) 5f B) _for C) struct D) _f.5答案: B 分析:标识符只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线;大小写敏感;不能使用关键字;最长32 个字符。
【2】以下那个是正确的C语言常量。
A) 0678 B) '\0101' C) 1.2E3.5 D) 123L答案:D【3】以下对C语言源程序有关常识正确的描述是。
A) main 函数必须位于文件的开头B) 每个语句必须单独一行C) 标识符中大小写字母没有区别D) 宏定义#define 部分不一定要放在程序的最开头位置答案:D【4】以下for 循环的执行次数是。
for(x=0,y=0;(y=123)&&(x<4);x++)A)是无限循环B)循环次数不定C)执行4次D)执行3次答案:C分析:若要判断(y=123)&&(x<4)假,因为y=123永远为真,所以只需要判断x<4为假即可。
【5】对for( 表达式1;; 表达式3) 可理解为。
A)for( 表达式1;0; 表达式3)B)for( 表达式1;1; 表达式3)C)for( 表达式1; 表达式1; 表达式3)D)for( 表达式1; 表达式3; 表达式3)答案: B【6】设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是。
A)while循环执行10次 B )循环是无限循环C)循环体语句一次也不执行D)循环体语句执行一次答案:C分析:因为k=0 为假,所以程序不执行其后的语句。
【7】C语言中while和do-while 循环的主要区别是。
A) do-while 的循环体至少无条件执行一次B) while 的循环控制条件比do-while 的循环控制条件严格C) do-while 允许从外部转到循环体内D) do-while 的循环体不能是复合语句答案:A【8】设有:int a=1,b=2,c=3,d=4,m=2,n=2; 执行(m=a>b)&&(n=c>d) 后n 的值为。
C语言期中考试题目及答案

【1】在C语言中,用户能使用的正确标识符是 。
A) 5f B) _for C) struct D) _f.5
答案:B
分析:标识符只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线;大小写敏感;不能使用关键字;最长32个字符。
【2】以下 那个是正确的C语言常量。
A) do-while的循环体至少无条件执行一次
B) while的循环控制条件比do-while的循环控制条件严格
C) do-while允许从外部转到循环体内
D) do-w a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为 。
答案:D
【4】以下for循环的执行次数是 。
for(x=0,y=0;(y=123)&&(x<4);x++)
A)是无限循环 B)循环次数不定 C)执行4次 D)执行3次
答案:C
分析:若要判断(y=123)&&(x<4)假,因为y=123永远为真,所以只需要判断x<4为假即可。
A) 0678 B) '\0101' C) 1.2E3.5 D) 123L
答案:D
【3】以下对C语言源程序有关常识正确的描述是 。
A) main函数必须位于文件的开头
B) 每个语句必须单独一行
C) 标识符中大小写字母没有区别
D) 宏定义#define部分不一定要放在程序的最开头位置
则下面描述中正确的是 。
大一c语言期中考试题及答案

大一c语言期中考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法标识符?A. 2variableB. intC. _intD. int1答案:C2. C语言中,用于定义一个字符常量的是?A. 'a'B. "a"C. aD. 1答案:A3. 下列哪个选项不是C语言中的关键字?A. intB. autoC. floatD. var答案:D4. 以下哪个选项是正确的C语言变量声明?A. int a, b;B. int a; int b;C. int a, b;D. All of the above答案:D5. C语言中,下列哪个函数用于将浮点数转换为字符串?A. sprintfB. printfC. scanfD. strcat答案:A6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. All of the above答案:D7. 在C语言中,哪个运算符用于求余?A. %B. /C. *D. -答案:A8. C语言中,哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C9. 下列哪个选项是C语言中的合法字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello\nWorld"D. "Hello\0World"答案:A10. 在C语言中,下列哪个选项是正确的数组声明?A. int array[5] = {0, 1, 2, 3, 4};B. int array[] = {0, 1, 2, 3, 4};C. int array[5] = {0, 1, 2};D. All of the above答案:D二、填空题(每题3分,共30分)1. 在C语言中,声明一个整型变量的关键字是________。
c语言大一期中考试试题及答案

c语言大一期中考试试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是()。
A. varB. defineC. intD. let答案:C2. 下列选项中,不属于C语言基本数据类型的是()。
A. intB. floatC. stringD. char答案:C3. 在C语言中,以下哪个符号用于表示逻辑与操作()。
A. &&B. ||C. !D. =答案:A4. 下列哪个选项是正确的C语言函数声明()。
A. int function_name(int a, int b);B. int function_name(int a; int b);C. int function_name(int a, int b)D. int function_name(int a, int b)答案:A5. C语言中,用于输入输出的库函数是()。
A. math.hB. stdio.hC. string.hD. time.h答案:B6. 下列哪个选项是C语言中正确的注释方式()。
A. // 这是注释B. /* 这是注释 */C. //这是注释D. /*这是注释答案:B7. C语言中,用于定义数组的关键字是()。
A. listB. arrayC. tableD. int答案:B8. 下列哪个选项是C语言中正确的字符串定义方式()。
A. char str[] = "Hello";B. char str[] = 'Hello';C. char str = "Hello";D. char str[] = {"Hello"};答案:A9. C语言中,用于定义指针的关键字是()。
A. pointerB. refC. ptrD. *答案:D10. C语言中,用于定义结构体的关键字是()。
A. structB. classC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用____关键字可以定义一个全局变量。
c语言期中考试复习题

c语言期中考试复习题一、选择题1. 在C语言中,以下哪个是合法的字符常量?A. 'A'B. "A"C. 97D. '97'2. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. doubleD. string3. 在C语言中,哪个关键字用于定义一个函数?A. classB. functionC. voidD. int4. 以下哪个是C语言中的控制语句?A. ifB. whileC. switchD. All of the above5. 在C语言中,数组的下标是从哪个数字开始的?A. 0B. 1C. -1D. 任意数字二、填空题6. 在C语言中,一个变量的声明通常包括数据类型和________。
7. 函数的返回值类型是通过关键字________来声明的。
8. 在C语言中,________关键字用于定义一个循环,可以重复执行一段代码。
9. C语言中的________语句用于从键盘接收输入。
10. 数组的声明格式为________。
三、简答题11. 解释C语言中的指针是什么,并给出一个简单的示例。
12. 描述C语言中结构体(struct)的概念,并说明其用途。
13. 解释C语言中函数的参数传递方式有哪些,并举例说明。
四、编程题14. 编写一个C语言程序,实现计算并输出1到100的整数之和。
15. 编写一个函数,该函数接受一个字符串作为参数,并返回该字符串的长度。
五、论述题16. 论述C语言中的递归函数的概念,并给出一个使用递归函数的示例。
17. 讨论C语言中全局变量和局部变量的区别以及它们各自的使用场景。
六、综合应用题18. 设计一个C语言程序,该程序能够接收用户输入的两个整数,并输出它们的乘积。
19. 编写一个C语言程序,实现一个简单的计算器,能够进行加、减、乘、除运算。
七、附加题20. 描述C语言中动态内存分配的概念,并使用malloc和free函数编写一个示例程序。
C语言期中试卷答卷

考试试卷一、选择题(每题2分,20题,共计40分)1.( A )是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程2.C语言程序从C—开始执行。
A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D)包含文件中的第一个函数3.表达式:10!=9的值是—①.A) true B)非零值C) 0 D) 14.下列关于C语言的说法错误的是(B ) oA) C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写。
C) C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行5.下列C语言用户标识符中合法的是(B )。
A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满足(2);选项C, E均为为关键字,不满足(3);选项D中的不满足(1);6.在C语言中,以_D_作为字符串结束标志A),\n,B),J C)。
D),\0,7.下列数据中属于《字符串常量”的是(A) oA."a”B.{ABC} C/abc\0J D.4a J8.C语言中的简单数据类型包括(D )oA、整型、实型、逻辑型B、整型、实型、逻辑型、字符型C、整型、字符型、逻辑型D、整型、实型、字符型9.若x为int型变量,则执行以下语句后,x的值为(B) ox=6; x+二x_=x*x;A. 36B. -60C. 60D. -2410.在C语言程序中,表达式5%2的结果是_£_。
C) 1 D)3 则条件表达式”avb? a:b”的值是C)0 D)1表达式3若表达式1不成立,则选择计算表达式3,并将表达式3的值作为整个 大表达式的值此题中的avb 相当于表达式1, a 相当于表达式2, b 相当于表达式3. a 为3, b 为4。
avb 表达式1成立,因此计算表达式2,并将表达式2的值 即a 中的值,并作为整个表达式的值,因此整个表达式的值为312. C 语言中,关系表达式和逻辑表达式的值是(B ) oA)0 B)0 或 1C)1 D 尸 T ,或,F ,13. 下面(D )表达式的值为4.A) 11/3 B) 11.0/3C) (float)ll/3 D) (int)(11.0/3+0.5) (1) 相同数据类型的元素进行数学运算(+、-、\ /)得到结果还保 持原数据类型。
c语言期中测试

线封密《c语言期中测试》试卷一、单选题(每题1分,共80分)1、以下程序的正确运行结果是______。
#include <stdio.h>void num(){ extern int x,y ; int a=15,b=10;x=a-b;y=a+b;}int x,y;main(){ int a=7,b=5;x=a+b;y=a-b;num();printf("%d,%d\n",x,y);}A、1,12B、不确定C、5,25D、12,2参考答案:C2、以下正确的函数定义形式是______。
A、double fun(int x,int y);B、double fun(int x;int y)C、double fun(int x,int y)D、double fun(int x,y);参考答案:C3、在C语言程序中______。
A、函数的定义和函数的调用均不可以嵌套B、函数的定义可以嵌套,但函数的调用不可以嵌套C、函数的定义和函数的调用均可以嵌套D、函数的定义不可以嵌套,但函数的调用可以嵌套参考答案:D4、以下对C语言函数的有关描述中,正确的是______。
A、C程序中,有调用关系的所有函数必须放在同一个源程序文件中B、C函数既可以嵌套定义,又可以递归调用C、函数必须有返回值,否则不能定义成函数D、调用函数时,只能把实参的值传递给形参,形参的值不能传递给实参参考答案:D5、决定c语言中函数返回值类型的是______。
A、定义函数时在函数首部中所指定的类型(若缺省,则隐含为int型)B、调用该函数的主调函数类型C、调用函数时临时指定的类型D、return语句中的表达式类型参考答案:A6、设有函数调用语句"f(x1,x1+x2,(x1,x2));",正确的说法是______。
A、调用时会出现语法错误。
B、调用的实际参数是3个C、调用的实际参数是4个D、调用的实际参数是2个参考答案:B7、下面程序的输出结果是______。
大一c语言期中考试题和答案豆丁网

大一c语言期中考试题和答案豆丁网C语言期中考试试卷一、选择题(每题2分,共40分)1. 以下哪个选项是C语言的关键字?A. intB. integerC. INTD. Integer答案:A2. C语言中,哪个函数用于计算并返回两个整数相加的结果?A. add()B. sum()C. plus()D. addint()答案:B3. 在C语言中,以下哪个是正确的字符串定义?A. char str[5] = "Hello";B. char str[5] = {'H', 'e', 'l', 'l', 'o'};C. char str[5] = "Hello"; // 错误,字符串长度超过数组大小D. char str[] = "Hello";答案:D4. C语言中,以下哪个是正确的二维数组定义?A. int array[2][3] = {{1, 2, 3}, {4, 5, 6}};B. int array[2][3] = {1, 2, 3, 4, 5, 6};C. int array[2][3] = {{1, 2, 3}, {4, 5, 6, 7}}; // 错误,数组元素不匹配D. int array[2][3] = {1, 2, 3, 4, 5, 6, 7}; // 错误,数组元素不匹配答案:A5. C语言中,以下哪个是正确的函数定义?A. int func(int a, int b) { return a + b; }B. int func(int a; int b) { return a + b; } // 错误,分号使用不当C. int func(int a, int b) { return a - b; }D. int func(int a, b) { return a + b; } // 错误,b未指定类型答案:A6. C语言中,以下哪个是正确的条件语句?A. if (a > b) then { /* code */ }B. if (a > b) { /* code */ }C. if a > b { /* code */ } // 错误,缺少括号D. if (a > b) then { /* code */ } // 错误,then关键字不正确答案:B7. C语言中,以下哪个是正确的循环语句?A. for (int i = 0; i < 10; i++) { /* code */ }B. for i = 0 to 10 { /* code */ } // 错误,C语言中没有to关键字C. for (int i = 0; i < 10; i++) { /* code */ }D. for i = 0; i < 10; i++ { /* code */ } // 错误,缺少括号答案:C8. C语言中,以下哪个是正确的函数调用?A. func(5, 3);B. func(5; 3); // 错误,分号使用不当C. func(5, 3);D. func(5, 3);答案:A9. C语言中,以下哪个是正确的宏定义?A. #define PI 3.14159B. #define PI = 3.14159; // 错误,宏定义中不应包含等号和分号C. #define PI 3.14159D. #define PI 3.14159答案:A10. C语言中,以下哪个是正确的结构体定义?A. struct Point { int x, y; };B. struct Point { int x; int y; };C. struct Point { int x, y; };D. struct Point { int x; int y; };答案:B11. C语言中,以下哪个是正确的指针定义?A. int *p;B. int *p;C. int *p;D. int *p;答案:A12. C语言中,以下哪个是正确的文件操作函数?A. fopen()B. open()C. create()D. file()答案:A13. C语言中,以下哪个是正确的递归函数定义?A. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }B. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }C. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }D. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }答案:A14. C语言中,以下哪个是正确的枚举定义?A. enum Color { Red, Green, Blue };B. enum Color { Red, Green, Blue };C. enum Color { Red, Green, Blue };D. enum Color { Red, Green, Blue };答案:A15. C语言中,以下哪个是正确的联合体定义?A. union Data { int i; float f; char ch; };B. union Data { int i; float f; char ch; };C. union Data { int i; float f; char ch; };D. union Data { int i; float f; char ch; };答案:A16. C语言中,以下哪个是正确的位运算符?A. &B. |C. ^D. ~答案:D17. C语言中,以下哪个是正确的位段定义?A. struct BitFlags { unsigned int : 1; unsigned int flag2 : 1; };B. struct BitFlags { unsigned int flag1 : 1; unsigned int flag2 : 1; };C. struct BitFlags { unsigned int flag1 : 1; unsigned int flag2 : 1; };D. struct BitFlags { unsigned int flag1 : 1; unsigned int flag2 : 1; };答案:B18. C语言中,以下哪个是正确的动态内存分配函数?A. malloc()B. alloc()C. new()D. mem()答案:A19. C语言中,以下哪个是正确的动态内存释放函数?A. free()B. dealloc()C. delete()D. mem()答案:A20. C语言中,以下哪个是正确的预处理指令?A. #includeB. includeC. #importD. import答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义整型变量的关键字是 ________。
c期中考试题库及答案

c期中考试题库及答案一、选择题(每题2分,共20分)1. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable-nameD. variable_name答案:B2. 在C语言中,哪个关键字用于声明一个函数?A. intB. functionC. voidD. return答案:C3. C语言中,哪个运算符用于比较两个值是否相等?A. ==B. !=C. =D. <=答案:A4. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. %D. ++答案:A5. 在C语言中,哪个函数用于计算一个数的绝对值?A. abs()B. fabs()C. sqrt()D. pow()答案:A6. C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A7. 在C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strncat()答案:A8. C语言中,哪个函数用于将整数转换为字符串?A. atoi()B. itoa()C. strtol()D. sprintf()答案:B9. 在C语言中,哪个关键字用于声明一个指针?A. int*B. pointerC. *D. ptr答案:C10. C语言中,哪个函数用于计算一个数的平方根?A. sqrt()B. pow()C. abs()D. log()答案:A二、填空题(每题2分,共20分)1. C语言中,用于声明一个整型变量的关键字是________。
答案:int2. C语言中,用于声明一个浮点型变量的关键字是________。
答案:float 或 double3. C语言中,用于声明一个字符型变量的关键字是________。
答案:char4. C语言中,用于声明一个布尔型变量的关键字是________。
c语言期中考试题及答案2020

c语言期中考试题及答案2020一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明一个函数?A. intB. returnC. voidD. function答案:C2. 在C语言中,以下哪个运算符用于取模运算?A. %B. //C. /D. *答案:A3. 下列哪个选项是C语言中的合法整型常量?A. 0x12B. 08C. 0.5D. 1.2e3答案:A4. C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!"D. "Hello, World!"答案:A5. 在C语言中,以下哪个选项表示逻辑与运算?A. &&B. ||C. !D. &答案:A6. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A7. 在C语言中,以下哪个选项是正确的二维数组声明?A. int a[3][2];B. int a[2,3];C. int a[][];D. int a[2][3,2];答案:A8. C语言中,以下哪个函数用于计算并返回字符串的长度?A. strlen()B. length()C. size()D. len()答案:A9. 在C语言中,以下哪个选项是正确的指针声明?A. int *p;B. int *p[];C. int p*;D. int *p=0;答案:A10. C语言中,以下哪个关键字用于声明一个全局变量?A. staticB. externC. registerD. auto答案:B二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。
答案:int2. 如果一个函数的返回类型是void,则该函数没有________。
C语言期中测试题(含答案)

一、 填空1.C 语言源程序文件的后缀是 .c 。
2.构造化程序由 顺序构造 、 选择构造 、 循环构造 三种根本构造组成。
3.在C 语言中,用关键字 int 定义根本整型变量,一个根本整型变量系统分配 2 字节,用关键字 float 定义单精度实型变量,一个单精度实型变量系统分配 4 字节,用关键字 double 定义双精度实型变量,一个双精度实型变量系统分配 8 字节。
二、 选择1. 以下选项中正确的实型常量是( A )A .12.B .-20C . 1,000D . 4 5 62.以下选项中不正确的实型常量是〔无正确答案〕A . 2.607E-1B .0.8103e2C . -77.77D . 456e-23. 以下选项中不合法的用户标示符是( C )A. _123 B .A12_1 C . A $ D .Dim4.C 语言中运算对象必须是整型的运算符是( A )A .%B ./C .!D .*5. 假设变量已正确定义并赋值,符合C 语言语法的表达式是( B )A .a=a+7 ;B .a=7+b+c,a++C . int(12.3%4)D .a=a+7=c+b6.下面合法的赋值语句是( C )A .a=b=58B .k=int(a+b)C . a=58,b=58D .--i7.假设变量已正确定义为int ,要给a,b,c 输入数据,正确的输入语句是( D )A .read(a,b,c)B .scanf(“%d%d%d 〞,a,b,c)C .scanf(“%D%D%D 〞,&a,&b,&c) D .scanf(“%d%d%d 〞,&a,&b,&c)8.假设变量a,b,t 已正确定义,要将a 和b 中的数进展交换,以下选项中不正确的语句组是( C )A .a=a+b,b=a-b,a=a-b;B . t=a,a=b,b=t;C .a=t;t=b;b=aD .t=b;b=a;a=t;9.假设有正确定义语句:double x=5.16894;语句printf(“%f\n 〞,(int)(x*1000+0.5)/(double)1000);的输出结果是( D )A .输出格式说明与输出项不匹配,输出无定值B .C .!D .10. 假设有以下程序段:int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%d\\n 〞,a,b,c);执行后的输出结果是( B )A .3,0,-10B .0,0,5C .-10,3,-10D .3,0,311.以下运算符中优先级别最高的是( A )A . !B .%C .-=D .&&12.为表示关系:z y x ≥≥,应使用的C 语言表达式是( A )A .(x>=y)&&(y>=z)B .(x>=y)AND(y>=x)C .(x>=y>=z)D .(x>=y)&(y>=z)13.设a 、b 和c 都是int 型变量,且a=3,b=4,c=5,那么以下的表达式中值为0的表达式是( D )A.a&&b B.a<=b C.a||b+c&&b-c D.!((a<b)&&!c||1) 14.有以下程序:#include<stdio.h>main(){ int a=2,b=-1,c=2;if(a<b)if(b<0)c=0;elsec+=1;printf(“%d\n〞,c);}程序的运行结果是( C )A.0 B.1 C.2 D.315.有以下程序:#include<stdio.h>main(){ int w=4,x=3,y=2,z=1;printf(“%d\n〞,(w<x?w:z<y?z:x));}程序的运行结果( A )A.1 B.2 C.3 D.416.有以下程序:main(){int a,b,s;scanf(“%d %d〞,&a,&b);s=a;if(a<b)s=b;s*=s;printf(“%d\n〞,s);}假设执行以上程序时从键盘上输入3和4,那么输出结果是( B )A.14 B.16 C.18 D.2017.有以下程序段:y=-1;if(x!=0)if(x>0) y=1;else y=0;其能正确表示的数学函数关系是( C )A .⎪⎩⎪⎨⎧>=<-=)0(1)0(0)0(1x x x yB .⎪⎩⎪⎨⎧>=-<=)0(0)0(1)0(1x x x yC .⎪⎩⎪⎨⎧>=-<=)0(1)0(1)0(0x x x yD .⎪⎩⎪⎨⎧>=<-=)0(0)0(1)0(1x x x y18.假设有定义语句int a, b ;double x ;那么以下选项中正确的选项是( C )A .switch 〔x%2〕B .switch 〔〔int 〕x/2.0){case 0: a++; break; {case 0: a++; break;case 1: b++; break; case 1: b++; break;default : a++; b++; default : a++; b++;} }C .switch 〔〔int 〕x%2〕D .switch 〔〔int 〕〔x 〕%2〕{case 0: a++; break; {case 0.0: a++; break;case 1: b++; break; case 1.0: b++; break;default : a++; b++; default : a++; b++;} }19.有以下程序段:int k,j,s;for(k=2;k<6;k++,k++){s=1;for(j=k;j<6;j++)s+=j;}printf(“%d\n 〞,s);程序段的输出结果是( D )A .9B .1C .11D .1020.有以下程序段:int i,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m++;printf(“%d\n 〞,m);程序段的输出结果是( C )A .12B .15C .20D .2521.有以下程序段:int n=10;while(n>7){ n--;printf(“%d\n 〞,n);}程序段的输出结果是( B )A.10 B.9 C.10 D.99 8 9 88 7 8 77 622.有以下程序段:int x=3;doprintf(“%3d〞,x-=2);while(!(--x));程序段的输出结果是( C )A.1 B.3 0 C.1 -2 D.死循环23.有以下程序:main(){int i,sum;for(i=1;i<=6;i++)sum+=sum;printf(“%d\n〞,sum;);}程序的输出结果是( C )A..15 B.14 C.不确定D.024.有以下程序:#include<stdio.h>main(){int i;for(i=1;i<=5;i++){if(i%2)printf(“*〞);elsecontinue;printf(“#〞);}pintf(“$\n〞);}程序的输出结果是( A )A.*#*#*#$ B.#*#*#*$ C.*#*#$ D.#*#*$ 25.有以下程序:#include<stdio.h>main(){ int x,i;for(i=1;i<=100;i++){x=i;if(++x%2==0)if(++x%3==0)if(++x%7==0)printf(“%d〞,x);}printf(“\n〞);}程序的输出结果是( A )A.28 70 B.42 84 C.26 68 D.39 81【本文档内容可以自由复制内容或自由编辑修改内容期待你的好评和关注,我们将会做得更好】。
C语言期中试卷

《C语言程序设计》期中考试卷一、选择题1.下面程序段的运行结果是。
for(x=3;x<6;x++)printf((x%2)?(“**%d”):(“##%d\n”),x); A.**3B.##3C.##3D.**3##4 ##4**4**4##5**5**5##52.下面程序的运行结果是。
#include<stdio.h>int main(){int i;for(i=1;i<=5;i++)switch(i%5){case0:printf("*");break;case1:printf("#");break;default:printf("\n");case2:printf("&");}return0;}A.#&&&*&B.#&& &C.#*&*&D.#&下中的的值(其N中和分别表示一个三位数),请选择填空。
.. . ....以下正确的描述是。
句的作用是结束整个循环的执行只能在循环体内句体内使句C.在循坏体内使用break语句或continue语句的作用相同D.从多层循环嵌套中退出,只能使用goto语句5.在下面的程序中,。
#include<stdio.h>int main(){int t,x;for(t=1;t<=100;t++){scanf("%d",&x);if(x<0)continue;printf("%3d",t);}return0;}A.当x<0时整个循环结束B.x>=0时什么也不输出C.printf函数永远也不执行D.最多允许输出100个非负整数6.与下面程序段等价的是。
for(n=100;n<=200;n++){if(n%3==0)continue;printf(“%4d”,n);}A.for(n=100;(n%3)&&n<=200;n++)printf(“%4d”,n); B.for(n=100;(n%3)||n<=200;n++)printf(“%4d”,n); C.for(n=100;n<=200;n++)if(n%3!=0)printf(“%4d”,n); D.for(n=100;n<=200;n++){if(n%3)printf(“%4d”,n);else continue;break;}7.下面程序的运行结果是。
c语言期中上机考试题及答案

c语言期中上机考试题及答案一、选择题(每题2分,共10分)1. 下列哪个选项是C语言中的关键字?A. intB. INTC. IntegerD. integer答案:A2. C语言中,下列哪个符号用于表示逻辑与?A. &&B. ||C. !D. &答案:A3. 在C语言中,以下哪个函数用于将字符串转换成浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 下列哪个选项是正确的C语言数组声明?A. int array[5] = {1, 2, 3};B. int array[] = {1, 2, 3};C. int array[3] = {1, 2, 3, 4, 5};D. int array[5] = {1, 2};答案:D5. 在C语言中,以下哪个函数用于获取当前系统时间?A. timeB. localtimeC. mktimeD. strftime答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个整型变量的关键字是______。
答案:int2. C语言中,用于定义一个字符型变量的关键字是______。
答案:char3. C语言中,用于定义一个浮点型变量的关键字是______。
答案:float4. C语言中,用于定义一个双精度浮点型变量的关键字是______。
答案:double5. C语言中,用于定义一个字符串常量的关键字是______。
答案:char[]三、编程题(每题10分,共20分)1. 编写一个C语言程序,计算并输出1到100之间所有整数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}printf("Sum of numbers from 1 to 100 is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现输入一个整数,判断并输出该整数是奇数还是偶数。
C语言期中试卷(含答案)

C语⾔期中试卷(含答案)《 C语⾔》课程期中考试试卷⼀. 在A B C D四个选项中,选择⼀个正确的答案填⼊括号内( )1、⽤char定义的变量在IBM PC机中能表⽰的数的范围是:A) 0 ~+255 B) 0 ~+65535C) -128 ~+127 D) 只能存字符,不能存数( )2、设有int k=2; 则执⾏printf(“%d”,k++);的输出为:A) 0 B) 1 C) 2 D) 3()3、在while(!x)中,!x与______等价。
A) x==0 B) x!=0 C) x==1 D) x!=1()4、设有声明int value=?5?;,则执⾏下列选项的赋值语句后,value的值不等于5的是_____。
A.) value=value - ?0?; B) value=value - 0x30;C) value=value - 49; D) value=value - ?\060?;()5、如int k=7;float x=2.5,y=4.7; 则表达式 x+k%3*(int)(x+y)%2/4 运算后的值是:A) 0 B) 2 C) 2.5 D) 2.75( ) 6、若有int a,b;则语句:printf("%d",(a=2)&&(b=-2);的输出结果是:A)⽆输出 B)结果不确定 C)-1 D)1( ) 7、设有int a=2; 则执⾏printf("%d",5>a>1);的输出为:A)0 B)1 C)2 D)3( ) 8、执⾏语句c=(a=2,a+1,b=a++);后, a,b,c的值依次为:A)2,3,4 B)3,3,3 C)4,5,4 D)3,2,2( )9、以下程序的输出结果是A)2 0 B)3 1 C)3 2 1 D)2 1 0main( ){ int n=4;while(n--)printf("%d ",--n);}( )10、给出以下定义:char x[ ]="abcdef";char y[ ]={'a','b','c','d','e','f'};则正确的叙述为A) 数组x和数组y等价 B) 数组x和数组y的长度相同C) 数组x的长度⼤于数组y的长度 D) 数组x的长度⼩于数组y的长度( )11、若对⼀个函数调⽤在前, 定义在后,C语⾔将视其返回值为__________类型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0期中考试 1. 若a 为int 型变量,则执行以下程序段后的a 值是( )。
a=5;a*=a/=a++;A. 2 B . 1 C . 40 D . 3 2. 以下程序段的执行结果是( )。
Int x=-3;Do {printf( “%dn ”,x++);} while(!x);A . -3B . -2C .死循环D . -3-2 -13.若a 、b 、c 均为int 型变量,则执行以下程序段后的输出结果是()b=(a=10,a+5,c=10);printf( “a=%d,b=%d,c=%dn ” ,a,b,c); c=(a=10,b=5,a+b);printf( “a=%d,b=%d,c=%dn ” ,a,b,c);A. a=10, b=15, c=10 B . a=10, b=10, c=10 a=10, b=5, c=10 a=10, b=5, c=10 C. a=10, b=10, c=10 D . a=10, b=10, c=10 a=10, b=5, c=15 a=10, b=5, c=5 4 .若a1,a2,a3,a4均为char 类型变量,则执行以下程序段后的输出结果是( 3' ;a4=' 3 45.逻辑运算符两侧运算对象的数据A.只能是0或1 BC.只能是整型或字符型数据6 .设i,j 和k 是int 型变量,且 A . ' i ' &&‘j ' C. i || j + k && j - k 7.若希望当num 的值为奇数时,表达式的值为“真” 为“假” 0则以下不能满足要求的表达式是(A . num % 2 = = 1B . ! (num%2= =0)C . !(num%2)D . num%2 8 .为了避免在嵌套的条件语句if-else 中产生二义性,C 语言规定:else 子句总是与() B .其之前最近而且不带else 的if 配对.第一个if 配对)0D . y= =110 .设x 、y 均为int 类型变量,而且x 值为100,则关于以下for 循环的正确判断是(For(y=100;x!=y;++x,y++)Printf( “**** n ”);4'; a 仁’1' ;a2=' 2' ;a3=' printf( “%1c ,a1);printf( “%2c ,a2);printf( “%3c ,a3);printf( “%4c ,a4);A . 1 B. 1 C 2 202003 0004.输出格式的描述符不正确)0.只能是0或非0正数 .可以是任何类型的数据 则以下值为0的表达式是(Di=3,j=4,k=5, B .i<=jD . ! ( (i<j) && !k || 1),num 的值为偶数时,表达式的值)0A.缩排位置相同的if 配对 C .其之前最近的if 配对 9.语句 while(!y); A . y= =0 B Dy 等价于(.y!=0中的表达式! .y!=1 C.是无限循环 .for 语句中存在语法错误 .int n=1;注意事项:1.考前请将密封线内填写清楚2. 所有答案请直接答在试卷上 3 .考试形式:闭卷4.本试卷共3大题,满分100分,考试时间100分钟选择题。
(将答案写在表格中,每题1.5分,共45分).1。
0A .循环体只执行一次 C.循环体一次都不执行 11 .下列程序中是死循环的是(A. int n=1; B While(! n) do {n--;} while( n); n++;C. int n=1; D . for(n=5; n<1;); Do {n++;} while( n);12 .以下程序段的执行结果是( )0Int a,b;For(a=1;a<5;a+=2) { for(b=1;b<5;b++).234printf( “%2d,a*b);if (b= =5) printf(a ” n);SA. 1 2 3 4 B . 12 3 4 C.2 3 4 6 9 12 D3 6 9 126 9 12 156 9 1210 15 20以下对一维数组a 的正确说明是()。
A. char a (10); B . inta[];C. int k=5,a[k];D. char a[ ]={ 'a' , ' b' , ' b' };若有说明语句:int a[2][4];,则对a 数组元素的正确引用是()。
A. a[0][3] B . a[0][4] C . a[2][2] D . a[2][2+1] 若有说明语句:int a[][3]={1,2,3,4,5,67,8} 贝U a 数组的行数为() A. 3 B . 2 C .无确定值 D . 1 判断字符串str1是否大于字符串str2 ,应当使用()。
.if (strcmp(str1,str2))D. if (strcmp(str1 ,st ⑵>0) books” };,则能将字符串books 赋给数组s1 A. s^l={ “books” }; B. strcpy(s1,s2); C . s1=s2; D . strcpy(s2,s1); 若有以下程序段 for(m=1 ;m<=100;m++){ scanf( "%d ,&y); if (y<0) continue; printf( "%3d ,m): }正确的描述是( )oA.实参和与其对应的形参各占用独立的存贮单元B. 实参和与其对应的形参共用一个存贮单元C. 只有当实参和与其对应的形参同名时才共用存贮单元D. 形参是虚拟的,不占用存贮单元C 语言允许函数值类型的缺省定义,此时该函数值隐含的类型是(A. float 型B. int 型 C . long 型 D . double 型 以下正确的描述是()。
A. 函数的定义可以嵌套,但函数的调用不可以嵌套B. 函数的定义不可以嵌套,但函数的调用可以嵌套13. 14. 15. 16.17.18.19. 20.21. 22. A. if (str1 >st ⑵ B C. if (strcmp(str2,str1)>0) 若有语句:char s1[10],s2[10]={ 正确语句是()o A.当yvO 时整个循环结束BC. printf 函数永远也不执行 以下正确的函数说明是()0A. int fun (int a,b ) BC. double fun () D以下正确的说法是()o.y>=0时什么也不输出D.最多允许输出100个非负整数 float fun(int a ; int b) int fun(char a[][])29.C. 函数的定义和调用均不可以嵌套D. 函数的定义和调用均可以嵌套 23.数组元素a[i]是该数组中第()个元素。
A. 1 B . i C. i+1 D . i-1 24.执行下面程序段后,x 的值是()o Intx;Printf( “%d n”,(x=3*5,x+5); A. 10 B . 15 C. 20 D . 5 判断char 型变量c1是否为大写字母的正确表达式是( A. ' A' <=c1<= Z'C. ©>=' A' )&&(" 表达式!(3>5) ||(6<2) A. 0 B. 1 25.26.27. 28. B v 二’Z') 的值是( C . 3以下程序的输出结果是( Mian(){int x=2,y=-1,z=2; lf(x<y) if(y<0) Else Printf(}A. 3 z=0; z+=1; “%d\n” ,z);B. 2 C . 1 int a=1D ,b=0; 设有说明: Switch (a) {case 1: switch (b) {caseO:printf( case 1:pri ntf( } case 2: printf( } A.C.O.(">=' A' )& (c1<= ' Z') D . ( 'A' <=c1) AND ( 'Z' >=c1) .0 则执行以下语句后的输出结果是( )on” ); break; n” );break; );break; .switch 语句中存在语法错误**F 面程序的运行结果是(Main () {int m=0;while (m<=2) {m++;.1printf(“ %dn ” ,m);} }A. 1 B . 1C. 1 D2 2 2330.下面程序段的运行结果是( )。
Char x[5]={ ‘ a ' , ' b ' , ' 0','Printf( “ %s ,x);A.' a '' b 'B. ab C1. 下面程序段是找出整数的所有因子,请填空。
Scanf( “ %d ,&x);1=1;For( ; i<=x ;){if(x%I==0) printf( “%3d ,I); I++;}2. 下面程序的功能是计算1-3+5-7+…-99+101的值,请填空。
Mai n(){ int i,t=1,s=0;for(i=1;i<=101;i+=2){ t=t*i ; s=s+t; t=-t/i _______________printf(“%d n ” ,s);}3.如果运行以下程序段时输入字符为“ t ” ,则程序段的运行结果是(T )。
Mai n() { char c1;scanf( “%c ,&c1);c1=(c1> =' A && c1<=' Z ' )?(c1+32):c1; c1=(c1>=' a ' && c1<=' z ' )?(c1 -32):c1; printf( “%c ,c1);}4. 设x 和y 均为int 型变量,则以下for 循环中的scanf 语句最多可执行的次数是(3 )。
For(x=0,y=0;y!=123 && x<3;x++) Scanf( “%d ,&y);5. 下面程序的运行结果是(####)。