2019年C语言期末考试题与答案
c语言期末考试题库及详解答案
c语言期末考试题库及详解答案C语言期末考试题库及详解答案一、选择题1. 下列哪个选项是C语言中正确的整型常量?A. 0.1234B. 0x12ABC. 0b1010D. 1e10答案:B2. C语言中,以下哪个关键字用于定义变量的存储类别?A. staticB. constC. typedefD. volatile答案:A3. 在C语言中,以下哪个运算符用于求两个数的余数?A. /B. %C.D. ++答案:B4. 下列哪个选项是C语言中正确的字符常量?A. 'A'B. "A"C. AD. 65答案:A5. 在C语言中,以下哪个函数用于计算两个数的最大值?A. max()B. min()C. pow()D. sqrt()答案:A二、填空题6. C语言中,用于定义数组的关键字是______。
答案:int7. C语言中,用于输入输出的库函数分别是______和______。
答案:scanf(); printf()8. C语言中,若要定义一个指针变量,需要使用关键字______。
答案:int*9. C语言中,用于定义函数的关键字是______。
答案:void 或其他数据类型10. C语言中,若要实现字符串的复制,可以使用库函数______。
答案:strcpy()三、简答题11. 简述C语言中结构体的定义方式。
答案:在C语言中,结构体是一种用户自定义的数据类型,它允许将多个不同类型的数据项组合成一个单一的类型。
结构体的定义方式如下:struct 结构体名 {数据类型成员名1;数据类型成员名2;...};12. 解释C语言中的递归函数。
答案:递归函数是一种函数自己调用自己的特殊函数。
递归函数通常用于解决可以被分解为相似子问题的问题。
递归函数需要有一个明确的终止条件,以防止无限递归。
四、编程题13. 编写一个C语言程序,实现求一个整数的阶乘。
答案:```c#include <stdio.h>long factorial(int n) {if (n <= 1) return 1;else return n * factorial(n - 1);}int main() {int num;printf("Enter a number: ");scanf("%d", &num);printf("Factorial of %d = %ld", num, factorial(num)); return 0;}```14. 编写一个C语言程序,实现字符串的反转。
C语言期末考试试卷附参考答案
一、单项选择题(请将答案填在下面表格中20×1)1. 以下叙述中正确的是()。
A. C语言比其他语言高级B. C语言可以不用编译就能被计算机识别执行C. C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D. C语言出现的最晚,具有其他语言的一切优点2. 以下叙述中正确的是()。
A.构成C程序的基本单位是函数B.可在一个函数中定义另一个函数C. main函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义3. 以下叙述中正确的是()。
A. C语言程序总是从第一个函数开始执行B.在C语言程序中,要调用函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分4. 以下有关for循环的正确描述是()。
A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来5. 对下面程序段的描述,正确的是()。
x=-1;do{x=x*x;}while(!x);A.是死循环B. 循环执行一次C. 循环执行两次D. 有语法错误6. 以下有关C语言数组说法正确的是()。
A.数组元素的数据类型可以不一致B.数组元素的个数可以不确定,允许随机变动C.可以使用动态内存分配技术,定义元素个数可变的数组D.定义一个数组后,就确定了它所容纳的具有相同数据类型元素的个数7.以下数组定义正确的是()。
A. int a(20);B. int a[ ]={1,2,5,7,0};C. int a[n];D. int a[2]={1,2,4,6};8.在定义int b[2][10];之后,对b数组元素引用正确的是( )。
A. b[0][9]B. b[2,3]C. b(1)(5)D. b[10] [0]9. 如有定义语句int c[ ]={1,5,3,4,6,7,0};,则数组c有()个元素。
2019年C语言考试试题带答案
2019年C语言考试试题带答案1、设int a=2,b;则执行b=a&&1;语句后,b的结果是( )A.0B.1C.2D.32.逗号表达式(a=3*5,a*4),a+15的值是( )A.15B.60C.30D.753. 在以下运算符中,优先级最高的运算符是__________A) , B) [ ] C) && D) +=4. 在C语言中,逻辑值“真”用__________表示。
A) true B) 大于0的数C) 非0的整数D) 非0的数5.C语言中,逻辑“真“等价于( )。
A、大于零的数B、大于零的整数C、非零的数D、非零的整数6.假设在程序中a,b,c均被定义为整型,并且已赋大于1的值,则下列能正确表示代数式1/abc的表达式是( )。
A、1/a*b*cB、1/(a*b*c)C、1/a/b/(float) cD、1.0/a/b/c7、以下标识符中,不能作为合法的C用户定义标识符的是:( )A .a3_b3 B.void C._123 D.abc8.若要表示if( a不等于0 )这一关系式,则能正确表示这一关系的表达式为if (__________)A) a<>0 B) !a C) a=0 D) a9、有以下程序main(){int a,b,d=25;a = d/10 & (-1);b = a && (-1);printf("%d,%d\n",a,b);}程序运行后的输出结果是A 6,1B 2,1C 6,0D 2,010.若定义float a;现要从键盘输入a的数据,其整数位为3位,小数位为2位,则选用()。
A)scanf("%f",&a); B) scanf("%5.2f",a);C) scanf("%6.2f",&a); D) scanf("%f",a);11.下面程序段___x=3;do{y=x--;if(!y){printf("x");continue;}printf("#");}while(1<=x<=2);A) 将输出## B) 将输出##*C) 是死循环 D) 含有不合法的控制表达式12、两次运行下面程序,如果从键盘上分别输入6和4,则程序的输出结果是( )main ( ){int x;scanf(″%d″,&x);if(x++>5) printf(″%d″,x);else printf(″%d\n″,x-1);}A.7和5B.6和3C.7和4D.6和413.合法的数组定义是 ( )A、int a[]="string";B、int a[5]={0,1,2,3,4,5};C、vhst s="string";D、char a[]={0,1,2,3,4,5};14、定义如下变量和数组,则输出结果是( )。
期末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语言中,用于定义一个布尔型变量的数据类型是______。
2019年C语言期末考试题及答案
的一个)。
, 求最小值出现的位置(如果最小值1、给定n个数据例如:输入的数组为:求出第一次出现的位置即可)。
出现多次, 1 2 34 15 612 18 9k+1i<=n最大值第三行五行 10 11 2的值并输出。
计算公式为:2、编写程序求无理数e e=1+1/1!+1/2!+1/3!+......+1/n! 求出的最大数为18,行坐标为2,列坐标为1。
当1/n!<0.000001时e=2.7182827、求一个n位自然数的各位数字的积。
(n 是小于10的自然数)求一批数中最大值和最小值的积。
3、2、某一正数的值保留位小数,对第三位进行四舍48、计算n门课程的平均值,计算结果作为函数值返回。
五入。
例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。
x,5、从键盘上输入任意实数求出其所对应的函数值。
z=(x-4)的二次幂(x>4)9、求一批数中小于平均值的数的个数。
z=x的八次幂(x>-4)z=z=4/(x*(x+1))(x>-10)z=|x|+20(其他)M×N求出、6整型数组的最大元素及其所在的行坐标10、编写函数判断一个整数m的各位数字之和能否被7整除,及列坐标(如果最大元素不唯一,选择位置在最前面0。
调用该函数找出可以被7整除则返回1,否则返回100~200之间满足条件的所有数。
15、实现两个整数的交换。
例如:给a和b分别输入:60和65,输入为:a=65 b=60void fun(int tt[M][N],int pp[N]),11、请编一个函数16、将字符串中的小写字母转换为对应的大写字母,N列的二维数组,求出二维数组每列M tt指向一个行其它字符不变。
所指一维数组中。
二维中最大元素,并依次放入pp数组中的数已在主函数中赋予。
17、求一个四位数的各位数字的立方和。
、编写函数10fun用比较法对主程序中用户输入的具有1218、求一组数中大于平均值的数的个数。
2019-北京理工大学-成教-《c语言程序设计》期末测试卷(4)
[试题分类]:C语言程序设计1.下列叙述中,错误的是A. 一个C语言程序必须有且只有一个主函数B. C语言程序的注释必须位于语句之后C. 一个C语言程序可以有多个函数D. C语言程序的基本结构是函数答案:B题型:单选题知识点:第2章 C语言概述难度:12.下列选项中,所有符号均为C语言关键字的选项是A. enum,ifB. include,elseC. scanf,structD. continue,repeat答案:A题型:单选题知识点:第2章 C语言概述难度:13.下列选项中,可以正确表示字符型常数的是A. 297B. "a"C. "\n"D. '\t'答案:D题型:单选题知识点:第3章数据类型与运算规则难度:14.下列C语言运算符中,要求操作数必须是int类型的是A. ++B. --C. %D. /答案:C题型:单选题知识点:第3章数据类型与运算规则难度:15.若有定义“int w=1,x=2,y=3,z=4;”,则条件表达式“w>x w : y<z y : z”的结果是A. 4B. 3C. 2D. 1答案:B题型:单选题知识点:第3章数据类型与运算规则难度:26.若有定义“int x;”,则执行完逗号表达式“(x=4*5,x*5),x+25”后,变量x的值是A. 20B. 100C. 45D. 125答案:A题型:单选题知识点:第3章数据类型与运算规则难度:27.若有定义“int i=-1,j=1;”,则执行下列语句后的输出结果是if((++i<0) && !(j--<0))printf("%d %d\n",i,j);else printf("%d %d\n",j,i);A. -1 1B. 0 0C. 0 1D. 1 0答案:D题型:单选题知识点:第5章选择结构的程序设计难度:28.下列叙述中,错误的是A. 循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环B. 循环语句中使用break语句是为了使流程跳出循环体,提前结束循环C. switch语句中使用break语句或continue语句的作用是相同的D. break语句不能用于循环语句和switch语句以外的其他语句答案:C题型:单选题知识点:第5章选择结构的程序设计难度:29.若有定义“int x=10,i;”,则下列语句执行后的结果是for (i=0; x>8; ) printf ("%d ",--x);A. 10 9B. 9 8C. 死循环D. 语句错误答案:B题型:单选题知识点:第6章循环结构的程序设计难度:210.若有定义“int n=0;”,则执行语句“while(n<=2) printf("%d", ++n);”后的输出结果是A. 01B. 12C. 012D. 123答案:D题型:单选题知识点:第6章循环结构的程序设计难度:211.{若有定义“int x=1,y=10;”,则执行下列语句后变量x的值是do \{y-=x; x++;\} while(y--<0);}A. 8B. 5C. 2D. -4答案:B题型:单选题知识点:第6章循环结构的程序设计难度:212.下列对字符数组str的定义、初始化或赋值语句中,正确的是A. char str[ ]={"Hello Ice!"};B. char str[10]; str={"Hello Ice!"};C. char str[10]; strcpy(str, "Hello Ice!"};D. char str[10]={"Hello Ice!"};答案:A题型:单选题知识点:第7章数组难度:113.{若有定义“int aa[3][3]=\{1,2,3,4,5,6,7,8,9\},i;”,则执行下列语句后的输出结果是 for(i=0;i<3;i++)printf("%d,",a[2-i][i]);}A. 9,5,1,B. 9,4,1C. 7,5,3,D. 7,6,1,答案:C题型:单选题知识点:第7章数组难度:214.C语言中,确定函数返回值类型的是A. 调用该函数时由系统默认B. 调用该函数时的主调函数C. return语句中的表达式D. 定义该函数时指定答案:D题型:单选题知识点:第8章函数难度:115.函数调用语句“fun(x1,x2+x3,(x4,x5));”中包含的实参个数是A. 3B. 4C. 5D. 有语法错误答案:A题型:单选题知识点:第8章函数难度:116.若有定义“int a[5],*p=a;”,则下列选项中,对数组a中元素引用正确的是A. *&a[5]B. *(a+2)C. *(p+5)D. a+2答案:B题型:单选题知识点:第9章指针难度:217.{执行下列语句序列后的输出结果是int arr[ ]=\{1,2,3,4,5\}, *ptr=arr;*(ptr+2)+=2; printf("%d,%d",*ptr,*(ptr+2));}A. 3,5B. 1,3C. 2,4D. 1,5答案:D题型:单选题知识点:第9章指针难度:218.{若有定义“enum color \{red, yellow=2, blue, white, black\} c1;”,则执行语句“printf("%d", c1=white);”后的输出结果是}A. 4B. 3C. 2D. 1答案:A题型:单选题知识点:第10章结构、联合与枚举类型难度:219.当定义一个结构体变量时,系统为它分配的内存空间是A. 结构体中占内存容量最大成员所需内存容量B. 结构体中任意一个成员所需内存容量C. 结构体中各成员所需内存容量之和D. 结构体中第一个成员所需内存容量答案:C题型:单选题知识点:第10章结构、联合与枚举类型难度:220.已知函数调用“fread(buffer, size,count, fp);”,其中fp代表的是A. 一个整数,代表要读入的数据项总数B. 一个文件指针,指向要读的文件C. 一个指针,指向要读入数据的存放地址D. 一个存储区,存放要读的数据项答案:B题型:单选题知识点:第11章文件难度:121.字符串"\"EOF\n=-\61\""的长度是。
2019年C语言期末考试题及答案
1、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。
最大值第三行i<=n五行k+1 2、编写程序求无理数e的值并输出。
计算公式为:e=1+1/1!+1/2!+1/3!+......+1/n!当1/n!<0.000001时e=2.718282。
3、求一批数中最大值和最小值的积。
4、某一正数的值保留2位小数,对第三位进行四舍五入。
5、从键盘上输入任意实数x,求出其所对应的函数值。
z=(x-4)的二次幂(x>4)z=x的八次幂(x>-4)z=z=4/(x*(x+1))(x>-10)z=|x|+20(其他)6、求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面的一个)。
例如:输入的数组为:1 2 34 15 612 18 910 11 2求出的最大数为18,行坐标为2,列坐标为1。
7、求一个n位自然数的各位数字的积。
(n 是小于10的自然数)8、计算n门课程的平均值,计算结果作为函数值返回。
例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。
9、求一批数中小于平均值的数的个数。
10、编写函数判断一个整数m的各位数字之和能否被7整除,可以被7整除则返回1,否则返回0。
调用该函数找出100~200之间满足条件的所有数。
11、请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指一维数组中。
二维数组中的数已在主函数中赋予。
12、编写函数fun用比较法对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果。
13、编写main程序调用函数fact求解从m个元素选n个元素的组合数的个数。
计算公式是:组合数=m!/(n!.(m-n)!)。
2019年C语言考试试题带答案
2019年C语言考试试题带答案1、设int a=2,b;则执行b=a&&1;语句后,b的结果是( )A.0B.1C.2D.32.逗号表达式(a=3*5,a*4),a+15的值是( )A.15B.60C.30D.753. 在以下运算符中,优先级最高的运算符是__________A) , B) [ ] C) && D) +=4. 在C语言中,逻辑值“真”用__________表示。
A) true B) 大于0的数C) 非0的整数D) 非0的数5.C语言中,逻辑“真“等价于( )。
A、大于零的数B、大于零的整数C、非零的数D、非零的整数6.假设在程序中a,b,c均被定义为整型,并且已赋大于1的值,则下列能正确表示代数式1/abc的表达式是( )。
A、1/a*b*cB、1/(a*b*c)C、1/a/b/(float) cD、1.0/a/b/c7、以下标识符中,不能作为合法的C用户定义标识符的是:( )A .a3_b3 B.void C._123 D.abc8.若要表示if( a不等于0 )这一关系式,则能正确表示这一关系的表达式为if (__________)A) a<>0 B) !a C) a=0 D) a9、有以下程序main(){int a,b,d=25;a = d/10 & (-1);b = a && (-1);printf("%d,%d\n",a,b);}程序运行后的输出结果是A 6,1B 2,1C 6,0D 2,010.若定义float a;现要从键盘输入a的数据,其整数位为3位,小数位为2位,则选用()。
A)scanf("%f",&a); B) scanf("%5.2f",a);C) scanf("%6.2f",&a); D) scanf("%f",a);11.下面程序段___x=3;do{y=x--;if(!y){printf("x");continue;}printf("#");}while(1<=x<=2);A) 将输出## B) 将输出##*C) 是死循环 D) 含有不合法的控制表达式12、两次运行下面程序,如果从键盘上分别输入6和4,则程序的输出结果是( )main ( ){int x;scanf(″%d″,&x);if(x++>5) printf(″%d″,x);else printf(″%d\n″,x-1);}A.7和5B.6和3C.7和4D.6和413.合法的数组定义是 ( )A、int a[]="string";B、int a[5]={0,1,2,3,4,5};C、vhst s="string";D、char a[]={0,1,2,3,4,5};14、定义如下变量和数组,则输出结果是( )。
新版精选2019年大学《C语言程序设计》期末完整考试题库500题(含答案)
2019年大学C语言期末考试题库500题含答案一、选择题1.在C语言中,if语句后的一对圆括号中,用以决定分支流程的表达式为()。
A 只能是逻辑表达式 B只能是关系表达式C 只能是逻辑表达式或关系表达式 D可以是任意表达式2.A) 过程 (B) 函数 (C) 子程序 (D) 标识符3.以下函数调用语句中含有()个实参。
func((e1,e2),(e3,e4,e5));4.C) 循环次数不定 (D) 是无限循环5.A) 17 (B) 64 (C) 125 (D) 536.以下程序的输出结果为()。
main( ){ int i=010,j=10,*pi,*pj;pi=&i; pj=&j;printf("%d.%d\n",*pi,*pj);}7.A) 10,10 (B) 8,10 (C) 010,10 (D) 8,88.在下列程序段中,枚举变量 c1,c2 的值依次是(),()。
enum color { red,yellow,blue=4,green,white} c1,c2;c1=yellow; c2=white;printf("%d,%d\n",c1,c2);9.10.设a为整型变量,初值为12,执行完语句 a+=a-=a*a后,a的值是()。
A 552B 144C 264D -26411.以下程序的输出结果是()。
main( ){ int a=011;printf(“%d\n”,++a);}A 12B 11C 10D 912.设有以下定义,则以下对变量w的赋值()是错误的。
enum week{sun,mon=4,tue,wed,thu,fri,sat}w;A w=sun;B w=(enum week)4;C w=san;D w=(enum week)9;13.要打开一个已存在的非空文件“file”用于修改,选择正确的语句()。
A fp=fopen("file","r");B fp=fopen("file","w");C fp=fopen("file","r+");D fp=fopen("file","w+");14.C语言源程序的基本单位是()。
c语言程序期末考试试题及答案
c语言程序期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. staticC. voidD. function答案:C2. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,以下哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A4. 下列哪个选项是正确的C语言注释方式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /* 这是注释 */答案:B5. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. 在C语言中,以下哪个关键字用于定义一个指针?A. intB. charC. floatD. *答案:D7. 在C语言中,以下哪个选项是正确的数组声明方式?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2};D. int arr = {1, 2, 3};答案:A8. 在C语言中,以下哪个选项是正确的条件语句?A. if (condition)B. if (condition) { }C. if (condition) { } else { }D. All of the above答案:D9. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)B. while (condition)C. do { } while (condition);D. All of the above答案:D10. 在C语言中,以下哪个函数用于计算两个数的和?A. printf()B. scanf()C. sum()D. None of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确方式是:`int ____;`答案:变量名2. 要输出一个字符串,应该使用函数:`____`答案:printf3. 要读取一个字符,应该使用函数:`____`答案:scanf4. 在C语言中,数组的索引从____开始。
2019年C语言期末考试试题及答案
2019年C语言期末考试试题及答案1、C语言规定:在一个源程序中,main函数的位置()。
A.必须在最后B.必须在系统调用的库函数的后面。
C.必须在最开始。
D.可以任意2、若有定义:int a = 7; float x = 2.5 , y = 4.7 ; 则表达式x + a % 3 * (int) (x + y) % 2/4 的值是()。
A. 2.750000B. 0.00000C. 3.500000D. 2.5000003.已知ch是字符型变量,下面正确的赋值语句是()。
A.ch = '123' ;B. ch=' \08 ';C. ch =' \xff ';D.ch =" \ ";4. 以下标识符中,不能作为合法的C用户定义标识符的是:___________。
A)a3_b3 B)void C)_123 D)abc5、C语言中,运算对象必须是整型的运算符是__________。
A) % B) / C) %和/ D) *6.不合法的八进制数是________A) 0 B) 028 C) 077 D)017.在C程序中,设一表达式中包含有int,long, unsigned和char类型的变量和数据,则表达式最后的运算结果类型是( )A.intB.charC.unsignedD.long8.对下述程序,正确的判断是()。
main( ){ int a,b;scanf ("%d,%d",&a,&b);if(a>b)a=b; b=a;else a++; b++;printf("%d,%d",a,b);}A. 有语法错误不能通过编译B. 若输入4,5则输出5,6C. 若输入5,4则输出4,5D. 若输入5,4则输出5,59. 语句 for(k=0;k<5;++k){if(k= = 3) continue;printf(“%d”,k);}的输出结果为_________。
C语言程序设计期末考试试题含答案
C语言程序设计期末考试试题含答案一、选择题(每题 3 分,共 30 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC classD char答案:C解析:在 C 语言中,class 不是关键字,int、float 和 char 都是常见的数据类型关键字。
2、以下变量定义中,正确的是()A int a=b=5;B char a='A';C float a=55, b=66;D double a; b;答案:C解析:A 选项中不能在定义时连续赋值;B 选项应该是 char a ='A';注意单引号;D 选项应该是 double a, b; 中间用逗号分隔。
3、以下程序段的输出结果是()```cint a = 5, b = 4, c = 6;if (a > b && a > c)printf("a 最大\n");else if (b > a && b > c)printf("b 最大\n");elseprintf("c 最大\n");```A a 最大B b 最大C c 最大D 编译错误答案:C解析:因为 5 不大于 6,所以执行 else 部分,输出“c 最大”。
4、以下循环语句执行的次数是()```cfor (int i = 0; i < 5; i++){printf("%d ", i);}```A 4 次B 5 次C 6 次D 无限次答案:B解析:从 0 到 4 ,一共 5 次。
5、以下数组定义中,正确的是()A int a5 ={1, 2, 3, 4, 5, 6};B int a ={1, 2, 3};C int a5 ={1, 2};D int a3 =(1, 2, 3);答案:B解析:A 选项数组长度为 5,却初始化了 6 个元素;C 选项只初始化了前两个元素,后面三个元素默认为 0;D 选项初始化方式错误,应该用花括号。
2019级大学C语言期末考试模拟练习题(带详解答案)
一、单项选择题1.(A)是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。
A) 程序中第一条可执行语句B) 程序中第一个函数C) 程序中的main函数D) 包含文件中的第一个函数3、以下说法中正确的是(C)。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是(B)。
A) C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写。
C) C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行5.下列正确的标识符是(C)。
A.-a1B.a[i]C.a2_iD.int t5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。
A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。
A)%x B)a+b C)a123 D)123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。
A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。
c语言期末考试题及答案详解
c语言期末考试题及答案详解C语言期末考试题及答案详解一、选择题(每题2分,共20分)1. 下列哪个关键字用于定义C语言的函数?A. classB. functionC. voidD. int答案:D2. C语言中,哪个运算符用于取模?A. /B. %C. *D. -答案:B3. 在C语言中,哪个关键字用于声明一个变量为静态存储类别?A. staticB. autoC. registerD. extern答案:A4. 下列哪个不是C语言的控制语句?A. ifB. switchC. forD. loop答案:D5. 在C语言中,哪个函数用于将整数转换为字符串?A. atoiB. itoaC. atolD. tolower答案:B6. C语言中,哪个函数用于计算两个数的绝对值?A. fabsB. absC. fmodD. pow答案:B7. 在C语言中,哪个关键字用于声明一个函数的返回类型?A. returnB. typeC. valueD. type_of答案:A8. 下列哪个不是C语言的数组类型?A. intB. charC. floatD. string答案:D9. C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. class答案:A10. 在C语言中,哪个函数用于打开一个文件?A. fopenB. fcloseC. freadD. fwrite答案:A二、填空题(每空2分,共20分)1. C语言中,一个完整的程序至少包含一个________函数。
答案:main2. 定义一个字符数组char str[10],使用________运算符可以给数组赋值。
答案:=3. 在C语言中,使用________关键字可以进行条件判断。
答案:if4. 一个C语言程序在编译时,首先会被预处理器处理,其中________指令用于包含头文件。
答案:#include5. C语言中,使用________函数可以输出格式化的字符串。
c语言题库及详解答案2019年版
c语言题库及详解答案2019年版在编写C语言题库及详解答案2019年版的内容时,我们需要确保题目覆盖了C语言的各个方面,包括基础语法、数据结构、指针、数组、函数、预处理指令、文件操作等。
以下是根据标题编写的题库内容:1. C语言基础1.1 写出C语言的基本数据类型及其取值范围。
1.2 解释C语言中的变量声明和初始化。
1.3 描述C语言中的运算符及其优先级。
2. 控制结构2.1 编写一个程序,使用if-else语句计算并输出两个整数的较大值。
2.2 描述循环语句(for、while、do-while)的用法,并给出一个使用每种循环的示例程序。
2.3 编写一个程序,使用switch语句根据输入的月份输出该月的天数。
3. 数组与字符串3.1 编写一个程序,实现对整型数组的排序。
3.2 解释字符串在C语言中的表示和操作。
3.3 编写一个程序,实现字符串的复制、连接、比较和长度计算。
4. 函数4.1 编写一个函数,实现两个整数的交换。
4.2 描述函数的递归调用,并给出一个使用递归的示例程序。
4.3 编写一个程序,使用函数实现学生成绩的统计和平均分计算。
5. 指针5.1 解释指针的概念及其在C语言中的应用。
5.2 编写一个程序,使用指针实现数组元素的逆序。
5.3 描述指针与数组的关系,并给出一个使用指针操作数组的示例。
6. 结构体与联合体6.1 编写一个程序,使用结构体定义学生信息,并实现学生信息的输入和输出。
6.2 解释联合体的概念,并给出一个使用联合体的示例程序。
7. 预处理指令7.1 描述预处理指令(#define、#include、#ifdef等)的用法。
7.2 编写一个使用宏定义的程序,实现数学表达式的计算。
8. 文件操作8.1 描述文件的打开、读写和关闭操作。
8.2 编写一个程序,实现文件的读取和写入操作。
9. 动态内存分配9.1 解释动态内存分配的概念及其在C语言中的应用。
9.2 编写一个程序,使用动态内存分配实现一个简单的内存管理器。
2019年C语言期末考试题及答案
2019年C语言期末考试题及答案1、已知ch是字符型变量,下面不正确的赋值语句是()。
A.ch = 5 + 9 ;B.ch= ' a + b ';C. ch = ' \ 0 ';D. ch= '7' + '6' ;2.为表示数学关系x≥y≥z,正确的C语言表达式是__________。
A) (x>=y)&&(y>=z) B) (x>=y)AND(y>=z)C) (x>=y>=z) D) (x>=y)&(y>=z)3.设int m=1,n=2;则++m= =n的结果是()A、0B、1C、2D、34.C语言中基本的数据类型包括__________。
A) 整型、实型、逻辑型 B) 整型、实型、字符型C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型5. 若定义int x=7,y=5,z;则表达式:z=x+5/2*y的值是__________A) 7 B) 7.5 C) 17 D) 19.56.以下说法中正确的是()A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分7.C语言中,int类型数据占2个字节,则long类型数据占()A、1个字节B、2 个字节C、3个字节D、4个字节8.设有程序段int k = 10 ;while ( k = 0 ) k = k - 1 ;以下描述正确的是()。
A. 循环体语句一次也不执行。
B. 循环是无限循环。
C. while 循环语句执行十次。
D. 循环体语句执行一次。
9.以下程序main(){int i=010,j=10,k=0x10;printf("%d,%d,%d\n",i,j,k);}有语法错误不能通过编译输出结果是( )A.8,10,16B.8,10,10C.10,10,10D.10,10,1610.以下程序的输出结果是__________void main(){ int x=10,y=10;printf(“%d %d\n”,x--,--y);}A) 10 10 B) 9 9 C) 9 10 D) 10 911.表达式__________是满足:当c的值为1、3、5三个数中任意一个时值为“真”,否则值为“假”的表达式A) (c=1)||(c=3)||(c=5) B) (c!=1)&&(c!=3)&&(c!=5)C) (c==1)&&(c==3)&&(c=5) D) (c==1)||(c==3)||(c==5)12.以下程序中,while循环的循环次数是( )。
2019-北京理工大学-成教-《C语言程序设计》期末测试卷 (3)
[试题分类]:C语言程序设计1.下列选项中,不属于C语言特点的是A. 能实现汇编语言的大部分功能B. 语言简洁、紧凑、使用方便C. 数据类型丰富,可移植性好D. 有较强的网络操作功能答案:D题型:单选题知识点:第2章 C语言概述难度:12.下列选项中,正确的C语言标识符是A. \nB. %dC. _123D. #define答案:C题型:单选题知识点:第2章 C语言概述难度:13.在C语言中,错误的int类型常数是A. 0B. 038C. 0xAFD. 32765答案:B题型:单选题知识点:第3章数据类型与运算规则难度:14.若有定义“int x=5,y=5,z=5;”,执行语句“x%=y+z;”后,x的值是A. 6B. 5C. 1D. 0答案:B题型:单选题知识点:第3章数据类型与运算规则难度:25.若有定义“int x=3,y=4,z=5;”,则下列表达式中值不为1的是A. 'x'&&'y'B. x<=yC. x||y+z&&y-zD. !((x<y)&&!z||1)答案:D题型:单选题知识点:第3章数据类型与运算规则难度:26.逗号表达式“(a=3*5,a*4),a+15”的值是A. 15B. 60C. 30D. 不确定答案:C题型:单选题知识点:第3章数据类型与运算规则难度:27.若有定义“int i=1,j=2,k=3;”,则执行下列语句后的输出结果是if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k);A. 1 2 3B. 2 3 4C. 2 2 3D. 2 3 3答案:D题型:单选题知识点:第5章选择结构的程序设计难度:28.{若有定义“int x=1,y=1,m=1,n=0;”,则执行下列语句后,变量x和y的值分别是 switch (m) \{case 0: x=x*2;case 1:switch (n) \{case 1: x=x*2;case 2: y=y*2; break;default: x++;\}case 2: x++; y++;case 3: x*=2; y*=2; break;default: x++;y++;\}}A. x=6,y=4B. x=2,y=1C. x=3,y=2D. x=7,y=5答案:A题型:单选题知识点:第5章选择结构的程序设计难度:29.语句序列“int i,j; for (i=0, j=1; i<=j+1; i+=2,j--) printf ("%d\n",i);”执行后i的值是A. 3B. 2C. 1D. 0答案:B题型:单选题知识点:第6章循环结构的程序设计难度:210.若有定义“int n=4;”,则执行语句“while(n--) printf("%d",--n);”后的输出结果是A. 20B. 31C. 210D. 321答案:A题型:单选题知识点:第6章循环结构的程序设计难度:211.{若有定义“int x=3;”,则执行下列语句后的输出结果是do \{printf("%d ",x-=2);\} while(!(--x));}A. 1B. 3 0C. 1 -2D. 死循环答案:C题型:单选题知识点:第6章循环结构的程序设计难度:212.下列关于数组定义、初始化或赋值语句中,正确的是A. int x[5]={1,2,3,4,5,6};B. int n=8; int score[n];C. int a[8]; a[8]=100;D. int x[]={1,2,3,4,5,6};答案:D题型:单选题知识点:第7章数组难度:113.{若有定义“int a[3][3]=\{0,1,2,0,1,2,0,1,2\}, i,j,s=0;”,则执行下列语句后,变量s的值是for(i=0;i<3;i++)for(j=i;j<=i;j++)s=s+a[i][a[j][j]];}A. 9B. 4C. 3D. 1答案:C题型:单选题难度:214.C语言程序中,调用函数时A. 实参和形参共用一个存储空间B. 实参和形参各自占用一个独立的存储空间C. 由用户指定实参和形参是否共用存储空间D. 由系统指定实参和形参是否共用存储空间答案:B题型:单选题知识点:第8章函数难度:115.下述函数首部定义形式正确的是A. int f(int x,y)B. int f(int x; int y)C. int f(x,y: int)D. int f(int x, int y)答案:D题型:单选题知识点:第8章函数难度:116.若p1和p2为指向同一字符串的指针变量,c为字符变量,则下列语句中,不能正确执行的是A. p2=cB. c=*p2C. p1=p2D. c=*p1+*p2;答案:A题型:单选题难度:217.{下列函数的功能是fun(char *p2, char *p1) \{while((*p2=*p1)!='\0') \{p1++; p2++;\}\}}A. 将p1所指字符串的地址赋值给指针p2B. 检查p1和p2所指字符串中是否有'\0'C. 对p1和p2两个指针所指字符串进行比较D. 将p1所指字符串复制到p2所指内存空间答案:D题型:单选题知识点:第9章指针难度:218.下列程序段中,枚举变量c1和c2的值分别是enum color {red, yellow, blue=4, green, white}; enum color c1=yellow, c2=white;A. 2,6B. 1,6C. 2,5D. 2,4答案:B题型:单选题知识点:第10章结构、联合与枚举类型难度:219.{若有如下定义:struct student\{int num; int age;\} data , *p=&data;则下列选项中,引用data中成员num正确的是}A. (*p).data.numB. p->data.aC. p.data.aD. (*p).a答案:D题型:单选题知识点:第10章结构、联合与枚举类型难度:220.C语言中,对文件进行存取的基本单位是A. 记录B. 字节C. 元素D. 簇答案:B题型:单选题知识点:第11章文件难度:121.若y是int型变量,则判断y为奇数的关系表达式为__________。
c语言期末考试卷答案
试卷编号:451所属语言:C语言试卷方案:2019-2020(2)C语言期中考试试卷总分:100分共有题型:4种一、判断共25题(共计25分)第1题(1.0分)题号:1114 难度:中第1章在C语言程序设计中,"/*"和"*/"之间的内容是C语言的注释.答案:Y第2题(1.0分)题号:1115 难度:易第1章c程序总是从程序的第一条语句开始执行.答案:N第3题(1.0分)题号:1152 难度:中第2章int k=8567;printf("|%-6d|\n",k);的输出为|008567|.答案:N第4题(1.0分)题号:1132 难度:中第2章C程序中的关键字必须小写,其他标识符不区分大小写.答案:N第5题(1.0分)题号:1174 难度:中第3章在C程序中,赋值运算符的优先级最低.答案:N第6题(1.0分)题号:1168 难度:中第3章若 a=3,b=2,c=1 则关系表达式"(a>b)==c" 的值为"真".答案:Y第7题(1.0分)题号:1164 难度:中第3章7&3+12的值是15.答案:N第8题(1.0分)题号:1173 难度:中第3章在C程序中,逗号运算符的优先级最低.答案:Y第9题(1.0分)题号:1172 难度:中第3章关系运算符<= 与 == 的优先级相同.答案:N第10题(1.0分)题号:1184 难度:中第4章设x、t均为int型变量,则执行语句"x=10;t=x&&x<=10;"后,t的值为1.答案:Y第11题(1.0分)题号:1181 难度:中第4章若a是实型变量,C程序中允许以下赋值a=10;因此,实型变量中允许存放整型数据. 答案:N第12题(1.0分)题号:1179 难度:中第4章若a和b的类型相同,在执行了a=b;后,b中的值将丢失.答案:N第13题(1.0分)题号:1178 难度:中第4章x*=y+8 等价于 x=x*(y+8).答案:Y第14题(1.0分)题号:1180 难度:中第4章若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变. 答案:Y第15题(1.0分)题号:1182 难度:中第4章若a是实型变量,在执行了a=5;后,a将变为整型变量.答案:N第16题(1.0分)题号:1185 难度:中第4章设x、t均为int型变量,则执行语句"x=10;t=x&&x>10;"后,t的值为0.答案:Y第17题(1.0分)题号:1186 难度:中第4章在C程序中,j++;是一条赋值语句.答案:Y第18题(1.0分)题号:1197 难度:中第5章与 if(E) 语句中的(E)等价的表达式是 (E==0).答案:N第19题(1.0分)题号:1187 难度:中第5章C语言的if语句嵌套时,if与else的匹配关系是每个else与if的匹配是任意的. 答案:N第20题(1.0分)题号:1198 难度:中第5章在C语言中,逻辑"真"等价于不等于0的数.答案:Y第21题(1.0分)题号:1189 难度:中第5章if后面的控制表达式可以不用括号括起来.答案:N第22题(1.0分)题号:1194 难度:中第5章int i=3,j=5; if(i>j);是正确的.答案:Y第23题(1.0分)题号:1190 难度:中第5章if语句后面的控制表达式只能使用关系表达式或逻辑表达式.答案:N第24题(1.0分)题号:1201 难度:中第5章开关语句switch最多可形成三个分支.答案:N第25题(1.0分)题号:1200 难度:中第5章int i=20;switch(i/10){case 2:printf("A");case 1:printf("B");}的输出结果为A.答案:N二、单选共25题(共计25分)第1题(1.0分)题号:6170 难度:中第1章C语言程序的基本单位是().A:函数B:过程C:子程序D:子例程答案:A第2题(1.0分)题号:5214 难度:中第1章一个C语言程序是由().A:一个主程序和若干子程序组成B:函数组成C:若干过程组成D:若干子程序组成答案:B第3题(1.0分)题号:5284 难度:中第2章若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97), 则以下程序段的执行结果是().ch='a'; k=12; printf("%x,%o,",ch,ch,k); printf("k=%%d\n",k);A:因变量类型与格式描述符的类型不匹配,输出无定值B:输出项与格式描述符个数不符,输出为零值或不定值C:61,141,k=%dD:61,141,k=%12答案:C第4题(1.0分)题号:5232 难度:中第2章C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符().A:必须为字母B:必须为下划线C:必须为字母或下划线D:可以是字母,数字和下划线中任一字符答案:C第5题(1.0分)题号:5343 难度:中第3章若给定条件表达式(M)?(a++):(a--),则其中表达式M().A:和(M==0)等价B:和(M==1)等价C:和(M!=0)等价D:和(M!=1)等价答案:C第6题(1.0分)题号:6234 难度:中第3章语句printf("%d",(a=2)&&(b=-2));的输出结果是().A:无输出B:结果不确定C:-1D:1答案:D第7题(1.0分)题号:5301 难度:中第3章C语言能正确处理的指数是().A:8.5e4288B:e-32C:123000000000D:4.5e-5.6答案:C第8题(1.0分)题号:5350 难度:中第3章下列运算符中优先级最高的是().A:<B:+C:&&D:!=答案:B第9题(1.0分)题号:5304 难度:中第3章逻辑运算符两侧运算对象的数据类型().A:只能是0或1B:只能是0或非0正数C:只能是整型或字符型数据D:可以是任何类型的数据答案:D第10题(1.0分)题号:5384 难度:中第4章以下不符合C语言语法的赋值语句是().A:j++;B:j=j=5;C:k=2*4,k*4;D:y=float(j);答案:D第11题(1.0分)题号:5374 难度:中第4章若有以下定义:char s='\092'; 则该语句().A:使s的值包含1个字符B:定义不合法,s的值不确定C:使s的值包含4个字符D:使s的值包含3个字符答案:B第12题(1.0分)题号:5380 难度:中第4章先用语句定义字符型变量c,然后要将字符a赋给c,则下列语句中正确的是(). A:c='a';B:c="a";C:c="97";D:C='97'答案:A第13题(1.0分)题号:6244 难度:中第4章能正确表示a和b同时为正或同时为负的逻辑表达式是().A:(a>=0||b>=0)&& (a<0||b<=0)B:(a>=0&&b>=0)&& (a<0&&b<=0)C:(a+b>0)&& (a+b<=0)D:a * b >0答案:D第14题(1.0分)题号:5379 难度:中第4章下列语句的结果是().main(){ int j;j=3;printf("%d,",++j);printf("%d",j++);}A:3,3B:3,4C:4,3D:4,4答案:D第15题(1.0分)题号:6246 难度:中第4章下列关于switch语句和break语句的结论中,正确的是().A:break语句是switch语句中的一部分B:在switch语句中可以根据需要使用或不使用break语句C:在switch语句中必须使用break语句D:break语句只能用于switch语句中答案:B第16题(1.0分)题号:6251 难度:中第4章有一函数如图: ,以下程序段中不能根据x值正确计算出y值的是().A:if(x >0) y =1;else if(x = =0) y =0;else y = -1;B:y =0;if(x >0) y =1;else if (x <0) y = -1;C:y=0;if(x > =0)if(x >0) y =1;else y =-1;D:if(x > =0)if(x >0) y =1;else y =0;else y = -1;答案:C第17题(1.0分)题号:5370 难度:中第4章若变量均已正确定义并赋值,以下合法的C语言赋值语句是().A:x=n/2.5;B:x==5;C:x+n=I;D:5=x=4+1;答案:A第18题(1.0分)题号:5400 难度:中第5章int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为().A:1B:2C:3D:不一定答案:A第19题(1.0分)题号:5401 难度:中第5章int a=1,b=2,c=3;if(a>c)b=a;a=c;c=b;则c的值为().A:1B:2C:3D:不一定答案:B第20题(1.0分)题号:6274 难度:中第5章有以下程序段:int k=0;while(k=1)k++;while循环执行的次数是().A:无限次B:有语法错误,不能执行C:一次也不执行D:执行一次答案:A第21题(1.0分)题号:6275 难度:中第5章以下程序中,while循环的循环次数是().#include<stdio.h>void main(){ int i=0;while(i<10){ if(i<1) continue;if(i= =5) break;i++; }……}A:1B:10C:6D:死循环,不能确定次数答案:D第22题(1.0分)题号:5407 难度:中第5章在C语言中,if语句后的一对原括号中,用以决定分支的流程的表达式().A:只能用逻辑表达式B:只能用关系表达式C:只能用逻辑表达式或关系表达式D:可用任意表达式答案:D第23题(1.0分)题号:6256 难度:中第5章下列程序执行后的输出结果是().void main(){ int k=5;while(--k) printf("%d",k-=3);printf("\n"); }A:1B:2C:4D:死循环答案:A第24题(1.0分)题号:5408 难度:中第5章执行下列语句后的输出为().int j=-1;if(j<=1) printf("****\n");else printf("%%%%\n");A:****B:%%%%C:%%%%cD:有错,执行不正确答案:A第25题(1.0分)题号:6268 难度:中第5章在while(x)语句中的x与下面条件表达式等价的是().A:x= =0B:x= =1C:x!=1D:x!=0答案:D三、程序填空共3题(共计30分)第1题(10.0分)题号:961 难度:中第3章/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目:给定程序的功能是:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:圆面积公式为: 2,在程序中定义的变量名要与公式的变量相同)。
c语言期末考试试题及答案
c语言期末考试试题及答案考试题目一:填空题(共15空)1. C语言是一种_________型的编程语言。
2. 在C语言中,用来表示“或”的运算符是______。
3. 在C语言中,用于定义宏的关键字是______。
4. 函数调用时,参数的传递方式是______传递。
5. 在C语言中,表示真值的关键字是______。
6. 在使用scanf函数读取字符时,可以使用______修饰符。
7. 在C语言中,用于循环控制的关键字是______。
8. C语言中,数据类型的长度由______决定。
9. 在C语言中,用于将浮点数转换为整数的函数是______。
10. C语言中的结构体可以包含不同______类型的成员。
11. 在使用printf函数进行格式化输出时,%d用来输出______类型的数据。
12. 在C语言中,用于断开当前循环并开始下一次循环的关键字是______。
13. 在C语言中,用于定义常量的关键字是______。
14. C语言中,用于定义无符号整型变量的关键字是______。
15. 使用指针变量时,可以通过______操作符获得指针所指向的地址的值。
答案:1. 结构化2. ||3. #define4. 值5. true6. %c7. for8. 编译器9. ceil10. 数据11. 整数12. continue13. const14. unsigned15. *(星号)考试题目二:判断题(共10题)1. C语言是一种面向对象的编程语言。
(×)2. 在C语言中,数组的下标从0开始。
(√)3. C语言中,变量的作用域可以超出其声明的块。
(×)4. 在C语言中,可以通过malloc函数为变量分配动态内存。
(√)5. 在C语言中,switch语句可以用来实现嵌套循环。
(×)6. C语言只支持单继承。
(×)7. 在C语言中,函数可以有多个返回值。
(×)8. C语言中,使用void*类型指针可以指向任意类型的数据。
2019c语言期末考试题及答案
2019c语言期末考试题及答案一、选择题(每题2分,共20分)1. 下列哪个是C语言的关键字?A. intB. IntegerC. StringD. float答案:A2. C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A3. 在C语言中,以下哪个语句用于定义一个整型变量?A. int var;B. float var;C. double var;D. char var;答案:A4. 下列哪个是C语言中的控制语句?A. ifB. whileC. do-whileD. All of the above答案:D5. 在C语言中,数组的索引从哪个数字开始?A. 0B. 1C. -1D. 随机数答案:A6. C语言中,哪个函数用于输入?A. printf()B. scanf()C. getchar()D. puts()答案:B7. 下列哪个是C语言的输入输出库?A. <iostream>B. <stdio.h>C. <iostream.h>D. <cstdio>答案:B8. 在C语言中,哪个关键字用于定义函数?A. functionB. defC. voidD. int答案:D9. 下列哪个是C语言中的字符串类型?A. stringB. charC. strD. text答案:B10. C语言中,哪个关键字用于定义常量?A. constB. finalC. staticD. variable答案:A二、填空题(每空2分,共20分)1. C语言中,定义一个字符变量可以使用关键字________。
答案:char2. 一个完整的C程序至少包含一个________函数。
答案:main3. 在C语言中,使用________函数可以输出格式化的字符串。
答案:printf4. 一个C语言程序的执行从________函数开始。
答案:main5. C语言中,数组的元素可以通过________访问。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。
最大值第三行i<=n五行k+1 2、编写程序求无理数e的值并输出。
计算公式为:e=1+1/1!+1/2!+1/3!+......+1/n!当1/n!<0.000001时e=2.718282。
3、求一批数中最大值和最小值的积。
4、某一正数的值保留2位小数,对第三位进行四舍五入。
5、从键盘上输入任意实数x,求出其所对应的函数值。
z=(x-4)的二次幂(x>4)z=x的八次幂(x>-4)z=z=4/(x*(x+1))(x>-10)z=|x|+20(其他)6、求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面的一个)。
例如:输入的数组为:1 2 34 15 612 18 910 11 2求出的最大数为18,行坐标为2,列坐标为1。
7、求一个n位自然数的各位数字的积。
(n 是小于10的自然数)8、计算n门课程的平均值,计算结果作为函数值返回。
例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。
9、求一批数中小于平均值的数的个数。
10、编写函数判断一个整数m 的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。
调用该函数找出 100~200之间满足条件的所有数。
11、请编一个函数void fun(int tt[M][N],int pp[N]), tt 指向一个M 行N 列的二维数组,求出二维数组每列 中最大元素,并依次放入pp 所指一维数组中。
二维数组中的数已在主函数中赋予。
12、编写函数fun 用比较法对主程序中用户输入的具有10 个数据的数组a 按由大到小排序,并在主程序中输出排序结果。
13、编写main 程序调用函数fact 求解从m 个元素选n 个元素的组合数的个数。
计算公式是:组合数=m!/(n!.(m-n)!)。
要求:m 不能小于n ,否则应有容错处理。
说明:函数fact(x)的功能是求x!。
14、找出一批正整数中的最大的偶数。
15、实现两个整数的交换。
例如:给a 和b 分别输入:60和65,输入为:a=65 b=6016、将字符串中的小写字母转换为对应的大写字母, 其它字符不变。
17、求一个四位数的各位数字的立方和。
18、求一组数中大于平均值的数的个数。
例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函 数值为3。
19、对任意输入的 x ,用下式计算并输出 y 的值。
5 x<10 y= 0 x=10 -5 x>1020、求给定正整数m以内的素数之和。
例如:当m=20时,函数值为77。
21、判断整数x是否是同构数。
若是同构数,函数返回1;否则返回0。
x的值由主函数从键盘读入,要求不大于100。
22、用函数求N个[10,60]上的整数中能被5整除的最大的数,存在则返回这个最大值,如果不存在则返回0。
23、编写函数fun求sum=d+dd+ddd+……+dd...d(n个d),其中d为1-9的数字。
例如:3+33+333+3333+33333(此时d=3,n=5),d和n在主函数中输入。
24、编写函数fun将一个数组中的值按逆序存放,并在main()函数中输出。
例如:原来存顺序为8,6,5,4,1。
要求改为:1,4,5,6,8。
25、对长度为8个字符的字符串,将8个字符按降序排列。
例如:原来的字符串为CEAedcab,排序后输出为edcbaECA26、根据整型参数n,计算如图公式的值。
27、键盘上输入一个3行3列矩阵的各个元素的值(为整数)然后输出主对角线元素的积,并在fun()函数中输出。
28、编写函数fun(str,i,n),从字符串str中删除第i个字符开始的连续n个字符(注意:str[0]代表字符串的第一个字符)。
29、统计出若干个学生的平均成绩,最高分以及得最高分的人数。
例如:输入10名学生的成绩分别为92,87,68,56,92, 84,67,75,92,66,则输出平均成绩为77.9,最高分为92,得最高分的人数为3人。
30、编写程序,实现矩阵(3行3列)的转置(即行列互换)31、用函数实现字符串的复制, 不允许用strcpy()函数。
32、从键盘为一维整型数组输入10个整数,调用fun 函数找出其中最小的数,并在main 函数中输出。
请编写fun 函数。
33、用do-while 语句求1~100的累计和34、编写函数求1~100中奇数的平方和。
结果为16665035、计算并输出给定整数的所有因子之积(包括自身)。
规定这个整数的值不大于50。
36、求1到100之间的偶数之积37、编写函数求表达式的和(n 的值由主函数输入)。
1-1/2+1/3-1/4+......+1/m38、产生20个[30,120]上的随机整数放入二维数组a[5][4]中, 求其中的最小值。
39、能计算从1开始到n 的自然数的和,n 由键盘输入,并在main()函数中输出。
当N 为偶第三行i=2i=i+2第四行i*i41、计算出k 以内最大的10个能被13或17整除的自然数之和。
(k 〈3000)42、判断一个整数w 的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
43、从低位开始取出长整型变量s奇数位上的数,依次构成一个新数放在t中。
例如:当s中的数为:7654321时,t中的数为:7531。
如果为642,在第二行加,s/=10;44、求大于lim(lim小于100的整数)并且小于100的所有素数并放在aa数组中,该函数返回所求出素数的个数。
45、求一批数中最大值和最小值的差如为积将-改*46、求出菲波那契数列的前一项与后一项之比的极限的近似值。
例如:当误差为0.0001时,函数值为0.618056。
47、将两个两位数的正整数a、b合并形成一个整数放在c 中。
合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上, b数的十位和个位数依次放在c数的十位和千位上。
例如:当a=45,b=12,调用该函数后,c=2514。
答案;48、编写函数判断一个整数m的各位数字之和能否被7整除,可以被7整除则返回1,否则返回0。
调用该函数找出100~200之间满足条件的所有数。
49、判断m是否为素数50、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。
51、求出二维数组周边元素之和,作为函数值返回。
二维数组的值在主函数中赋予。
52、编写函数实现两个数据的交换,在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序。
53、编写函数判断一个整数能否同时被3和5整除,若能则返回值为1,否则为0。
调用该函数求出15~300之间能同时被3和5整除的数的个数。
54、编写函数fun,求任一整数m的n次方55、从键盘输入一个大于3的整数,调用函数fun判断其是否素数,然后在main函数中输出相应的结论信息。
例如:7是素数,8不是素数。
请编写fun函数。
素数是仅能被1和自身整除的数56、用辗转相除法求两个整数的最大公约数57、求一批数中小于平均值的数的个数58、编写函数用选择排序法对数组中的数据进行从小到大的排序。
59、从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出。
60、将从键盘上输入的每个单词的第一个字母转换为大写字母,输入时各单词必须用空格隔开,用’.’结束输入61、编写函数fun求1!+2!+3!+ …… +n!的和,在main函数中由键盘输入n值,并输出运算结果。
请编写fun函数。
例如:若n值为5,则结果为15362、根据整型形参m,计算如下公式的值:y=sin(m)*10。
例如:若m=9,则应输出:4.12118563、求一个大于10的n位整数的后n-1位的数,并作为函数值返回。
64、求给定正整数m以内的素数之和。
例如:当m=20时,函数值为77。
65、求给定正整数n以内的素数之积。
(n<28)66、求一个给定字符串中的字母的个数。
68、编写程序, 求矩阵(3行3列)与2的乘积例如:输入下面的矩阵:100 200 300400 500 600700 800 900程序输出:200 400 600800 1000 12001400 1600 180069、编写函数fun用比较法对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果。
70、编写函数fun计算下列分段函数的值:x^2+x+6 x<0且x≠-3f(x)= x^2-5x+6 0≤x<10且x≠2及x≠3x^2-x-1 其它71、用函数将第2个串连接到第1个串之后,不允许使用 strcat函数。
72、求一组数中大于平均值的数的个数。
例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3。
73、编写函数用冒泡排序法对数组中的数据进行从小到大的排序。
74、将两个两位数的正整数a、b合并形成一个整数放在c中。
合并的方式是:将a数的十位和个位数依次放在 c数的千位和十位上, b数的十位和个位数依次放在 c数的个位和百位上。
例如:当a=45,b=12。
调用该函数后,c=4251。
75、对某一正数的值保留2位小数,并对第三位进行四舍五入。
79、找出一个大于给定整数且紧随这个整数的素数,并作为函数值返回。
80、用函数求fibonacci数列前n项的和。
说明:fibonacci数列为数列的第一项值为1,第二项值也为1,从第三项开始,每一项均为其前面相邻两项和。
例如:当n=28时,运行结果:83203981、删除所有值为y的元素。
数组元素中的值和y的值由主函数通过键盘输入82功能:求一分数序列2/1,3/2,5/3,8/5,13/8,21/13…的前n项之和。
说明:每一分数的分母是前两项的分母之和,每一分数的分子是前两项的分子之和例如:求前20项之和的值为32.660259。
int i;float f1=1,f2=1,f3,s=0;for(i=1;i<=n;i++){f3=f1+f2;f1=f2;f2=f3;s=s=f2/f1;}return s;83功能:从键盘上输入任意实数,求出其所对应的函数值。
z=e的x次幂(x>10)z=log(x+3) (x>-3)z=sin(x)/((cos(x)+4)答案:double z;If(x>10)z=log(x+3)else if(x > -3)z=log(x+3);else z=sin(x)/(cos(x)+4);return(z);84题目:用函数求一个N阶方阵右下三角元素的和(包括副对角线上的元素)。