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语言期中考试题目及答案
一、选择题:【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语言程序设计期中试卷(含答案)
桂林电子科技大学信息科技学院试卷2008-2009 学年第 2 学期 课号 课程名称:C 语言程序设计(闭卷) 适用班级(或年级、专业) 通信、电子(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷说明:(1) 第一卷全部为选择题,每题可供选择的答案中,只有一个正确答案。
(2) 答本卷的题目时,要在标准答题纸上编写对应的栏目中,用铅笔在正确答案图黑,在试题上直接勾划者不得分。
(3) 本卷共70分,其中第1~26题每题2分,第27~32题每题3分。
第一部分:基础知识(20题,共40分)1 以下叙述中正确的是A )C 语言的源程序不必通过编译就可以直接运行B )C 语言中的每条可执行语句最终都将被转换成二进制的机器指令 C )C 源程序经编译形成的二进制代码可以直接运行D )C 语言中的函数不可以单独进行编译 2 以下选项中合法的用户标识符是A) long B) _2Test C) 3Dmax D) A.dat3 已知大写字母A 的ASCII 码值是65,小写字母a 的ASCII 码是97,则用八进制表示的字符常量'\101'是A) 字符A B) 字符a C) 字符e D) 非法的常量 4 以下非法的赋值语句是A) n=(i=2,++i); B) j++; C) ++(i+1); D) x=j>0; 5 设a 和b 均为double 型变量,且a=5.5、b=2.5,则表达式(int)a+b/b 的值是 A) 6.500000 B) 6 C) 5.500000 D) 6.0000006 已知i 、j 、k 为int 型变量,若从键盘输入:1,2,3<回车>,使i 的值为1、j 的值为2、k 的值为3,以下选项中正确的输入语句是A) scanf("%2d%2d%2d ",&i,&j,&k); B) scanf("%d %d %d ",&i,&j,&k); C) scanf("%d,%d,%d ",&i,&j,&k); D) scanf("i=%d,j=%d,k=%d ",&i,&j,&k);7设有定义:float a=2,b=4,h=3;,以下C 语言表达式与代数式 计算结果不相符的是A) (a+b) *h/2 B) (1/2)*(a+b)*h C) (a+b)*h*1/2 D) h/2*(a+b)h b a )(218与数学式子123-x nx对应的C 语言表达式是A) 3*x^n(2*x-1) B) 3*x**n(2*x-1)C) 3*pow(x,n)*(1/(2*x-1)) D) 3*pow(n,x)/(2*x-1)9 设有定义:long x=-123456L ;,则以下能够正确输出变量x 值的语句是A) printf("x=%d\n ",x); B) printf("x=%1d\n ",x); C) printf("x=%8dL\n ",x); D) printf("x=%LD\n ",x); 10 若有以下程序:main(){ int k=2,i=2,m;m=(k+=i*=k); printf("%d,%d\n ",m,i); }执行后的输出结果是A) 8,6 B) 8,3 C) 6,4 D) 7,4 11 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是A) 6 B) 0 C) 2 D) 1 12 以下选项中,与k=n++完全等价的表达式是A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1 13 下列关于单目运算符++、--的叙述中正确的是A) 它们的运算对象可以是任何变量和常量B) 它们的运算对象可以是char 型变量和int 型变量,但不能是float 型变量 C) 它们的运算对象可以是int 型变量,但不能是double 型变量和float 型变量 D) 它们的运算对象可以是char 型变量、int 型变量和float 型变量 14 若有以下程序段(n 所赋的是八进制数)int m=32767,n=032767; printf("%d,%o\n ",m,n); 执行后输出结果是A) 32767,32767 B) 32767,032767 C) 32767,77777 D) 32767,077777 15 C 语言中用于结构化程序设计的三种基本结构是A) 顺序结构、选择结构、循环结构 B) if 、switch 、break C) for 、while 、do-while D) if 、for 、continue16 有一函数,0x 0x 0x 101y <=>-=⎪⎩⎪⎨⎧,以下程序段中不能根据x值正确计算出y值的是A) if(x>0) y=1; B) y=0;else if(x==0) y=0; if(x>0) y=1;else y=-1; else if(x<0) y=-1;C) y=0; D) if(x>=0)if(x>=0) if(x>0) y=1; if(x>0) y=1; else y=0; else y=-1; else y=-1;int m=0,n=0; char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入:10A10<回车>,则输出结果是:A) 10,A,10 B) 10,a,10 C) 10,a,0 D) 10,A,018 有以下程序main(){ int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf("%d,%d\n",k,m);}程序运行后的输出结果是A) 0,0 B) 0,1 C) 1,0 D) 1,119 有定义语句:int x,y;,若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是A) 11 12<回车> B) 11, 12<回车> C) 11,12<回车> D) 11,<回车>12<回车>20 设有如下程序段:int x=2002,y=2003;printf("%d\n",(x,y));则以下叙述中正确的是A) 输出语句中格式说明符的个数少于输出项的个数,不能正确输出B) 运行时产生出错信息C) 输出值为2002D) 输出值为2003二第二部分:简单程序(12题,21-26题每题2分,27-32题每题3分,共30分)21 有以下程序main(){ int i;for(i=0;i<3;i++)switch(i){ case 1:printf("%d",i);case 2:printf("%d",i);default:printf("%d",i);}}执行后输出结果是A) 011122 B) 012 C) 012020 D) 120{ int i=1,j=1,k=2;if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k);}执行后输出结果是A) 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,323 有以下程序main(){ char a,b,c,*d;a='\'; b='\xbc';c='\0xab'; d="\017";printf("%c%c%c%c\n",a,b,c,*d);}编译时出现错误,以下叙述中正确的是A) 程序中只有a='\';语句不正确 B) b='\xbc';语句不正确C) d="\017";语句不正确 D) a='\';和c='\0xab';语句都不正确24 以下程序段中与语句k=a>b?(b>c?1:0):0; 功能等价的是A) if((a>b)&&(b>c)) k=1; B) if((a>b)||(b>c)) k=1;else k=0; else k=0;C) if(a<=b) k=0; D) if(a>b) k=1;else if(b<=c) k=1; else if(b>c) k=1;else k=0;25 有以下程序main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}执行后输出结果是A) 2 B) 3 C) 4 D) 编译时有错,无结果26 有以下程序main(){ int i=10,j=1;printf("%d,%d\n",i--,++j); }执行后输出结果是A) 9,2 B) 10,2 C) 9,1 D) 10,1{ int i=0,s=0;do{ if(i%2) { i++; continue; }i++;s+=i;} while(i<7);printf("%d\n",s);}执行后输出结果是A) 16 B) 12 C) 28 D) 2128 有以下程序main(){ int x=0,y=5,z=3;while(z-->0&&++x<5) y=y-1;printf("%d,%d,%d\n",x,y,z);}程序执行后的输出结果是A) 3,2,0 B) 3,2,-1 C) 4,3,-1 D) 5,-2,-529 有以下程序main(){ int i,s=0;for(i=1;i<10;i+=2) s+=i+1;printf("%d\n",s);}程序执行后的输出结果是A) 自然数1~9的累加和 B) 自然数1~10的累加和C) 自然数1~9中的奇数之和 D) 自然数1~10中的偶数之和30 有以下程序main(){ int i,n=0;for(i=2;i<5;i++){ do{ if(i%3) continue;n++;}while(!i);n++;}printf("n=%d\n",n);}程序执行后的输出结果是A) n=5 B) n=2 C) n=3 D) n=431 要求以下程序的功能是计算:10131211++++= s main (){ int n; float s; s=1.0;for(n=10;n>1;n--) s=s+1/n; printf("%6.4f\n ",s); }程序运行后输出结果错误,导致错误结果的程序行是A) s=1.0; B) for(n=10;n>1;n--) C) s=s+1/n; D) printf("%6.4f/n ",s); 32 有以下程序段int n=0,p;do { scanf("%d ",&p); n++; } while(p!=12345 && n<3); 此处do —while 循环的结束条件是A) p 的值不等于12345并且n 的值小于3 B) p 的值等于12345并且n 的值大于等于3 C) p 的值不等于12345或者n 的值小于3 D) p 的值等于12345或者n 的值大于等于3第二卷说明:(1) 第二卷含5大题,均属填空题,总共有10个空栏,在阅读和理解原题程序的基础上,在空栏处填入适当的字符、语句,以构成一个正确的C 语言程序。
大一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语言期中测试试题
《程序设计基础》期中考试试卷班级姓名学号一、填空题(每题1分,共5分)1.上机运行C程序大致分四个步骤,分别是编辑、编译、和运行。
2.结构化程序设计方法的基本思想是自顶向下,逐步细化,和结构化编码。
3.C语言的控制结构有:顺序结构、和循环结构。
4.算法特点包括确定性、可行性、输入、输出和5. 77的2字节补码是,-77的2字节补码表示为(用十六进制表示)二、选择题(每题1分,共15分)1.判断下面标识符中哪个是C语言中合法的用户定义标识符()A. 2a1bB. a%bdC. _123D. char2.设有以下定义int a=0; double b=1.25; char c=‟A‟; #define M 2则下面语句中错误的是( )A. a--;B. b--;C. c--;D. M--;3.有两条语句:static char x[]=”abcde”;static char y[]={…a‟,‟b‟,‟c‟,‟d‟,‟e‟};则下列说法中正确的是( )A. 数组x和数组y长度相同B.数组x长度大于数组y长度C. 数组x长度小于数组y长度D. 以上三种说法均错误;4.设整型变量a=13,则经运算a+= a/=a%=5后,a的值为()A. 17.333B. 17C. 0D. 25. 已知:int n,i=1,j=2;执行语句n=i<j?i++:++j;后,i和j的值是( ).A. 1,2B. 1,3C. 2,2D. 2,36.有函数定义如下:当自变量x<0时y=-1;当x=0时y=0;当x>0时y=1;以下程序片段能实现该函数功能的是( ):A. if(x>=0)B. y=-1;C. if(x>=0)D. y=0;if(x>0) y=1; if(x!=0) if(x>0) y=1; if(x>=0) else y=-1; if(x>0) y=1 ; else y=0; if(x>0) y=1;else y= 0; else y=0; else y= -1; else y=-1;7.当a=2,b=1,c=3,d=4,m和n值为1时,(m=a>b)||(n=c>d)的值是( )A. TRUEB. FALSEC. 1D.08.在C语言程序中,以下说法正确的是( )A. main函数内部可嵌套定义子函数B. main函数必须出现在所有函数之前C. main函数必须出现在所有函数之后D. main函数是程序执行的入口9.关于局部变量和全局变量说法正确的是():A. 在main函数中定义的变量都为全局变量B. 当全局变量与局部变量同名时,全局变量起作用C. 当全局变量与局部变量同名时,局部变量起作用D. 以上说法都不正确10.下列关于switch和break语句的讨论中,只有()是正确的。
c语言期中考试试题及答案
《C语言程序设计》期中考试试卷课程编号:03402513试卷类型: A卷考试形式:笔试考试日期:注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。
4.草稿纸用试卷的背面。
一、单项选择题(1空1分,共20分)1、C语言程序的基本结构是(【1】) 。
【1】 A) 函数 B) 语句 C) 字符 D) 程序行2、一个C程序的执行是(【2】) 。
【2】A) 从本程序的主函数开始,到本程序的主函数结束B)从本程序的第一个函数开始,到本程序的最后一个函数结束C) 从本程序的主函数开始,到本程序的最后一个函数结束D)从本程序的第一个函数开始,到本程序的主函数结束3、下列四个叙述中,错误的是(【3】) 。
【3】 A) 一个C源程序必须有且只能有一个主函数B) 一个C源程序可以含一个或多个子函数C) 在C源程序中注释说明必须位于语句之后D) C源程序的基本结构是函数4、下面不属于C语言保留字的是(【4】) 。
【4】 A) short B) ELSE C) extern D) for5、下列四个叙述中,正确的是(【5】) 。
【5】 A) 库函数也是C语言本身的组成部分B) C语言中的输入输出操作是由相应语句完成的C) 库函数是C编译系统提供的功能函数D) 标题文件(头文件)可以在程序的函数内部调用6、下列四组数据类型中,C语言允许的一组是(【6】)。
【6】 A) 整型、实型、逻辑型 B) 整型、实型、字符型C) 整型、双精度型、布尔型 D) 整型、实型、复型7、在C语言中不同数据类型的的长度是(【7】)。
【7】 A) 固定的 B) 由用户自己定义的C) 任意的 D) 与机器字长有关8、下列四组(八进制或十六进制)常数中,正确的一组是(【8】)。
【8】 A) 016 0xbf 18 B) 0abc 017 0xaC) 010 -0x11 0x16 D) 0A12 7FF -1239、下列四组转义字符中,合法的一组是(【9】)。
c程序设计期中试题及答案
c程序设计期中试题及答案一、选择题1. C语言中,下列哪个关键字可以声明常量?A. constB. staticC. externD. volatile答案:A. const2. 下列关于指针的说法中,错误的是?A. 指针保存的是变量的地址B. 指针变量必须在使用之前初始化C. 指针可以指向一个函数D. 指针占用的内存空间和指针指向的数据类型有关答案:B. 指针变量必须在使用之前初始化3. 下列循环结构中,哪个语句是用于结束当前循环,进入下一轮循环的?A. breakB. continueD. goto答案:B. continue4. 下列C语言中的标准库函数中,不属于输入输出函数的是?A. printf()B. scanf()C. gets()D. malloc()答案:D. malloc()5. C语言中,以下哪个运算符的优先级最高?A. =B. &&C. *D. ?:答案:D. ?:二、填空题1. 编写一个函数,判断一个数是否为质数。
函数原型为:int isPrime(int num);```cint isPrime(int num) {int i;if (num <= 1) {return 0;}for (i = 2; i < num; i++) {if (num % i == 0) {return 0;}}return 1;}```2. 填写以下代码的输出结果:```c#include <stdio.h>int main() {char str[] = "Hello";printf("%d\n", sizeof(str));printf("%d\n", strlen(str));return 0;}```答案:85三、编程题1. 编写一个C程序,实现将一个字符串中的小写字母转换为大写字母的功能。
C语言期中测试(含答案)
C语言期中测试(开卷测试,答案写在白纸上)一.选择题(1)C语言源程序名的后缀是A).exe B).C C).obj D).cpp(2)以下选项中,合法的一组C语言数值常量是A)028 B)12. C).177 D)0x8A5e-3 0Xa23 4c1.5 10,000-0xf 4.5e0 0abc 3.e5(3)以下正确的字符串常量是A)"\\" B)’abc’C)OlympicGames D)"" (4) 表达式3.6-5/2+1.2+5%2的值是A)4.3 B)4.8 C)3.3 D)3.8(5)以下关于long、int和short类型数据占用内存大小的叙述中正确的是A)均占4个字节B)根据数据的大小来决定所占内存的字节数C)由用户自己定义D)由C语言编译系统决定(6)以下叙述中错误的是A)对于double类型数组,不可以直接用数组名对数组进行整体输入或输出B)数组名代表的是数组所占存储区的首地址,其值不可改变C)当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息D)可以通过赋初值的方式确定数组元素的个数(7)以下叙述中错误的是A)C语言源程序经编译后生成后缀为.obj的目标程序B)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件C)用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中D)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令(8)以下数组定义中错误的是A)int x[][3]={0};B)int x[2][3]={1,2,3,4,5,6};C)int x[][3]={{1,2,3},{4,5,6}};D)int x[2][]={1,2,3,4,5,6};(9)若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是A)函数的实参和其对应的形参共占同一存储单元B)形参只是形式上的存在,不占用具体存储单元C)同名的实参和形参占同一存储单元D)函数的形参和实参分别占用不同的存储单元(10)有以下程序段int j;float y;char name[50];scanf("%2d%f%s",&j,&y,name);当执行上述程序段,从键盘上输入55566 7777abc后,y的值为A)55566.0 B)566.0 C)7777.0 D)566777.0(11)有以下程序#include<stdio.h>main(){int y=9;for( ; y>0;y--)if(y%3= =0)printf("%d",--y);}程序的运行结果是A)741 B)963 C)852 D)875421 (12) 有以下程序#include<stdio.h>int a=4;int f(int n){int t=0;static int a=5;if(n%2){a=6;t+=a++;}{ a=7;t+=a++;}return t+a++;}void main(){int s=a,i=0;for(;i<2;i++)s+=f(i);printf ("%d\n",s);}程序运行后的输出结果是A)24 B)28 C)32 D)36(13) 要求通过while循环不断读入字符,当读入字母N时结束循环。
c语言期中考试试题及答案
中国民航大学 2009 - 2010 学年第二学期 《C 语言程序设计》期中考试试卷 课程编号: 03402513 试卷类型: A 卷 考试形式:笔试 考试日期: 注意事项: 1.请将试卷最后一页的答题纸撕下,将答案填写在其中; 2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交; 3.不准携带任何书籍、资料、纸张等。
4.草稿纸用试卷的背面。
一、单项选择题( 1 空 1 分,共 20 分) 1、C 语言程序的基本结构是 (【1】) 。
【1】 A) 函数 B) 语句 C) 字符 D) 程序行 2、一个 C 程序的执行是(【2】) 。
【2】 A) 从本程序的主函数开始,到本程序的主函数结束 B) 从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是 (【3】) 。
【3】 A) 一个 C 源程序必须有且只能有一个主函数 B) 一个 C 源程序可以含一个或多个子函数 C) 在 C 源程序中注释说明必须位于语句之后 D) C 源程序的基本结构是函数 4、下面不属于 C 语言保留字的是(【4】) 。
【4】 A) short B) ELSE C) extern D) for5、下列四个叙述中,正确的是 (【5】) 。
【5】 A) 库函数也是 C 语言本身的组成部分B) C 语言中的输入输出操作是由相应语句完成的C) 库函数是 C 编译系统提供的功能函数D) 标题文件(头文件)可以在程序的函数内部调用 题号 一 二 三 四 五 六 总分 得分 班级: 姓名: 准考证号: 任课教师 考场教室――――――――――――――――――――――――――装订线――― ――― ―― ――――― ―――― ――― ― ― ― ― ― ― ― ― ― ―-6、下列四组数据类型中, C语言允许的一组是(【6】)。
c语言考试试题及答案
c语言考试试题及答案C语言考试试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言的关键字?A. voidB. StringC. intD. array答案:A2. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C3. 在C语言中,以下哪个是正确的字符串定义?A. char str[10] = "Hello";B. string str = "Hello";C. char str[] = "Hello";D. string str[10] = "Hello";答案:A4. 下列哪个选项是C语言中数组的正确声明方式?A. int array[10];B. int array(10);C. int array = 10;D. int array = {10};答案:A5. 在C语言中,哪个函数用于计算两个数的最大值?A. max()B. min()C. abs()D. pow()答案:A6. 以下哪个是C语言中的逻辑运算符?A. &&B. ||C. %D. /答案:A7. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C8. C语言中,以下哪个语句用于结束一个循环?A. continue;B. break;C. return;D. exit;答案:B9. 在C语言中,哪个函数用于打印输出?A. printf()B. print()C. display()D. show()答案:A10. 以下哪个选项是C语言中正确的条件语句?A. if (x = 10)B. if (x == 10)C. if (x : 10)D. if (x / 10)答案:B二、填空题(每空2分,共20分)1. C语言中,用于定义变量的关键字是________。
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语言程序设计期中测试(参考)C 语言程序设计期中测试题姓名_______ 学号________一、选择题:(单选, 1分/题, 共20分)1. 设有 int x=11; 则表达式 (x++ * 1/3) 的值是A) 3 B) 4 C) 11 D) 122. 下列变量定义中合法的是A) double _a=1-.le-1; B) int b=1+5e2.5; C) long do=3e5; D) float2_and=1-e-3;3. 设 int x=1, y=1; 表达式( !x||y-- )的值是A) 0 B) 1 C) 2 D) –14. 若变量已正确定义并赋值,下面符合C语言语法的表达式是A) a:=b++ B) b=2++ C) int 18.5%3 D) a+=c+b5. C语言中运算对象必须是整型的运算符是A) <= B) / C) = D) %=6. 设有说明语句:char a=’\72’; 则变量aA) 说明不合法 B) 包含2个字符 C) 包含3个字符 D) 包含1个字符7. 以下所列的C语言常量中,错误的是A) 0xFF B )1.2e0.5 C ) 2L D ) '\t'8. 下列选项中,可作为C语言变量名是A) y-3 B ) 4_x C ) include D ) x1..9. 若int a=3; 则执行完表达式a+=a-=a*a后,a的值是A)-3 B )9 C )-12 D )610. 在C语言中,合法的长整型常数是A) 12L B) x496271 C) 324562& D) 216D11. 以下选项中合法的字符常量是A)"B" B) '\182' C) 68 D) ‘\’’12. 以下合法的赋值语句是A) x=y=100 B) d--; C) x+y; D) 3+=x;13. 设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是printf("%d,%d\n",x--,--y);A) 10,3 B) 9,3 C) 9,2 D)10,214. 以下选项中,非法的字符常量是A) '\t' B) '\17' C)"n" D) '\xaa'15. 以下选项中合法的实型常数是A) 5E2.0 B) E-3 C) .2E0 D) 1.3E16. 已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是A) 字符A B) 字符a C) 字符e D) 非法的常量17. 以下选项中,与k=n++完全等价的表达式是_______。
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语言期中考试题目及答案
一、选择题:【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
高级语言程序设计试题答案在最后一、单项选择题(本大题共20小题,每小题2分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.C语言程序编译时,程序中的注释部分是()A.参加编译,并会出现在目标程序中B.参加编译,但不会出现在目标程序中C.不参加编译,但会出现在目标程序中D.不参加编译,也不会出现在目标程序中2.设int a=3;则表达式a<1&&--a>1的运算结果和a的值分别是()A.0和2B.0和3C.1和2D.1和33.与语句if(a>b)if(c>d)x=1;else x=2;等价的是()A.if(a>b){if(c>d)x=1;else x=2;}B.if(a>b){if(c>d)x=1;}else x=2;C.if((a>b)&&(c>d))x=1;else x=2;D.if(a<=b)x=2;else if(c>d) x=1;4.设char x='a';则printf("x=%c,y=%c\n",x,97);的输出是()A.x=a,y=97B.x=97,y=aC.x=97,y=97D.x=a,y=a5.执行下列程序int a[3][3]={{1},{2},{3}};int b[3][3]={1,2,3};main(){printf("%d\n”,a[1][0]+b[0][0]);}后输出的结果是()A.0B.1C.2D.36.结构化程序设计所规定的三种基本控制结构是( )A) 输入、处理、输出B) 树形、网形、环形C) 顺序、选择、循环D) 主程序、子程序、函数7.完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( )A.连接、编译B.编译、连接C.连接、运行D.运行8.下列各语句中,能够且仅输出整型变量a、b中最大值的是( )A. if(a>b) printf(″%d\n″,a);printf(″%d\n″,b);B. printf(″%d\n″,b);if(a>b) printf(″%d\n″,a);C. if(a>b) printf(″%d\n″,a);else printf(″%d\n″,b);D. if(a<b) printf(″%d\n″,a);printf(″%d\n″,b);9.执行语句“for(s=0,i=1;i<=10;i=i+3) s+=i;”后,变量s、i的当前值是( )A. 22,13B. 12,10C. 22,10D. 12,1310.下列各语句定义了数组,其中一个不正确的是( )A. static int a[5],b[2][3];B. char no[30],rec[30,6];C. int x[]={2,4,6,8,10};D. int x[10]={1,2,3,4,5};二、填空题(本大题共10小题,每小题2分,共20分)11.初始化值是0.618的双精度变量a的定义形式为____________。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C语言程序设计》期中考试试卷课程编号:03402513试卷类型:A卷考试形式:笔试考试日期:注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。
4.草稿纸用试卷的背面。
一、单项选择题(1空1分,共20分)1、C语言程序的基本结构是(【1】) 。
【1】 A) 函数 B) 语句 C) 字符 D) 程序行2、一个C程序的执行是(【2】) 。
【2】A) 从本程序的主函数开始,到本程序的主函数结束B)从本程序的第一个函数开始,到本程序的最后一个函数结束C) 从本程序的主函数开始,到本程序的最后一个函数结束D)从本程序的第一个函数开始,到本程序的主函数结束3、下列四个叙述中,错误的是(【3】) 。
【3】 A) 一个C源程序必须有且只能有一个主函数B) 一个C源程序可以含一个或多个子函数C) 在C源程序中注释说明必须位于语句之后D) C源程序的基本结构是函数4、下面不属于C语言保留字的是(【4】) 。
【4】 A) short B) ELSE C) extern D) for5、下列四个叙述中,正确的是(【5】) 。
【5】 A) 库函数也是C语言本身的组成部分B) C语言中的输入输出操作是由相应语句完成的C) 库函数是C编译系统提供的功能函数D) 标题文件(头文件)可以在程序的函数内部调用6、下列四组数据类型中,C语言允许的一组是(【6】)。
【6】 A) 整型、实型、逻辑型 B) 整型、实型、字符型C) 整型、双精度型、布尔型 D) 整型、实型、复型7、在C语言中不同数据类型的的长度是(【7】)。
【7】 A) 固定的 B) 由用户自己定义的C) 任意的 D) 与机器字长有关8、下列四组(八进制或十六进制)常数中,正确的一组是(【8】)。
【8】 A) 016 0xbf 18 B) 0abc 017 0xaC) 010 -0x11 0x16 D) 0A12 7FF -1239、下列四组转义字符中,合法的一组是(【9】)。
【9】 A)‘\t’‘\\’‘\n’ B)‘\’‘\017’‘\x’C)‘\018’‘\f’‘\xab’ D)‘\\0’‘\101’‘xif’10、在C语言中,一个整型数据占两个字节,则int型数据的取值范围是(【10】)。
【10】 A) 32767 ~ -32768 B) 0 ~ 65535C) 127 ~ -128 D) 0 ~ 25511、经char w; int x; float y; double z;说明后,表达式 w*x+z-y的类型是(【11】)。
【11】 A) float B) char C) int D) double12、以下能正确定义变量a, b和c并为它们赋值的语句是(【12】)。
【12】 A) int a=5; b=5; c=5; B) int a,b,c=5;C) a=5,b=5,c=5; D) int a=5, b=5, c=5;13、在C语言中,用于表示逻辑“真”的值是(【13】)。
【13】 A) T B) 1 C) -1 D) 非零值14、经int a=7; float x=2.5, y=4.7;说明后,表达式 x+a%3*(int)(x+y)%2/4 的值是(【14】)。
【14】 A) 2.500000 B) 2.750000 C) 3.500000 D) 0.00000015、若在一个表达式中含有int、 long int、 unsigned int和char类型的常量和变量,则该表达式的类型是(【15】)。
【15】 A)int型 B)char型 C)unsigned int型 D)long int型16、在C语言中,如果一个int型数据占2个字节,则unsigned int型数据取值范围是(【16】)。
【16】 A) 0~ 255 B) 0~ 32767 C) 0~ 65535 D) 0~ 214748364717、在C语言中,下列四个长整型数中合法的是(【17】)。
【17】 A) 0L B) 4962 C) 0.054838743 D) 2.1869e1018、若有说明语句:char c=‘\101’; 则变量c(【18】)。
【18】 A) 包含一个字符 B) 包含两个字符C) 包含三个字符 D) 说明不合法19、设变量a为整型,f为实型,i为双精度型,则表达式10+‘a’+i*f 的数据类型是(【19】)。
【19】A)int型 B)float型 C)double型 D)不确定20、下列四个字符常量中,正确的是(【20】)。
【20】 A)“c” B)“\” C)‘W’ D)‘\w’二、单项选择题(每空2分,共40分)21、执行printf("%x,%o,%d\n",-1,-1,-1);后的输出结果是(【21】)。
【21】 A) -1, -1, -1 B) ffff, -01, -1C) ffff, 32767, -1 D) ffff, 177777, -122、已有定义int a=-2; 以下叙述中正确的是(【22】)。
【22】 A) 整型变量的输出格式符只有%d一种B) %x是格式符的一种,它可以用于任何一种类型的数据C) %x是格式符的一种,其变量的值按十六进制输出,但格式符 %32x是错误的D) %32x格式符中,数字32规定了输出字符的宽度23、若有定义: int x=3, y=2; float a=2.5, b=3.5; 则表达式(x+y)%2+(int)a/(int)b的值是(【23】)。
【23】 A) 0 B) 2 C) 1.5 D) 124、设int a=5, b=6, c=7, d=8, m=2, n=2; 则执行(m=a<b)&&(n=c<d)后,n的值为(【24】)。
【24】 A) 2 B) 1 C) 3 D) 425、设ch是char型变量, 其值为‘A’, 则表达式ch=(ch>=‘A’&& ch<=‘z’)? (ch+32): ch 的值是(【25】)。
【25】 A) Z B) a C) z D) A26、表达式5!=3的值是(【26】)。
【26】 A) T B) 非零值 C) 0 D) 127、若希望当A的值为奇数时, 表达式的值为"真", A的值为偶数时, 表达式的值为"假",则下面不能满足要求的表达式是(【27】)。
【27】 A) A%2==1 B) !(A%2==0) C) !(A%2) D) A%228、为表示关系y在闭区间【x,z】内,应使用的C语言表达式是(【28】)。
【28】 A) (x<=y)&&(y<=z) B)(x<=y)AND(y<=z)C) x<=y<=z D)(x<=y)&(y<=z)29、设有以下语句:int x=10; x+=3+x%(-3); 则x的值是(【29】)。
【29】 A) 14 B) 15 C) 11 D) 1230、sizeof(double)是(【30】)。
【30】 A) 一种函数调用 B) 一个双精度表达式C) 一个整型表达式 D) 一个不合法的表达式31、设x为int型变量,则执行语句x=10; x+=x-=x-x; 后, x的值为(【31】)。
【31】 A) 10 B) 20 C) 40 D) 3032、设x、y、z、s均为int型变量,且初值均为1,则执行语句s=++x||++y&&++z;后,s的值为(【32】)。
【32】 A) 不定值 B) 2 C) 1 D) 033、设x和y均为int型变量, 则执行以下语句:x+=y; y=x-y; x-=y; 的功能是(【33】)。
【33】 A) 把x和y从大到小排列 B) 把x和y从小到大排列C) 无确定结果 D) 交换x和y的值34、putchar()函数可以向终端输出一个(【34】)。
【34】 A) 整型变量表达式值 B) 实型变量值C) 字符串 D) 字符或字符型变量值35、若有代数式(3ae)/(bc), 则下列C语言表达式中,错误的是(【35】)。
【35】 A) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*336、若给定条件表达式(S)? (a++) : (a--),则与表达式S等价的是(【36】)。
【36】 A) 和(S==0)等价 B) 和(S==1)等价C) 和(S!=0)等价 D) 和(S!=1)等价37、以下四条语句中,有语法错误的是(【37】)。
【37】 A) if(a>b) m=a; B) if(a<b) m=b;C) if((a=b)>=0) m=a; D) if((a=b;)>=0) m=a;38、下列各程序段中,不能实现1+2+3+...+10求和的是(【38】)。
【38】 A) int i=0,s=0;while(i<=10) {s+=i,i++;}B) int i,s;for(s=0,i=1;i<11;i++) s+=i;C) int i=0,s=0;do {s+=i;,++i;}while(i<=10);D) int i,s;for(s=0,i=1;i<=10;)s+=i;39、下列一维数组说明中,不正确的是(【39】)。
【39】 A) float a[5+6]; B) int n=10, a[n];C) #define LONG 10 D) float a[10], b[9] ;int a[LONG+5] ;40、下列一维数组初始化语句中,正确的是(【40】)。
【40】 A) int a[5]={,2,,3,5}; B) int a[5]={ };C) int a[5]={5*2}; D) int a[]=(0,2,0,3,7);三、填空题(每空2分,共30分)41、定义 int a=12, b=12;后,语句 printf("%d,%d\n",--a,++b);的输出结果是(【41】)。
42、已知 int x=43, y=0; char ch=‘A’; 则表达式(x>=y&&ch<‘B’&&!y)的值是(【42】)。
43、若有以下定义和语句:int a=010, b=0x10, c=10;printf("%d,%d,%d\n", a, b, c); 则输出结果是(【43】)。