c语言期末测试题(附答案)
期末c语言试题及答案

期末c语言试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项不是C语言中的关键字?A. intB. charC. voidD. for答案:C2. C语言中,用于定义单精度浮点型变量的关键字是?A. floatB. doubleC. intD. char答案:A3. 在C语言中,以下哪个运算符用于取模?A. %B. /C. *D. -答案:A4. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. whileD. do-while答案:B5. C语言中,用于定义一个结构体的关键字是?A. structB. unionC. enumD. typedef答案:A6. 在C语言中,以下哪个函数用于将字符串连接到另一个字符串的末尾?A. strcatB. strcpyC. strcmpD. strlen答案:A7. 下列哪个选项不是C语言中的标准库函数?A. printfB. scanfC. mallocD. strcpy答案:D8. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C9. C语言中,用于定义一个枚举类型的关键字是?A. enumB. structC. unionD. typedef答案:A10. 在C语言中,以下哪个选项用于定义一个指针?A. *B. &C. %D. #答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。
答案:int2. C语言中,用于定义一个字符型变量的关键字是________。
答案:char3. C语言中,用于定义一个双精度浮点型变量的关键字是________。
答案:double4. C语言中,用于定义一个布尔型变量的关键字是________。
答案:_Bool5. C语言中,用于定义一个数组的关键字是________。
C语言期末考试题及其答案

C语言期末考试题及其答案------------------------------------------作者------------------------------------------日期语言期末考试题及其答案一选择题( 分,每小题 分)语言源程序的基本单位是()。
✌过程 函数 子程序 标识符下列程序的输出结果是()。
❍♋♓⏹☎ ✆♓⏹♦ ♋♌ ☐❒♓⏹♦♐☎✂♎⏹✂♌♌♋✆❝✌ 不确定值假设变量♋♌均为整型,表达式☎♋♌♋♌✍♋♌♋♌✆的值是()。
✌ 设♋为♓⏹♦型变量,执行下列赋值语句后,♋的取值分别是()。
♋ ♋☎♓⏹♦✆ ♋✌ 设有如下程序段,下面描述中正确的是()。
♓⏹♦ ♦♒♓●♏☎✆ ✌ 循环执行一次 循环是无限循环 循环体语句一次也不执行循环体语句执行一次以下程序的输出结果为()。
♓⏹♦ ♓❖☐♓♎ ☐❒♦☎ ✆♐☐❒☎♓♓♓✆☐❒♓⏹♦♐☎✂♍✂✉✆☐❒♓⏹♦♐☎✂♦✂✆ ❝❍♋♓⏹☎ ✆♐☐❒☎♓♓♓✆ ❒♓⏹♦♐☎ ✆ ❝✌ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉ ✉ 在 语言程序中,以下说法正确的是()。
✌函数的定义可以嵌套 但函数的调用不可以嵌套函数的定义不可以嵌套 但函数的调用可以嵌套函数的定义和函数的调用都不可以嵌套函数的定义和函数的调用都可以嵌套以下函数调用语句中含有()个实参。
♐◆⏹♍☎☎♏♏✆☎♏♏♏✆✆✌ 语法错误以下程序的输出结果为()。
C语言期末考试题(含答案)

C语言期末考试题 ( 含答案 )4程序行后的出果是:四、编程题( 3x15’ = 45 ’)19、写一个程序。
入一个小写字母,程序出它的大写字母。
(提示:小写字母的ASCII 比大些字母大 32)20、写一个程序,算100+101+102+⋯+300 的。
21、已知学生成 (100 分分 ) 与等的关系:成( grade )等90<=grade<=100A80<=grade<90B70<=grade<80C60<=grade<70Dgrade<60E你写一个程序,要求:入学生成,出学生成的等。
(提示:使用 switch ⋯ .case 句)期末答案1、B2、A3、D4、C5、B6、A7、D8、C9、D10、C11、 x>=z && y>=z12、函数名、形式参数、函数体13、 while、do-while、for14、a%5==0 && a%7==015、12,716、11,1317、318、3,2,-119、程序代以下:#include <stdio.h>void main(){char ch;5scanf("%c",&ch);printf("%c\n",ch-32);}20、程序代码以下:#include <stdio.h>void main(){int i,sum=0;for (i=100;i<=300;i++)sum+=i;printf("sum=%d\n",sum);}21、程序代码以下:#include <stdio.h>void main(){int grade;scanf("%d",&grade);switch(grade/10){case 10:case 9:printf("A\n");break;case 8:printf("B\n");break;case 7:printf("C\n");break;case 6:printf("D\n");break;default:printf("E\n");break;}}期末试题答案备用卷1、B2、A63、D4、D5、B6、A7、A8、B9、B10、A11、整型、实型、字符型12、313、2,114、9,015、return16、double17、718、219、2,1,120、程序代码:#include <stdio.h>void main(){int a,b,c;float pinjun;scanf("%d%d%d",&a,&b,&c);pinjun = (a+b+c)/3.0;printf("%.2f\n",pinjun);}21、程序代码:#include <stdio.h>void main(){int a;scanf("%d",&a);if(a<0)a=-a;printf("%d\n",a);}22、程序代码:#include <stdio.h>void main(){float x,y;scanf("%f",&x);if(x<=0)7y=3*x+5;else if(x>0 && x<=1)y=x+5;elsey=-2*x+8;printf("%.2f\n",y);}8。
(完整版)C语言期末考试题(含答案)

