考卷:c语言 试卷1

合集下载

C语言考试试题及答案

C语言考试试题及答案

《C语言》考卷一单选题(每题2分,共25题,共50分)1.要把高级语言编写的源程序转换为目标程序,需要使用( )[2分][2分]A.编辑程序B.驱动程序C.诊断程序D.编译程序参考答案:D2.以下叙述中正确的是( )[2分][2分]A.C语言程序将从源程序中第一个函数开始执行B.可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C.C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束D.main可作为用户标识符,用以命名任意一个函数作为主函数参考答案:C3.若变量a是int类型,并执行了语句:a=‘A'+1.6;,则正确的叙述是( )[2分][2分] int a int a=66 = 65 + 1.6 =66.6A.a的值是字符BB.a的值是浮点型C.不允许字符型和浮点型相加D.a的值是字符‘A’的ASCII值加上2参考答案:Aint a = ‘A’;char b = 65;4.若变量已正确定义并赋值,以下符合C语言语法的表达式是( )[2分][2分]A.a:=b+1B.a=b=c+2C.18.5%3D.a=a+7=c+b参考答案:B5.下列可用于C语言用户标识符的一组是( )[2分][2分]A.void, define, WORDB.a3_b3, _123,carC.For, -abc, IF CaseD.2a, DO, sizeof参考答案:B6.若在定义语句:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是( )[2分][2分]A.scanf("%d",a,b,c);B.scanf("%d%d%d",a,b,c);C.scanf("%d",p); //scanf(“%d”,&c);D.scanf("%d",&p);参考答案:C7.以下关于long、int和short类型数据占用内存大小的叙述中正确的是( )[2分][2分]A.均占4个字节B.根据数据的大小来决定所占内存的字节数 // long a = 1 int b = 1000000C.由用户自己定义D.由C语言编译系统决定参考答案:D8.若变量已正确定义,有以下程序段i=0;do{printf("%d,",i); //0}while(i++); //while(0) i=1printf("%d\n",i); //1其输出结果是( )[2分][2分]A.0,0B.0,1C.1,1D.程序进入无限循环参考答案:B9.有以下计算公式则不能够正确计算上述公式的程序段是( )(提示:库函数sqrt()用来求一个数的平方根)[2分][2分]A.if(x>=0) y=sqrt(x); else y=sqrt(-x); //if/else配合使用B.y=sqrt(x) if(x<0) y=sqrt(-x);C.if(x>=0)y=sqrt(x); if(x<0)y=sqrt(-x); //if单独使用D.y=sqrt(x>=0?x:-x);参考答案:B10.设有条件表达式:EXP ? i++ : j--;则以下表达式与之完全等价的是( )[2分][2分]A.(EXP==0)? i++ : j--;B.(EXP!=0)? i++ : j--;C.(EXP==1)? i++ : j--;D.(EXP!=1)? i++ : j--;参考答案:B11.有以下程序#include<stdio.h>int main(void){int y=9;for( ; y>0; y--){if(y%3 == 0)printf("%d",--y);}}程序的运行结果是( )[2分][2分]A.741B.963C.852D.875421参考答案:C12.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )[2分][2分]A.函数的实参和其对应的形参共占同一存储单元B.形参只是形式上的存在,不占用具体存储单元 //局部变量C.同名的实参和形参占同一存储单元D.函数的形参和实参分别占用不同的存储单元参考答案:D13.已知字符‘A’的ASCⅡ代码值是65,字符变量c1的值是‘A’,c2的值是‘D’。

c考试试题及答案

c考试试题及答案

c考试试题及答案在准备C语言考试试题及答案时,我们需要确保题目覆盖了C语言的基本概念、语法结构、程序设计技巧以及算法设计。

以下是一套C语言考试试题及其答案,供参考:C语言考试试题一、选择题(每题2分,共20分)1. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. stringD. double答案:C2. C语言中,哪个关键字用于定义一个函数?A. ifB. elseC. functionD. void答案:D3. 在C语言中,以下哪个语句用于结束一个循环?A. continueB. breakC. returnD. exit答案:B4. 下列哪个不是C语言的控制语句?A. if-elseB. switch-caseC. forD. goto答案:D5. 在C语言中,数组的索引是从哪个数字开始的?A. 0B. 1C. -1D. 随机数答案:A二、填空题(每空2分,共20分)6. C语言中,用于输入输出的库函数是________。

答案:stdio.h7. 一个C程序的执行从________函数开始。

答案:main8. 在C语言中,定义一个整型变量x,应该使用关键字________。

答案:int9. 一个C语言程序可以包含多个函数,但________函数只能有一个。

答案:main10. 在C语言中,若要实现两个数的交换,可以使用________运算符。

答案:&三、简答题(每题10分,共20分)11. 请简述C语言中指针的概念及其用途。

答案:指针是C语言中一种特殊的变量,它存储了另一个变量的内存地址。

指针的主要用途包括动态内存分配、数组操作、函数参数传递等。

12. 解释C语言中的结构体(struct)及其应用场景。

答案:结构体是C语言中一种用户自定义的数据类型,允许将多个不同类型的变量组合成一个单一的数据类型。

