《C语言程序设计》课程具有语言简洁、类型丰富、结构完整、表达力强等特点,已成为举世公认的高效简洁的软硬件编程语言之一。通过融合OBE+BOPPPS教学理念,坚持将现代信息技术用到教学第一线,注重以学生为主体,教师作为辅助,充分发挥其引导作用,提升学生的编程思维能力,激发学生的学习主动性。
中国消防救援学院C语言程序设计(2025春)练习题答案
第1章 最简单的C语言程序
- 下面关于C语言的叙述中,正确的是() A 每行只能写一条语句 B 程序中必须包含有输入语句 C m…
- 下面关于C语言的叙述中,错误的是() A 若一条语句较长,也可分写在下一行上 B 构成C语言源程序…
- 关于C语言数据类型的叙述,正确的是() A 枚举类型不是基本类型 B 数组不是构造类型 C 变量…
- C程序中main函数的位置() A 必须在最开始 B 必须在系统库函数后面 C 可以在自定义函数后面…
- C语言的函数体由()括起来 A ( ) B { } C [ ] D /* */
- 关于C语言的叙述中,不正确的是() A C程序可由一个或多个函数组成 B C程序必须包含一个main()…
- 一个程序的执行是从() A 本程序的第一个函数开始,到最后一个函数结束 B 本程序的main函数开…
第2章 算法——程序的灵魂
- 结构化程序设计的三种基本结构是() A 函数结构、分支结构、判断结构 B 函数结构、嵌套结构、…
- 调试程序是指对程序进行() A 编辑 B 编译 C 查错和排错 D 连接
- C语言中,复合语句的构成是将一系列语句置于() A begin与end之间 B 一对圆括号“( )”之间 C…
- 构成C语言源程序的基本单位是() A 语句 B 过程 C 表达式 D 函数
第3章 最简单的C程序设计——顺序程序设计
- 在C语言中,正确的用户标识符是() A 3f B _for C struct D _f.5
- C语言的基本数据类型包括() A 整型、实型、字符型 B 整型、实型、字符型、逻辑型 C 整型、…
- 以下()是正确的常量 A E-5 B 1E5.1 C ‘a12’ D 32766L
- 以下()是正确的变量名 A a.bee B –p11 C int D p_11
- 以下()是正确的字符常量 A “c” B ‘//” C ‘W’ D “32a”
- 以下()是不正确的字符串常量 A ‘abc’ B “12’12” C “0” D “ “…
- C语言的整型数据在内存中的存储形式是() A 原码 B 反码 C 补码 D ASCII码…
- 下列不属于C语言关键字的是() A continue B integer C static D signed
- 在C语言中,变量所分配的内存空间大小是() A 由变量的类型决定 B 由用户自己决定 C 任意的 …
- 若有定义:int a=2;则正确的赋值表达式是() A a-=(a*3) B double(-1) C a*3 D a*4=3…
- 语句x=(a=3,b=++a);运行后,x、a、b的值依次为() A 3,3,4 B 4,4,3 C 4,4,4 D 3,4,3…
- 语句a=(3/4)+3%2;运行后,a的值为() A 0 B 1 C 2 D 3
- 以下四项中,符合C语言语法的语句是() A int a+b=c; B int a=12:b=12:c=12; C int a=12, b=…
- 若有定义:int x,a;则语句x=(a=3,a+1);运行后,x、a的值依次为() A 3,3 B 4,4 C 4,3 D 3,4…
- 若变量已正确定义并赋值,符合C语言语法的表达式是() A a=8+b+c,a++ B a=3a C int(12.3%4) …
- 若有定义:int a,b;double x;则以下不符合C语言语法的表达式是() A x%(-3) B a+=-1 C a=b=2…
- 若有定义:int x;则语句x=(2*3)+6%5;运行后,x的值是() A 8 B 7 C 6 D 5
- 若有定义:int x=5,y=6;则表达式x=(y==6)的值为() A 5 B 1 C 6 D 0
- 下面叙述正确的是() A 2/3与2.0/3.0等价 B (int)2.0/3与2/3等价 C ++5与6等价 D ‘A’与…
- 下面叙述中,错误的是() A C语言基本的算术运算符不包含模运算符”%” B 算术运算符的优先级…
- 若有定义:int i=1,j=5;则表达式(++j)*(i--)的值为() A 1 B 0 C 6 D 7
- 设整型变量a为5,使b不为2的表达式是() A b=(++a)/3 B b=6-(--a) C b=a%2 D b=a/2 …
- 若有定义:int i,j;则表达式(i=2,j=5,i++,i+j++)的值是() A 7 B 8 C 9 D 10
- 若有定义:int a,b;则表达式(a=2,b=5,a*2,b++,a+b)的值是() A 7 B 8 C 9 D 10 …
- 若有定义:int i=2,j=5;则表达式(i+1,j+1,(++i+(j--)))的值为() A 8 B 6 C 7 D 5…
- 若已定义:int i=3,k;则语句k=(i--)+(i--);运行后k的值为() A 4 B 5 C 6 D 7…
- C语言的运算符按运算对象的个数可以分为() A 单目运算符一种 B 单目和双目运算符 C 单目、…
- 若已定义:float m;拟从键盘输入135.78这一数据给变量m,则应选用的语句是() A scanf(“%5.2f”,…
- 已知double a;使用scanf()函数输入一个数值给变量a,正确的函数调用是() A scanf(“%ld”,&a);…
- putchar()函数的功能是向终端输出() A 多个字符 B 一个字符 C 一个实型变量值 D 一个整…
- 以下程序段运行后的输出结果是() int k=11; printf(“k=%d,k=%o,k=%xn”,k,k,k); A k=11,k=1…
- 若有定义:int x=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为() A…
- 已有如下定义和输入语句, int a;char c1,c2; scanf("%d%c%c ",&a,&c1,&c2); 若要求a、c1、c2的值…
- 以下程序的运行结果是() void main() { int a=65; char c=’A’; printf(“%x,%d”,a,c); } A …
- 若已定义:int a=5;float b=63.72;以下语句中能输出正确值的是() A printf(“%d%d”,a,b); B …
- 运行以下程序段时编译出错,其原因是() char c1='8',c2='2008'; printf("%c,%dn",c1,c2); …
第4章 选择结构程序设计
- 若已定义:int a=3,b=15,c;则语句c=a>b;运行后c的值为() A 1 B 0 C t D f…
- 在C语言中,判定逻辑值为“真“的最正确的叙述是() A 1 B 非0的数 C 大于0的数 D 非0的整…
- 若已定义:int a=-36,b=-30,c;则语句c=a<b;运行后c的值为() A 1 B t C 0 D f…
- 能正确表示数学关系式800>=y>=500的C语言表达式为() A (y<=800)&&(y>=500) B (y<=800)AND(y>…
- 若有定义:int x=3,y=4;则表达式!x||y的值为() A 1 B 0 C 3 D 4
- 若有定义:int i=7,j=8;则表达式i>=j||i A 1 B 变量i的值 C 0 D 变量j的值…
- 若希望当a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为”假”。则不能满足要求…
- 若有定义:int x=3,y=4,z=5;则值为0的表达式是() A ‘x’&&y B x<=y<> C x||y+z&&y-z D !…
- 若有定义:int a=5,b=2,c=1;则表达式a-b<c||b==c的值是() A 0 B 1 C 3 D -1…
- C语言中,能正确表示条件10<x<20的逻辑表达式是() A 10<x<20 B x>10||x<20 C x>10&&<20 …
- 以下运算符中优先级最低的是() A << B & C >> D |
- 已知double a=5.2;则正确的赋值表达式是() A a+=a-=(a=4)*(a=3) B a=a*3=2 C a%3 D a=do…
- 已知char a='R';则正确的赋值表达式是() A a=(a++)%4 B a+2=3 C a+=256-- D a=’ 78’…
- 已知int a=’R’;则正确的表达式是() A a%10 B a=int(3e2) C 2*a=a++ D a=a+a=a+3…
- 设有语句float x=3.0,y=3.0;使x值为6.0的表达式是() A x*=y-4 B x*=y C x=y+4 D x+=y…
- 若有定义:float x=3.5,int z=8;则表达式x+z%3/4的值为() A 3.75 B 3.5 C 3 D 4 …
- 设有语句int x=3,y=3,a=1,b=2;表达式(x=a>b)&&(y=b>a)的值是() A 8 B 1 C 5 D 0…
- 若有定义:int a=2,b=3;float x=3.5,y=2.5; 则表达式(float)(a+b)/2+(int)x%(int)y的值是() A 3.5…
- 若有定义:int b=7;float a=2.5,c=4.7;则表达式a+(b/2*(int)(a+c)/2)%4的值是() A 2.5 B 3.5 …
- 若有定义:int a=6,b=2;char c1=’a’,c2=’b’;则表达式a+b%5+c2-c1的值是() A 7 B 8 C 9 …
- 在下列运算符中,优先级最高的运算符是() A <= B != C ! D ||
- 设有定义:char c;float f;int i;unsigned u;double d;下列各表达式的类型分别是() 1. u+9 2. D…
- 以下程序段运行时,若从键盘输入10,则输出结果是() int a; scanf(“%d”,&a); if(a++>10) p…
- 以下程序的运行结果是() void main() { int x,y=1,z; z=-1; if(z==0) z=-z; else x=y>…
- 对于整型变量x,下属if语句()与赋值语句:x=x%2==0?1:0;不等价。 A if(x%2!=0) x=0;else x=1; B…
- 以下程序段运行的结果是() int a,b,c,x; a=b=c=0;x=15; if(!a) x--; else if(b); if(c) x…
- 若有定义:int a=1,b=2,c=3;则执行以下程序段后a,b,c的值分别为() if(a<b) {c=a;a=b;b=c;} …
- 以下程序段运行后变量a的值为() int x=6,y=5; int a; a=(--x==y++)?x:y+1 A 0 B 1 C…
- 以下程序的运行结果是() void main() { int n=’e’; switch(n--) { defalut:printf(“e…
- 以下程序的运行结果是() void main() { int n=’c’; switch(n++) { defalut:printf(“e…
- printf(“%dn”,++n); } A 4 B 5 C 6 D 7
- 下面关于switch语句的叙述中,错误的是() A case后面的表达式可以是关系表达式 B switch语句…
- 若有定义:int a=1,b=2,c=3;则以下程序段运行后c的值为() if(a>b) c=a*b; else c=a-b; A …
第5章 循环结构程序设计
- 若有定义:int x;以下不会产生死循环的是() A for(;(x=getchar())!=’n’;); B while(1){x+…
- 在循环语句的循环体中,break语句的作用是() A 暂停程序的运行 B 结束本次循环 C 继续执行b…
- 以下程序段运行后,循环体中的“count+=2;”语句运行的次数为() int i,j,cuont=0; for(i=…
- 在c语言中while循环和do-while循环的主要区别是() A do-while循环体内可以使用break语句,while…
- 以下程序段运行后,循环体运行的次数为() int i=0,x; for(;i<10;i++) x=x+i; A…
- 以下程序段运行后变量n的值为() int i=1,n=1; for(;i<3;i++) {continue;n=n+i;} A…
- 有以下程序: void main() { int i; for(i=0;i<3;i++) …
- 以下程序的运行结果是() void main() { int sum=0,item=0; …
- 以下程序的运行结果是() voin main() { int sum=0,item=0; while(item<5) { item++; if…
- 以下程序段执行后变量sum的值为() int i,j=1,sum=0; for(i=1,i<=3,i++) { sum+=j; j++; } …
- 以下程序的运行结果是() #include<studio.h> main() { int y=10; do {y--;} while(--y); …
第6章 利用数组处理批量数据
- C语言中数组元素下标的数据类型是() A 实型常量 B 整型常量或整型表达式 C 任何类型的表达…
- 下列数组定义中,正确的是() A int a[10]; B int n=10,a[n]; C int N=10;int a[N]; D int…
- 若已定义:int a[13];则不能正确引用a数组的元素的是() A a[0] B a[10] C a[10+3] D a[13…
- 若有定义:int a[3]={0,1,2};则a[1]的值为() A 0 B 1 C 2 D 3
- 若有定义:int a[5]={1,2,3,4,5};则语句a[1]=a[2]+a[2+2]-a[3-1];运行后a[1]的值为() A 6 B 5…
- 以下合法的数组定义是() A int a[]=“string”; B int a[5]={0,1,2,3,4,5}; C char a[]={0…
- 若有如下程序段: char s[10]; s=“abcd”; printf(“%sn”,s); 则()。 A 执行时输出:abcd B…
- 下面程序段的运行结果是() int i=0,a[]={7,5,7,3,8,3}; do{ a[i]+=2; }while(a[++i]>5); …
- 下面程序段的运行结果是() int i=0,a[]={1,2,3,4,5}; do{ a[i]+=10; }while(a[++i]>2); f…
- 下面关于数组的叙述中,正确的是() A 数组必须先定义,然后使用 B 定义数组时,可不加类型说明…
- 下面程序段的运行结果是() int i=0,a[]={6,5,3,7}; do { a[i]++; }while(a[i]<4); for(i…
- 单选题 (1分) 有如下程序段: int t[][3]={1,2,3,4,5,6,7,8,9,10,11,12}; printf("%dn",t[2…
- 以下不能对二维数组arr进行正确初始化的语句是() A int arr[2][3]={0}; B int arr[][3]={1,2…
- 若有定义:int a[3][4]={{1,2},{0},{1,2,3}};则a[1][1]的值为() A 0 B {1,2} C 1 D 3…
- 若有定义int a[2][3];则对数组元素的非法引用的是() A a[0][1/2] B a[1][1] C a[4-4][0] …
- 以下数组定义中,正确的是() A int a[2][]={1,2,3,4,5}; B int a[][2]={{0},{}}; C int a[2…
- 若有定义int a[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof(a)/sizeof(a[0])的值为() A 3 B 4 …
- 以下程序段运行后s的值是() int a[3][3]={1,2,3,4,5,1,2,3,4}; int i,j,s=1; for(i=0;i<3;i++…
- 设已定义:int a[][4]={0,0};则下列描述错误的是() A 数组a的每个元素都可得到初值0 B 二维数…
- 有如下定义:char str[3][2]={ 'a','b','c','