(完整版)C语⾔期末考试题(含答案)《C 语⾔程序设计》期末试卷⼀、单项选择题(10x2’=20’)1、以下叙述正确的是()A )C 语⾔的源程序不必通过编译就可以直接运⾏。
B )C 语⾔中的每条可执⾏语句最终都将被转换成⼆进制的机器指令。
C )C 语⾔源程序经编译形成的⼆进制代码可以直接运⾏。
D )C 语⾔中的函数不可以单独进⾏编译。
2、⼀个C 语⾔的源程序中()A )必须有⼀个主函数B )可能有多个主函数C )必须有除主函数外其它函数D )可以没有主函数3、以下不能定义为⽤户标识符的是()A )scanfB )VoidC )_3comD )int4、若以下选项中的变量已正确定义,则正确的赋值语句是()A )x1=26.8%3;B )1+2=x2;C )x3=0x12;D )x4=1+2=3;5、设有定义:float a=2,b=4,h=3;以下C 语⾔表达式中与代数式h b a *)(21 的计算结果不.相符的是() A )(a+b)*h/2 B )(1/2)*(a+b)*h C )(a+b)*h*1/2 D )h/2*(a+b)6、C 语⾔中⽤于结构化程序设计的3种基本结构是()A )顺序结构、选择结构、循环结构B )if 、switch 、breakC )for 、while 、do-whileD )if 、for 、continue7.在while (!x )语句中的!x 与下⾯条件表达式等价的是()A) x!=0 B) x==1 C) x!=1 D) x==08、有以下程序:#includevoid main(){int i=1,j=1,k=2;if( (j++||k++)&&i++ )printf(“%d,%d,%d\n ”,i,j,k);}执⾏后的输出结果是()A )1,1,2B )2,2,1C )2,2,2D )2,2,39、有以下程序:#includevoid 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中偶数之和10、有以下函数定义:void fun(int n,double x){……}若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调⽤语句是()A)fun(int y,double m);B)k=fun(10,12.5);C)fun(x,n); D)void fun(n,x);⼆、填空题(10x2’=20’)11、C语⾔描述“x和y都⼤于或等于z”的表达式是:。
c语言期末考试题及答案详

c语言期末考试题及答案详一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是:A. defineB. declareC. definetypeD. type答案:B2. 下列哪个是C语言中的合法标识符?A. 123abcB. intC. _123abcD. if答案:C3. 在C语言中,哪个运算符用于计算两个整数的平均值?A. /B. %C. +D. /答案:D4. 下列哪个是C语言中正确的字符串定义?A. char str[] = "Hello, World!";B. char str = "Hello, World!";C. string str = "Hello, World!";D. str "Hello, World!";答案:A5. 在C语言中,哪个函数用于计算一个数的平方根?A. sqrt()B. square()C. root()D. power()答案:A6. 下列哪个语句用于在C语言中交换两个变量的值?A. swap(a, b);B. exchange(a, b);C. a = b; b = a;D. a, b = a + b;答案:C7. 在C语言中,哪个关键字用于声明一个函数?A. functionB. defC. funcD. void答案:D8. 下列哪个是C语言中正确的数组初始化方式?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3, 4, 5};C. int arr[5] = {1, 2, 3, 4};D. int arr = {1, 2, 3, 4, 5};答案:B9. 在C语言中,哪个语句用于结束程序的执行?A. break;B. end;C. exit();D. stop;答案:C10. 下列哪个是C语言中正确的条件语句?A. if (x > 0) { ... }B. condition (x > 0) { ... }C. if (x > 0) then { ... }D. if (x > 0) { ... } else { ... }答案:D二、填空题(每空2分,共20分)11. 在C语言中,使用________关键字来定义一个结构体。
c语言期末复习试题附答案