结构体常用于表示复杂的数据结构,如学生信息、书籍信息等。

四、编程题(每题15分,共40分)13. 编写一个C语言程序,实现两个整数的加法,并输出结果。

C语言试卷_含答案

C语言试卷_含答案

C语言试卷姓名:_________________ 分数:_______________一、选择题((1)~(10)每题3分,共30分)1.要调用数学函数时,在#include命令行中应包含___C___。

A、”stdio.h”B、”string.h”C、”math.h”D、”ctype.h”2. C 语言程序中可以对程序进行注释,注释部分必须用符号___C___括起来。

A.‘{‘ 和’}’ B.‘[‘和’]’ C.“/*”和”*/” D.“*/”和”/*”3.表达式strcmp(“box”, “boss”) 的值是一个___A___。

A、正数B、负数C、 0D、不确定的数4.判断i和j至少有一个值为非0的表达式是___C___。

A、 i!=0 && j!=0B、i*j!=0C、i!=0 || j!=0D、i&&j5.若以下选项中的变量已正确定义,则正确的赋值语句是___C___A. x1=26.8%3B. 1+2=x2C. x3=0x12D. x4=1+2=3;6.switch语句___A___。

A. 都可以用if-else if结构实现B. 都不可以用if-else if结构实现C. 有的可以用if-else if结构实现D. 大部分不可以用if-else if结构实现7.设有以下定义int a = 0;double b = 1.25;char c = ’A’;#define d 2则下面语句中错误的是___D___A. a++;B. b++C. c++;D. d++;8.设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是___A___A. scanf(“%d”,pa);B. scanf(“%d”,a);C. scanf(“%d”,&pa);D. scanf(“%d”,*pa);9.10. 若变量已正确定义并且指针p已经指向某个变量x,则(*p)++相当于___B___。

C语言试卷(含答案)

C语言试卷(含答案)

一、单项选择题(每小题2分,共40分)1、sizeof(float)是()A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式2、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);为了把100和765.12分别赋给i和f,则正确的输入为()。

A. 100 765.12B. i=100,f=765.12C. 100<回车> 765.12D. x=100 y=765.123、#include<stdio.h>void main(){int a=3,b=2,c=1;int x=10,y=20;if(a<b)if(b!=0)if(!x)y=1;else if(x)y=0;y=-1;printf("%d",y);}上面的C程序的输出结果是()。

A. 20B. 1C. 0D. -14、C语言中,while和do…while循环的主要区别是()。

A. do…while的循环体至少无条件执行一次B. while的循环控制条件比do…while的循环控制条件严格C. do…while允许从外部转到循环体内D. do…while的循环体不能是复合语句5、执行下面的C程序段后,输出结果是()。

int a=5;while( a- -);printf( "%d",a) ;A. 54321B. 4321C. 0D. -16、在C语言中,()是在所有函数外部声明的。

A. 全局变量B. 局部变量C. 形参D.实参7、分析下面的C程序:#include<stdio.h>void main(){int num=0;while(num<=2){num++;printf("%d ",num);}}输出结果是()。

C语言试卷01

C语言试卷01

C语言试题(一)1.下列关于C语言用户标识符的叙述中正确的是______。

A. 用户标识符中可以出现下划线和中划线(减号)B. 用户标识符中不可以出现中划线,但可以出现下划线C. 用户标识符中可以出现下划线,但不可以放在用户标识符的开头D. 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头2.以下叙述不正确的是A. 一个C源程序可由一个或多个函数组成B. 一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D. 在C程序中,注释说明只能位于一条语句的后面3.下面能正确进行字符串赋值操作的语句是A.char s[5]={"ABCDE"};B.chars[5]={'A','B','C','D','E'};C.char *s;s="ABCDEF";D.char *s; scanf("%s",s);4.下列叙述中正确的是A. C语言编译时不检查语法B. C语言的子程序有过程和函数两种C. C语言的函数可以嵌套定义D. C语言的函数可以嵌套调用5.以下程序输出的结果是____。

main( ){ float a=5,b=4,d;d=(a>b);printf("%d\n",d);}A. 1B. 0C. 1.0D. 46.设int a=5,b=6,表达式(b--==6)?++a:--b的值是___A. 5B. 6C. 7D. 47.设i,j,k均为int型变量,则执行完下面的for语句后,k的值为___ 。

for(i=0, j=10; j>=i; i++, j--)k=i+j;A. 10B. 20C. 8D. 08.能正确表示逻辑关系:"1≤a≤9"的C语言表达式是A. a>=1 or a<=9B. a>=1且a<=9C. a>=1&&a<=9D. 1≤a≤99.有以下程序main(){int i=0,k=2;if(++i)printf("%d",k);else printf("%d",-k)}执行后输出结果是A. -2B. 2C. 0D. 110.执行下面的程序段后,变量k中的值为int k=3, s[2];s[1]=k; k=s[1]*10;A.不定值 B.33 C.30 D.10 11.若有以下说明和语句,则输出结果是______。

C语言程序设计试卷1(含答案)

C语言程序设计试卷1(含答案)

说明:请将单项选择题(1~50空)的正确答案涂写考试答题卡,将填空(51~75空)等文字题按【】中的序号写入下面文字答题卡,否则不得分。

二、阅读程序题文字答题卡:(每空2分,共24分)三、完善程序填空题文字答题卡:(每空2分,共26分)一、单项选择题(每空1分,共50分)请将正确答案按【】中的序号写入答题卡,否则不得分。

1.C源程序的扩展名为【】。

A).C B).DLL C).EXE D).DOC2.按照标识符的要求,【】符号不能组成标识符。

A)数字符号B)下划线C)连接符D)大小写字母3.设有说明:char c;int a;float x ;double y;则表达式c*a+y-x 值的数据类型是【】。

A)double B)char C)int D)float4.已知小写字母a的ASCII码值是97,大写字母A的ASCII码值是65,下列语句中不能输出大写字母B的是【】。

A)putchar('A'+1);B)putchar('b'-32);C)putchar(98-32);D)putchar(B);5.在C语言中,数值常量0x9f对应十进制值是【】。

A)160 B)87 C)9f D)1596.整型变量a定义后赋初值的结果是【】。

int a=2.8*6;A)12 B)16 C)17 D)187.将小写字母n赋值给字符变量one_char,正确的操作是【】。

A)one_char=’\n’;B)one_char=”n”;C)one_char=110;D)one_char=’N’;8.若有以下说明和语句,则输出结果是【】。

char s[10]="a test!";printf("%d",strlen(s));A) 6 B)8 C)7 D)99.下面的程序结果为:【】。

main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}执行完输出函数后,a的值是【】。

C语言测试卷库(完整版)

C语言测试卷库(完整版)

C语言测试卷库(完整版)C语言试题库一、单项选择第一章C语言概述(1)一个C程序的执行是从A、本程序的MAIN函数开始,到MAIN 函数结束。

B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。

C、本程序的MAIN函数开始,到本程序的最后一个函数结束。

D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。

(2)以下叙述正确的是A、在C程序中,MAIN函数必须位于程序的最前面。

B、C程序的每行中只能写一条语句。

C、C语言本身没有输入输出语句。

D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误。

(3)C语言规定,在一个源程序中,MAIN主函数的位置是在:A、必须在最前面。

B、必须在系统调用的库函数的后面C、可以在任意位置。

D、必须在最后面(4)一个C程序是由:A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成(5)以下叙述不正确的是:A、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个MAIN函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面第二章数据类型、运算符与表达式(1)若x, i, j, k都是int型变量,则计算下面表达式后,x的值为x=(i=4, j=16, k=32)A、4B、16C、32D、52(2)下列四组选项中,均不是C语言键字的选项是A、define , IF, typeB、getc, char, printfC、include, scanf, caseE、i f, struct, type(3)下面四个选项中,均是不合法的用户标识符的选项是A、A,P_0,doB、float,1a0, _AC、b-a, goto, intD、_123, temp, INT(4)若有代数式3ae/bc,则正确的C语言表达式是A、a/b/c*e*3B、3*a*e/bcC、3*a*e/b*cD、a*e/c/b*3(5)已知各变量的类型说明如下:int k, a, b;unsinged long w=5;double x=1.42;则以下不符合C语言语法的表达式是A、x%(-3)B、w+=-2;C、k=(a=2,b=3,a+b)D、a+=a-=(b=4)*(a=3)第三章简单C程序设计(1)putchar函数可以向终端输出一个A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量值(2)若x,y均定义为int型,z定义为double 型,以下合法的scanf函数调用语句是A、scanf(“%d%lx,%le”,&x,&y,&z);B、scanf(“%2d*%d%lf”,&x,&y,&z);C、scanf(“%x%*d%o”,&x,&y,&z);D、scanf(“%x%o%6.2f”,&x,&y,&z);(3)当输入数据的形式为:25,13,10<回车>时,以下程序的输出结果为main(){int x,y,z;scanf(“%d%d%d”,&x,&y,&z);printf(“x+y+z=%d\n”,x+y+z);}A、x+y+z=48B、x+y+z=35C、x+z=35D、不确定值(4)以下能正确的定义整型变量a,b和c,并对它们赋初值为5的语句是A、int a=b=c=5;B、int a, b, c=5;C、a=5, b=5, c=5;D、a=b=c=5;(5)若有以下定义,则正确的赋值语句是int a,b; float x;A、a=1, b=2;B、b++;C、a=b=5;D、b=int(x);第四章选择结构程序设计(1)能正确表示“当x的值在[1,10]和[200,210]的范围为真,否则为假”的表达式是A、(x>=1)&&(x<=10)&&(x.>=200)&&(x<=210)B、(x>=1)││(x<=10) ││(x.>=200) ││(x<=210)C、(x>=1) &&(x<=10) ││(x.>=200) &&(x<=210)D、(x>=1)││(x<=10)&& (x.>=200) ││(x<=210)(2)以下程序的运行结果是#include “stdio.h”main(){int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);}A、6,1B、2,1C、6,0D、2,0(3)请阅读以下程序:main(){int a=5 , b=0 , c=0;if (a+b+c) printf(“* * *\n”);else printf(“$ $ $\n”);}以上程序。

C语言程序设计考试试卷(附答案)

C语言程序设计考试试卷(附答案)

C语言程序设计考试试卷(附答案)C语言程序设计考试试卷(附答案)第一部分:选择题(共40题,每题2分,总分80分)1. 下列哪个关键字用于定义常量?A. constB. intC. staticD. volatile2. 在C语言中,以下哪个运算符用于将一个整数转换为浮点数?A. *B. /C. %D. +3. 下列代码的输出结果是什么?```c#include <stdio.h>void main() {int x = 2, y = 3;printf("%d", x++ * ++y);}```A. 7B. 8C. 9D. 104. C语言中,以下哪个运算符用于从一个整数中提取指定位数的值?A. <<B. >>C. |D. &5. 下列代码的输出结果是什么?```c#include <stdio.h>void main() {int arr[] = {1, 2, 3, 4, 5};int *ptr = arr + 2;printf("%d", *ptr);}```A. 1B. 2C. 3D. 4......40. 下列关于结构体的说法中,错误的是:A. 结构体可以包含不同类型的成员变量B. 结构体可以作为函数参数和返回值C. 结构体可以使用“->”来访问成员变量D. 结构体可以使用“sizeof()”函数获取其大小第二部分:填空题(共10题,每题4分,总分40分)1. 以下是有效的C语言标识符:___hello___2. 下列代码的运行结果是:___88___```c#include <stdio.h>void main() {int x = 8;printf("%d", x++);}```3. 在C语言中,以下是有效的声明:___int i, *p;___4. 下列代码的输出结果是:___10___```c#include <stdio.h>void main() {int arr[5] = {1, 2, 3, 4, 5};int *ptr = arr + 2;printf("%d", *(ptr + 2));}```5. 在C语言中,以下是合法的函数声明:___void fun(int x, float y);___......第三部分:编程题(共3题,每题20分,总分60分)1. 编写一个函数,接受一个整型数组和数组的长度作为参数,返回数组中的最大值。

C语言试卷及答案

C语言试卷及答案

C语言试卷及答案一、选择题(共10题,每题2分,共20分)1. 在C语言中,下列关键字中用于定义常量的是:A. ifB. constC. forD. switch2. 下列哪个运算符的优先级最高?A. ++B. +C. %D. /3. 在C语言中,用于判断两个值是否相等的运算符是:A. ==B. =C. !=D. >4. 下列哪个标识符是合法的?B. myVariableC. @nameD. while5. 下列循环结构中,只有在条件满足时才会执行的是:A. for循环B. do-while循环C. while循环D. switch语句6. 下列哪种数据类型不能存储小数?A. intB. floatC. doubleD. char7. 下列哪个头文件包含了输入输出函数的声明?A. <stdio.h>B. <stdlib.h>C. <math.h>8. 数组在内存中是以连续的存储单元存储的,其首地址对应数组名,以下哪个关键字不可用于定义数组大小?A. constB. staticC. externD. volatile9. C语言中,以下哪个库函数可以用于生成一个随机数?A. rand()B. sqrt()C. getchar()D. strcpy()10. 下列哪个运算符用于获取变量的地址?A. %B. *C. &D. #二、填空题(共5题,每题3分,共15分)1. C语言中,逻辑运算符"与"的符号是_______。

2. 在C语言中,printf函数的返回值是_______。

3. 下列循环结构中,无论条件是否成立,至少会执行一次的是_______。

4. 在C语言中,声明一个整型变量的关键字是_______。

5. C语言中,用于声明一个字符变量的关键字是_______。

三、编程题(共2题,共45分)1. 编写一个C语言程序,将用户输入的两个数进行交换,并输出交换后的结果。

C语言试卷含答案

C语言试卷含答案

C语言试卷含答案一、单选题(共10题,每题2分,共20分)1. 下列哪个关键字不属于C语言的关键字?A. ifB. floatC. breakD. while答案:B2. 在C语言中,下列运算符中优先级最高的是:A. +B. *C. =D. &答案:B3. 以下哪种循环结构在循环体执行前就对循环条件进行判断?A. for循环B. while循环C. do-while循环答案:C4. 以下哪个函数库是用来进行数学运算的?A. stdio.hB. string.hC. math.hD. ctype.h答案:C5. 下列哪个运算符是用来进行指针访问的?A. *B. &C. .D. :答案:C6. 以下哪种数据类型可以存储整数和小数?A. intB. floatC. char答案:B7. 下列哪个函数可用于将字符串转换为整数?A. atoi()B. itoa()C. atof()D. sprintf()答案:A8. 在C语言中,以下哪个关键字用于定义一个常量?A. constB. staticC. externD. volatile答案:A9. 以下哪种运算符是用来进行逻辑或操作的?A. &&B. ||C. !答案:B10. 下列哪个文件打开模式适用于读写模式?A. "r"B. "w"C. "a"D. "r+"答案:D二、填空题(共5题,每题4分,共20分)1. C语言中,sizeof运算符返回的是所指数据类型的__________。

答案:字节大小2. 下列语句中,会将字符串s2的内容复制到字符串s1中的是__________。

strcpy(s1, s2);答案:strcpy3. 在C语言中,字符串使用__________来表示。

答案:字符数组4. 在C语言中,__________是用于声明变量的关键字。

C语言试卷(含答案)

C语言试卷(含答案)

C语言试卷(含答案)一、单项选择题(每小题2分,共40分)1、sizeof(float)是()A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式2、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf("i=%d,f=%f",&i,&f);为了把100和分别赋给i和f,则正确的输入为()。

A. 100B. i=100,f=765.12C. 100<回车>D. x=100y=3、#include<>voidmain(){inta=3,b=2,c=1;intx=10,y=20;if(a<b)< p="">if(b!=0)if(!x)y=1;elseif(x)y=0;y=-1;printf("%d",y);}上面的C程序的输出结果是()。

A. 20B. 1C. 0D. -14、C语言中,while和do…while循环的主要区别是()。

A. do…while的循环体至少无条件执行一次B. while的循环控制条件比do…while的循环控制条件严格C. do…while允许从外部转到循环体内D. do…while的循环体不能是复合语句5、执行下面的C程序段后,输出结果是()。

inta=5; while(a--);printf("%d",a);A. 54321B. 4321C. 0D. -16、在C语言中,()是在所有函数外部声明的。

A. 全局变量B. 局部变量C. 形参D.实参7、分析下面的C程序:#include<>voidmain(){intnum=0;while(num<=2){num++;printf("%d",num);}}输出结果是()。

A. 123B. 012C. 23D. 128、下面的C语言代码段的输出结果是()。

期末考卷C语言样题1

期末考卷C语言样题1

D) C 语言程序中的 main()函数必须放在程序的开始部分
(5)C 语言中最简单的数据类型包括:( )
A)整型、实型、逻辑型
B)整型、实型、字符型
C)整型、字符型、逻辑型 D)整型、实型、逻辑型、字符型
(6)结构化程序设计所规定的三种基本控制结构是:( )
A)输入、处理、输出 B)树形、网形、环形
C) (x>=y>=z)
D) (x>=y)&(Y>=z)
(15) 若有定义:int a=7,float x=2.5,y=4.7;,则表达式 x+a%3*(int)(x+y)%2/4 的值
为:( )
A) 3.5 B) 2.75 C) 2.5 D)0
(16)若变量 a 是 int 类型,并执行了语句:a=‘A’+1.6;,则正确的叙述是:( )
printf("\"%s\"\n",ch[1]);
}
A) "AAAA" B) "BBB" C) "BBBCC" D) "CC"
(35) 如 a=-2, b=3 表达式 (a<b) ? a : b 的结果为:( )
A、1
B、-2
C、3
D、-6
(36) 以下程序中的 for 循环执行的次数是:( )
#define N 2
C)顺序、选择、循环 D)主程序、子程序、函数
(7)下列关于数组的说明错误的是:( )
A) float f[][3]={1,2,6,4,8,9}
B)char d[10]=”acvdf\n”
C) int b[10]={5,7,24}

c语言等级考试试题

c语言等级考试试题

c语言等级考试试题C语言等级考试试题一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项不是基本数据类型?A. intB. floatC. doubleD. string2. 以下哪个是正确的C语言常量定义方式?A. const int Max = 100;B. int const Max = 100;C. const int max = 100;D. int const max = 100;3. 在C语言中,以下哪个语句可以正确地声明一个指针变量?A. int *ptr;B. ptr int;C. int *ptr = 0;D. int ptr = 0;4. 以下哪个表达式的结果为真?A. 5 > 3B. 'A' == 65C. 10 % 3 == 1D. All of the above5. 在C语言中,以下哪个函数用于计算两个数的最大值?A. max()B. min()C. abs()D. pow()6. 以下哪个循环语句可以正确地实现从1到10的计数?A. for (int i = 10; i >= 1; i--)B. for (int i = 1; i <= 10; i++)C. while (int i = 1; i <= 10; i++)D. do { int i = 1; } while (i <= 10);7. 在C语言中,以下哪个关键字用于定义函数?A. ifB. elseC. functionD. void8. 以下哪个是C语言中正确的数组声明?A. int array[10] = {0};B. int array[] = {0, 1, 2, 3};C. int array[10] = 0;D. int array = {0, 1, 2, 3};9. 在C语言中,以下哪个操作符用于计算两个数的乘积?A. +B. -C. *D. /10. 以下哪个选项是C语言中的条件运算符?A. &&B. ||C. ? :D. ++二、填空题(每空2分,共20分)11. 在C语言中,`printf`函数用于______。

(完整版)C语言试卷及答案

(完整版)C语言试卷及答案

一、选择题(每题2分,共40分)1、C语言源程序的基本单位是( )A.程序行B.语句C.函数D.字符2、C语言规定:在一个源程序中,main函数的位置()。

A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后3、在下列字符列中,合法的标识符是( )A.p12&.aB.stud_100C. water$12D.88sum4、在C语言中,要求运算的数必须是整数的运算符是()A./B.!C.%D.= =5、设有语句 int a =3;则执行了语句a + = a - = a*a;后,变量a的值是()A、3B、0C、9D、-126、设a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a > b)&&(n=c>d)后n的值为()A、1B、2C、3D、47、执行下列程序时输入:1234567,程序的运行结果是()main(){int x,y;scanf(“%2d%*2c%1d”,&x,&y);printf(“%d\n”,x+y);}A.17B.46C.15D.98、下述程序的输出结果是() #include<stdio.h>void main(){int x=-1,y=4;int k;k=++x<=0&&!(y--<=0);printf("%d,%d,%d",k,x,y);}A.0,0,3B.0,1,2,C.1,0,3,D.1,1,29、为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。

A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if10、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()main(){int x;scanf(“%d“,&x);if(x++>5)printf(“%d”,x);else printf(“%d\n”,x--);}A.7和5B.6和3C.7和4D.6和411、若变量c为char类型,能正确判断出c为小写字母的表达式是( )A. 'a'<=c<= 'z'B. (c>= 'a')||(c<= 'z')C. ('a'<=c)and ('z'>=c)D. (c>= 'a')&&(c<= 'z')12、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。

c语言历年真题及答案

c语言历年真题及答案

c语言历年真题及答案【篇一:c语言试题及答案】t>1. 单项选择题(1) c 语言是在 b 语言的基础上产生的。

a. ab. bc. dd. e(2) 在 c 语言中,每个语句必须以 d 结束。

a. 回车符b. 冒号c. 逗号d. 分号(3) 标识符和关键字间,要用c 隔开。

a. 回车符b. 冒号c. 空格d. 分号(4) 用 c 语言编写的源文件经过编译,若没有产生编译错误,则系统将( b )。

a. 生成可执行目标文件b. 生成目标文件c. 输出运行结果d.自动保存源文件(5) 下列说法中正确的是( b )。

a. 由于 c 源程序是高级语言程序,因此一定要在 tc 软件中输入b. 由 c 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入c. 由于c 程序是高级语言程序,因此输入后即可执行d. 由于 c 程序是高级语言程序,因此它由命令组成(6) 下列说法中正确的是( a )。

a. c 语言程序由主函数和 0 个或多个函数组成b. c 语言程序由主程序和子程序组成c. c 语言程序由子程序组成d. c 语言程序由过程组成(7) 下列说法中错误的是( d )。

a. 主函数可以分为两个部分:主函数说明部分和主函数体b. 主函数可以调用任何非主函数的其他函数c. 任何非主函数可以调用其他任何非主函数d. 程序可以从任何非主函数开始执行2. 填空题(1) c 语言只有 32个关键字和 9 种控制语句。

(2) c 语言是一种“ 中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。

(3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行c 语言程序。

(4) 在 c 语言程序中允许出现的字符集是 ascii码字符集。

(5) c 语言的程序中有特殊含义的英语单词称为保留字。

(6) c 语言标识符的长度是前8位有效。

(7) c 语言中,标识符的定义规则是以字母或下划线为开头。

C语言试卷第1套 含答案

C语言试卷第1套  含答案

第一套一、判断题第1题:在C语言中,可执行程序是机器语言代码(对)第2题:在标准C语言中,共用体变量中的各成员是共同占用一块存储空间。

(对)第3题:在if语句中,else前一个语句可不加“;”。

(错)第4题:未在定义语句中赋初值的auto变量和static变量的初值都是随机值(错)第5题:在标准C语言中,在使用文件包含时,各个文件的先后次序无关。

(对)第6题:若有定义一维数组int a[4]的首地址为0078H,则a[1]元素的首地址是0079H (设int型数据占两个字节)。

(错)第7题:在C语言中十六进制数100转换为十进制数为256(对)第8题:在标准C语言中,宏定义的结尾也要加“;”。

(错)第9题:在标准C中,语句必须以“;”结束。

(对)第10题:函数调用可以出现在表达式中(对)二、选择题(请选择正确的选项)第1题:假定a和b为int型变量,则执行以下语句后b的值为(D)a=1;b=10;do{b-=a;a++;}while(b--<0);A、9B、-2C、-4D、8第2题:C语言规定,函数返回值的类型是由(D)A、return语句中的表达式类型所决定B、调用该函数时的主函数类型所决定C、调用该函数时系统临时决定D、在定义该函数时所指定的函数类型所决定第3题:以下叙述不正确的是(D)A、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面第4题:下列关于指针定义的描述,___________是错误的。

(D)A、指针是一种变量,该变量用来存放某个变量的地址值的。

B、指针变量的类型与它所指向的变量类型一致。

C、指针变量的命名规则与标识符相同。

D、在定义指针时,标识符前的“*”号表示后面的指针变量所指向的内容。

第5题:若有以下说明,则数值为4的表达式是: (D)int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',g;A、a[g-c]B、a[4]C、a['d'-'c']D、a['d'-c]第6题:下面有关for循环的正确描述是:(D)A、for循环只能用于循环次数已经确定的B、for循环是先执行循环体语句,后判断表达式C、在for循环中,不能用break语句跳出循环体D、for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来第7题:下列符号中,不属于转义字符的是(D)A、\\B、\x00C、\nD、\09第8题:以下程序的输出结果是(A)# include <stdio.h># include <string.h>main(){char str[12]={'s','t','r','i','n','g'};printf("%d\n",strlen(str));}A、6B、7C、11D、12第9题:下列符号可以作为变量名的是:(C)A、+aB、*pC、_DAYD、next day第10题:下列符号串中,不属于C语言保留字的是(B)A、ifB、thenC、staticD、for三、填空题(请把正确的选项填入试题前的空格中)第1题:以下程序对test.txt进行读操作,并将读出的文本输出到屏幕上。

c语言等级考试试题

c语言等级考试试题

c语言等级考试试题一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef2. 下列哪个选项不是C语言的标准输入输出函数?A. printf()B. scanf()C. coutD. getchar()3. 在C语言中,全局变量的生命周期是?A. 只在定义它的函数中有效B. 从定义开始到程序结束C. 只在main函数中有效D. 只在定义它的代码块中有效4. C语言中,以下哪个操作符用于按位取反?A. !B. ~C. ^D. &&5. 下列哪个不是C语言中合法的赋值运算符?A. +=B. +=C. --D. ++6. 在C语言中,int类型的变量通常占用多少字节的内存空间?A. 1B. 2C. 4D. 87. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcat()B. strcpy()C. strncpy()D. strncat()8. 下列哪个是C语言中的条件运算符?A. ?B. ||C. &&D. ++9. 在C语言中,以下哪个类型用于表示字符?A. intB. charC. floatD. double10. C语言中,以下哪个函数用于计算并返回字符串的长度?A. strlen()B. strcat()C. strcpy()D. strncat()二、填空题(每题3分,共15分)11. 在C语言中,一个浮点数变量声明为 `float x;`,其默认的初始值是______。

12. 当使用 `scanf()` 函数读取字符串时,通常会使用占位符______。

13. 在C语言中,`sizeof` 运算符可以用来获取数据类型或变量的______。

14. 如果一个变量声明为 `static int count;`,那么它的生命周期是 ______。

15. C语言中的 `break` 语句通常用于 ______ 结构中,以提前退出循环。

C语言试题及答案

C语言试题及答案

(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷第一部分:基础知识(20项,共40分)1.一个 C 语言程序是由( c ) 组成的。

A.主程序 B.子程序 C.函数 D.过程2.转换说明符%x 的输出形式是( c ) 。

A.十进制 B.八进制 C.十六进制 D.二进制3.若 a 、b 均为 int 型变量,且 a=100,则关于循环语句 for(b=100;a!=b;++a,++b) printf (“ ------------“) ;的正确说法是( c ) 。

A.循环体只执行一次 B.死循环C.循环体一次也不执行 D.输出 -----------4.若 x、y、z 均为 int 型变量,则执行下列语句后的 z 值为 (a ) 。

x=1;y=2;z=3;z=(x>y)?z :y ;z =(z<y)?z:x;A. 1 B. 4 C. 2 D. 35.下面标识符中,合法的用户标识符为( d ) 。

A. P#Ad B. 12a C. char D. _int6.…A‟ + 3 的结果是( B ) 。

A.‟A‟ B.‟D‟的 ASCⅡ码 C. 65 D. 37.语句 char str[20];说明 str 是一个字符串,最多能表示 ( B ) 。

A. 20个字符 B. 19个字符 C. 18个字符 D. 21个字符8.将 int 型变量 n 转换成 float 型变量的方法是 ( B ) 。

A. float n B. (float)n C. float(n) D. 21个字符9.以下不正确的描述是 ( C ) 。

A.使用 while 和 do-while 循环时,循环变量初始化的操作应在循环语句之前完成B. while 循环是先判断表达式后执行循环体语句C. do-while 和 for 循环均是先执行循环体语句,后判断表达式D. for 、while 、do-while 循环中的循环体均可以由空语句构成10.在循环中使用 break 语句的功能是( A ) 。

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

湖北汽车工业学院《C语言程序设计》考试试卷
一、是非判断题(每小题2分,共14分)
(×)1.在C语言中,函数可以递归调用或递归定义。

(×)2. C程序的执行总是从程序第一句开始。

(√)3.静态外部变量只限于本文件中使用。

(×)4.一个数组的各个数组元素可属于不同的数据类型。

(×)5.break语句可用于程序的任何地方,以终止程序的执行。

(√)6.语句“if(a>b) max=a;else max=b;”与“max=(a>b)?a:b;”
的作用相同。

(√)7.若有一个多维数组a,则*(a+i)与a[i]等价。

二、填空题(每小空1分,共10分)
1.C语言程序的三种基本结构是顺序结构、选择结构、循环结构。

2.C语言中没有逻辑型数据,在给出逻辑运算结果时,以非0 代表“真”,以0代表“假”。

3.在C语言的运算符中,优先级别最低的是逗号。

4.C语言中可以用来实现循环的四种语句是while、do-while、for 、goto。

三、单项选择题(每小题2分,共28分)
1._A__是C语言合法的常量。

(A).45 (B)078 (C)25.6e3.4 (D)‘xy’2.设x=3,y=2,则表达式x*=y+8的值为__C___。

(A)3 (B)2 (C)30 (D)10
3.设x=2.5,a=7,y=4.7,算术表达式x+a%3*(int)(x+y)%2/4的值为__A___。

(A)2.5 (B)7 (C)4.7 (D)2.75 4.下列变量说明语句中,正确的是D。

(A)char:a b c;(B)char a;b;c;(C)int x;z;(D)int x,z;
5.执行下面两个语句后,输出的结果为__B___。

char c1=97,c2=98;
printf(“%d %c”,c1,c2);
(A)97 98 (B)97 b (C)a 98 (D)a b 6.执行下面语句后的结果为__C___。

y=10;x=y++;
(A)x=10,y=10 (B)x=11,y=11 (C)x=10,y=11 (D)x=11,y=10
7.以下程序运行后,输出的结果为__D___。

main( )
{ char a=15;printf(“%d,%o,%x”,a,a,a);}
(A)15,f,17 (B)15,15,f (C)17,f,15 (D)15,17,f
8.两个指针变量不可以___C___。

(A)相减(B)比较(C)相加(D)指向同一地址9.用scanf(“%d,%d”,&a,&b)输入数据时,下面输入法中正确的是A。

(A)123,4 (B)123 4 (C)123;4 (D)123:4 10.下列程序段中,功能与其它程序段不同的是 B 。

(A)for(i=1,p=1;i<=5;i++) p*=i;
(B)for(i=1;i<=5;) { p=1;p*=i;i++;}
(C)i=1;p=1;while(i<=5) { p*=i;i++;}
(D)i=1;p=1;do { p*=i;i++;} while(i<=5);
11.以下程序的运行结果为___A___。

main( )
{ int n;
for( n=1;n<=10;n++)
{ if( n%3==0) continue; printf(“%d”,n); }
}
(A)12457810 (B)369 (C)12 (D)12345678910 12.设x和y均为int型变量,则语句x+=y;y=x-y;x-=y;的功能是 D 。

(A)把x和y按从大到小排列(B)把x和y按从小到大排列
(C)无确定结果(D)交换x和y中的值
13.设有以下语句,则变量a B 。

char a=‘\72’;
(A)包含3个字符(B)包含1个字符
(C)包含2个字符(D)说明不合法语法
14.以下函数调用语句中含有 A 个实参。

func((e1,e2),(e3,e4,e5));
(A)2 (B)3 (C)5 (D)语法错误
四、阅读填空(每小空2分,共24分)
1. #define ___ PRICE _ 30
main()
{ __int num,total__ ;
num=10;total=num*PRICE;
printf(“total=%d,num=%d\n”,__ total ,_ num _);
}
2.以下函数的功能是:把两个整数指针所指的存储单元的内容进行交换。

exchange(int *x,int *y)
{ int t;
t=*y;*y=__*x___;*x=_t_; }
3.对数组中的元素值进行从小到大的排序。

main()
{ int a[ ]={2,4,15,3,17,5,8,23,9,7,11,13},i,j,k;
for(k=0;k<12;k++)
for(i=k+1;i<12;i++)
if( a[i]__>__a[k] )
{ j=a[i]; a[i]=__a[k]__; _a[k]=j_; }
for(i=0;i<12;i++)
printf(“%4d”,a[i]);
printf(“\n”);
}
4.下列程序计算1到100的奇数的累加和。

main()
{ int i,_sum_;
for(_i=1,sum=0;i<=100;i=i+2__) sum+=i;
printf(“sum=%d\n”,sum);
}
5.以下程序计算数的阶乘
main( )
{ int i,n; long np;
scanf(“%d”,&n);
np=___1____;
for(i=2;i<=n;i++)
__ np=np*i_;
printf(“n=%d n! =%ld\n”,n,np);
}
五、写出下列程序的运行结果(每小题4分,共24分)
1. main( )
{ static char s1[20]=“My ”,s2[20]=“book!”,s3[]=“Your ”;
strcpy(s2,“car!”);strcpy(s1,s3);
strcat(s1,s2);printf(“%s”,s1);
}
运行结果:Your car!
2. main( )
{ int grade;
scanf(“%c”,&grade);
switch(grade)
{ case 'A’:printf(“>=85.”);
case ‘B’:printf(“>=60.”);
case ‘C’:printf(“<60.”);
default: printf(“error.”);
}
}
若从键盘输入B,程序的运行结果为:error.(结果不定,也可能为>=60.)
3. #define A 4
#define B(a) ((A+1)*a)
main( )
{ int x;x=3*(A+B(7));
printf(“x=%d\n”,x);
}
运行结果:x=117
4.main( )
{ int a,b,c,max;
scanf(“%d,%d,%d”,&a,&b,&c);
max=a;
if(max<b) max=b;
if(max<c) max=c;
printf(“max is:%d”,max);
}
当输入19,2,21时,运行结果:max is:21
5.main( )
{ static char a[ ]=“ABCDEFGH”,b[ ]=“abCDefGH”; char *p1;
char *p2;
int k;
p1=a;p2=b;
for(k=0;k<=7;k++)
if(*(p1+k)==*(p2+k))
printf(“%c”,*(p1+k));
printf(“\n”);
}
运行结果:CDGH
6. func(int a,int b)
{ static int m=0,i=2;
i+=m+1;
m=i+a+b;
return(m);
}
main( )
{ int k=4,m=1,p;
p=func(k,m);printf(“%d,”,p);
p=func(k,m);printf(“%d\n”,p);
}
运行结果:8,17。

相关文档
最新文档