c语言期末复习试题附答案一、选择题(每题2分,共20分)1. C语言中,下面哪个选项不是合法的数据类型?A. intB. floatC. doubleD. character答案:D2. 在C语言中,下面哪个选项是合法的变量名?A. 2abcB. abc12C. abc_12D. abc&12答案:B3. 下面哪个选项不是C语言的运算符?A. +C.D. %答案:D4. 在C语言中,下面哪个选项表示取模运算?A. %B. /C.D. ^答案:A5. 下面哪个选项是C语言中的关系运算符?A. ==B. !=C. >D. <答案:A、B、C、D6. 下面哪个选项是C语言中的逻辑运算符?B. ||C. !D. &答案:A、B、C7. 下面哪个选项是C语言中的赋值运算符?A. =B. +=C. -=D. =答案:A、B、C、D8. 下面哪个选项不是C语言中的控制语句?A. ifB. whileC. do-whileD. for答案:D9. 在C语言中,下面哪个选项表示循环不变量?A. 初始化表达式B. 循环条件C. 循环体D. 步进表达式答案:D10. 下面哪个选项是C语言中的递归调用?A. function(function());B. function();function();C. function(function());function();D. function();function(function());答案:A二、填空题(每题2分,共20分)1. C语言中,一个整型数据占____个字节。
答案:42. C语言中,一个浮点型数据占____个字节。
答案:43. 在C语言中,一元运算符“++”和“--”的优先级高于二元运算符“+”、“-”、“”、“/”、“%”。
答案:正确4. 在C语言中,关系运算符“==”和“!=”的优先级高于“<”、“>”、“<=”、“>=”。
期末c语言考试题库及答案

期末c语言考试题库及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是合法的C语言变量名?A. 2nd_variableB. _variableC. variable-nameD. variable$name答案:C3. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. =答案:A5. C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. intD. void答案:C6. 在C语言中,以下哪个选项表示“不等于”?A. ==B. !=C. =D. <=答案:B7. 下列哪个选项是C语言中的循环结构?A. ifB. forC. switchD. case答案:B8. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlenB. strcpyC. strcatD. strcmp答案:A9. C语言中,以下哪个关键字用于定义一个指针?A. *B. &C. %D. #答案:A10. 下列哪个选项是C语言中的数组?A. int a[10];B. int *a;C. int a=10;D. int a;答案:A二、填空题(每题2分,共10分)1. 在C语言中,用于定义一个字符常量的数据类型是______。
答案:char2. 在C语言中,用于定义一个整型变量的数据类型是______。
答案:int3. 在C语言中,用于定义一个浮点型变量的数据类型是______。
答案:float4. 在C语言中,用于定义一个双精度浮点型变量的数据类型是______。
答案:double5. 在C语言中,用于定义一个布尔型变量的数据类型是______。
c语言期末考试试题及答案

c语言期末考试试题及答案一、选择题1. C语言中用于表示逻辑“与”操作的关键字是()。
A. &&B. ||C. &D. and答案:A2. 若有定义:int a = 5; int b = 10; 则表达式 a * b / 3 的值是()。
A. 15B. 17C. 20D. 25答案:D3. 下列哪个函数用于计算字符串的长度?A. strlen()B. strcmp()C. strcpy()D. strrev()答案:A4. C语言中,文件的打开模式“w”表示什么?A. 写入模式,文件不存在则创建,存在则覆盖B. 写入模式,文件不存在则创建,存在则追加内容C. 读取模式,文件不存在则创建,存在则覆盖D. 读取模式,文件不存在则报错,存在则读取内容答案:A5. 以下哪个选项是C语言中的合法整型常量?A. 0x1FB. 01FC. 1.0e2D. 0b11答案:A二、填空题1. 在C语言中,使用关键字________定义一个全局变量。
答案:extern2. 若有定义:int x = 10; 则执行语句 x += x; 后,变量x的值是________。
答案:203. 在C语言中,使用函数________可以将一个字符串复制到另一个字符串中。
答案:strcpy4. 一个C语言程序的执行是从________函数开始的。
答案:main三、判断题1. C语言中的数组下标是从0开始计数的。
()答案:正确2. 在C语言中,可以定义一个空指针,其值为0。
()答案:正确3. C语言允许在函数定义中再定义另一个函数。
()答案:错误四、简答题1. 请简述C语言中的指针和引用的主要区别。
答案:指针是一个变量,其存储的是另一个变量的地址;而引用是另一个变量的别名,它必须在定义时就被初始化,并且不能被重新指向其他变量。
指针可以直接被修改以指向不同的地址,而引用则始终指向初次定义时的变量。
2. 解释C语言中的预处理器指令#if、#else和#endif的作用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程代码: A100002 《计算机技术基础( C 语言)》试卷 A姓名: 学号:专业 :学院 :班级 :20 年 月 日选择题(共 30 分)题(本大题共 15 小题,每题只有一个正确答案,答 分,共 30 分)1、以下关于 C 语言标识符的描述中,正确的是【 】。
A) 标识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与 area 是不同的标识符2、使下列程序段输出“ 123, 456,78”,键盘输入数据,正确的输入是【 】int i,j,k;scanf( “%d,%3d%”d ,&i,&j,&k); printf( “%d,%d,%dn ”,i,j,k);A ) 12345678B )123,456, 78C ) 123,45678D ) 123,*456783、判断 char 类型的变量 c1 是否为数字字符的正确表达式为 【 】。
A) (c1>=0)&&(c1<=9) B) (c1>= '0')&&(c1<='9') C) '0'<=c1<='9'D) (c1>='0')||(c1<= '9')4、若有语句 int a=1,b=2,c=3 ;则以下值为 0 的表达式是 【 】。
A )' a '&&'b ' B )a<=b C )((a>b)||(b<c) D)(!(a+b)==c&&a)5、已知: int a[2][3]; 则对数组元素的非法引用是座位号:第一部分一、单项选择计算机技术基础试题 第 2 页(共 10 页)A. *(a[0]+2)B. a[1][3] C . a[1][0] D. *(*(a+1)+2)6、在循环语句的循环体中执行 break 语句,其作用是 【 】。
A )跳出该循环体,提前结束循环B) 继续执行 break 语句之后的循环体各语句 C) 结束本次循环,进行下次循环 D) 终止程序运行7、执行语句 for(i=10;i>0;i--) ;后,变量 i 的值为 【 】。
A ) 10 B )9 C )0 D )18、若有 int *p1, *p2, k; 不正确的语句是 【 】A. p1=&kB. p2=p1C. *p1=k+12D. k=p1+p29、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】 A. 静态( static ) B. 外部( extern ) C. 自动( auto ) D . 寄存器( register )10、如下程序的输出结果是【 】main( ){ int x=2,a=0,b=0;switch(x){ case 2: a++; b++;case 1: ++a; b--; break; case 0: b++;}printf("a=%d, b=%d\n", a, b);}A. a=2, b=0B. a=2, b=1C. a=1, b=1D. a=1, b=011、表示关系 a<b<=c 的 C 语言表达式为【 】main() {int x;scanf( “%d ” ,&x); if(x<=3) ; elseif(x !=10)printf( “%d\n ” ,x); } 程序运行时,输入的值在哪个范围才会有输出结果。
A. (a<b)&&(b<=c) C. (a<b<=c) 12、 有以下程序 #includeB. (a<b)AND(b<=c) D. (a<b)&(b<=c)A.不等于10的整数B. 大于3且不等于 10的整数C.大于 3 或不等于 10 的整数 D. 小于 3 的整数13、break 语句的正确用法是 【 】A. 无论在任何情况下,都中断程序的执行,退出到系统下一层。
B. 在多重循环中,只能退出最靠近的那一层循环语句。
C. 跳出多重循环。
D. 只能修改控制变量。
14、若 a, b, c, d 均为整型变量,执行以下程序段后的 t 的值为 【 】#define MAX(A,B) (A)<(B)?(A):(B) a=5; b=3; c=3; d=4; t=MAX(a+b,c+d) *10; A. 70 B. 7 C. 8 D. 8015、执行以下程序段后 , m 的值为 【 】 int a[6]={1,2,3,4,5,6}, m, *p; p=&a[0];m=(*p)*(*(p+2))*(*(p+4)); A) 15 B) 14 C) 13 D) 12第二部分 非选择题(共 70 分)(本大题共 10 小题,每题 1分,共 10 分,答 T表示说 表示说法不正确 , 本题只需指出正确与错误 , 不需要修16. 字符型数据不可以进行加减运算。
【 】 17. 函数定义与函数的声明是一回事。
【 】18. 在 C 语言中函数能嵌套调用,也能嵌套定义。
【 】 19. 在 C 语言中 switch 语句必须使用 break 语句。
【 】 20. for 循环中的三个表达式都可以省略。
【 】 21. do-while 循环是先进行循环体语句,后判断表达式。
【 】 22. 只能在 main() 函数中定义静态变量。
【 】23. char *s1=“I love china ”;定义了一个指针变量 s1,它的初值为字符串“ I love china 的首地址。
【 】24. int *p[4]; 与 int (*p)[4]; 的作用相同,都是定义了一个指向数组的指针。
【】25. 预处理命令行最后也是以分号(; )结尾的。
【 】得分 评卷人、填空题 (本大题共 6 小题,每题 3 分,共 18 分。
)二、判断题 法正确 . 答计算机技术基础试题 第 4 页(共 10 页)26、在 C 语言中 * 作为单目运算符时表示 ___ ,作为双目运算符时表示________ ,而作为一种标记时表示 _______ 。
27、表达式 (a=3*5,a*4),a+5 中 a 的值是 ___ ,整个表达式的值是 ____ 28、设有如下的类型说明 :int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;若数组所占内存单元的起始地址为 446 且整型数据占 2 个字节, 则 p+5= , *(p+5)= ____ 。
29、若定义了如下的共用体类型变量 x 和结构类型变量 y ,则 x 和 y 所占用的内存字 节数分别为 ____ 和 。
union stu1 struct stu230、在 TC 中 CTRL+F9的功能是 ____ 、 ________ 和 __________ 。
31、有以下程序#include <stdio.h> main(){char c1,c2;scanf( “%c ” ,&c1) ;while(c1<65||c1>96) scanf( “%c ” ,&c1) ; c2=c1+32;printf( “%c,%c ” ,c1,c2);}程序运行输入 65 回车后,能否输出结果。
(请回答能或不能) 。
四、简答题 (本大题共 2 小题,每题 3 分,共 6 分。
)32、C 语言中变量的存储类别有几种?局部变量的缺省存储类别是 哪种。
33、请解释以下与一个 C 程序有关的 3 种文件(需要说明这些文件是什么文件、如何 形成的):(1) file.c (2) file.obj (3) file.exe{ int num; charname[5];char s; }x; {int num;char name[5]; char s; }y;void main(){ int a=10,b=18; fun1(a,b);}int fun1(int x,int y){ if(x>y) printf("a>b\n"); else if(x<y) printf("a<b\n"); else printf("a==b\n"); }问题:(1)写出程序的运行结果; (2)分别列出形参和实参; ( 3)解释 #include <stdio.h> 。
35、int fun(int a) { int b=0; static int c=3;b=b+1; c=c+1;五、阅读程 34得分 评卷人 序回答问题(本大题共 4 小题,每题 5 分,共 20 分)#include <stdio.h>return(a+b+c);}main( ){ int a=2, i;for(i=0; i<3; i++)printf( “%d”, fun(a)); }问题:(1) 写出该程序的运行结果;(2) 如果将staticint c=3; 成int c=3; ,则运行结果如何变化?为什么?36、main( ){ int a[2][3]={1,2,3,4,5,6}, b[3][2], i, j; printf( “array a: n”);for(i=0;i<=1;i++) { for(j=0;j<=2;j++){printf( “%5d”, a[i][j ]); b[j][i]=a[i][j];}/* 第七行*/ printf( “ n”);}printf( “array b: n”);for(i=0;i<=2;i++) {for(j=0;j<=1;j++)printf( “%5d”, b[i][j]);printf( “ n”);}}问题:(1) 写出程序的运行结果;(2) 如果将第七行中的b[j][i]=a[i][j]; b[i][j]=a[i][j]; ,则结果如何变化。
37、#include<stdio.h>void fun(int *p1, int *p2){ int t;t=*p1; *p1=*p2; *p2=t; } voidmain()语句改写语句改写成计算机技术基础试题第6 页(共10 页){ int x,y;int *p1,*p2;scanf("%d %d",&x,&y); p1=&x; p2=&y;if(x>y) fun(p1,p2);printf("x=%d,y=%d", x, y); }问题:(1) 该程序的功能是什么; (2) 程序中的 * 和 & 分别代表什么运算符? (3)若输入 5 3 ,则运行结果如何?序(本大题共 1 小题,共 10 分。