C语言期末温习题库.docx
- 文档编号:12141477
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:66
- 大小:44.83KB
C语言期末温习题库.docx
《C语言期末温习题库.docx》由会员分享,可在线阅读,更多相关《C语言期末温习题库.docx(66页珍藏版)》请在冰豆网上搜索。
C语言期末温习题库
第1章程序设计及C语言概述
一、单项选择题
1)一个算法应该具有“确信性”等5个特性,下面对另外4个特性的描述中错误的选项是()。
A)有零个或多个输入B)有零个或多个输出
C)有穷性D)可行性
2)以下表达中正确的选项是()。
A)C语言的源程序没必要通过编译就能够够直接运行
B)C语言中的每条可执行语句最终都将被转换成二进制的机械指令
C)C语言源程序经编译形成的二进制代码能够直接运行
D)C语言中的函数不能够单独进行编译
3)用C语言编写的代码程序()。
A)可当即执行B)是一个源程序
C)通过编译即可执行D)通过编译说明才能执行
4)结构化程序由三种大体结构组成,三种大体结构组成的算法()。
A)能够完成任何复杂的任务
B)只能完成部份复杂的任务
C)只能完成符合结构化的任务
D)只能完成一些简单的任务
5)以下表达中正确的选项是()。
A)用C程序实现的算法必需要有输入和输出操作
B)用C程序实现的算法能够没有输出但必需要有输入
C)用C程序实现的算法能够没有输入但必需要有输出
D)用C程序实现的算法能够既没有输入也没有输出
第2章C语言基础
一、单项选择题
1)假设在程序中a,b,c均被概念成整型,而且已赋大于1的值,那么以下能正确表示代数式
的表达式是()。
A)1/a*b*cB)1/(a*b*c)
C)1/a/b/(float)cD)a/b/c
2)以下能正肯概念且赋初值的语句是()
A)intn1=n2=10;B)charc=32;
C)floatf=f+;D)doublex=)以下不能概念为用户标识符的是()
A)scanfB)VoidC)_3com_D)int
4)设x、y、z和k都是int型变量,那么执行表达式:
x=(y=4,z=16,k=32+z)后,x的值为()
A)4B)16C)48D)32
5)设有intx=11,那么表达式(x++*1/3)的值是()。
A)3B)4C)11D)12
6)以下变量x、y、z均为double类型且已正确赋值,不能正确表示数学式子
的C语言表达式是()。
A)x/y*zB)x*(1/(y*z))C)x/y*1/zD)x/y/z
7)有以下程序
main()
{chara1='M',a2='m';
printf("%c\n",(a1,a2));}
以下表达中正确的选项是()
A)程序输出大写字母M
B)程序输出小写字母m
C)格式说明符不足,编译犯错
D)程序运行时产生犯错信息
8)以下程序运行后的输出结果是()
main()
{charp[]={'a','b','c'},q[]="abc";
printf("%d%d\n",sizeof(p),sizeof(q));
}
A)44B)33C)34D)43
9)以下表达中错误的选项是()
A)用户所概念的标识符许诺利用关键字
B)用户所概念的标识符应尽可能做到“见名知意”
C)用户所概念的标识符必需以字母或下划线开头
D)用户概念的标识符中,大、小写字母代表不同标识
10)在C语言中,以下属于构造类型的是()
A)整型B)字符型C)实型D)数组类型
11)以下字符串属于标识符的是()
A)INTB)5_studentC)2ongD)!
DF
12)C语言中能用来表示整常数的进制是()
A)十进制、八进制、十六进制
B)十二进制、十进制
C)六进制、八进制
D)二进制、十进制
13)在C语言中,回车换行符是()
A)\nB)\tC)\vD)\b
14)在ASCII码表中能够看到每一个小写字母的ASCII码比它相应的大写字母的ASCII码()
A)大32B)大64C)小32D)小64
15)设d为字符变量,以下表达式不正确的选项是()。
A)d=97B)d='a'C)d="a"D)d='g'
16)设d为字符变量,以下表达式正确的选项是()。
A)d=678B)d='a'C)d="d"D)d='gjkl'
17)已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为()。
main()
{charx,y;
x='0';y='9';
printf("%d,%d\n",x,y);
}
A)因输出格式不合法,输犯错误信息B)48,57
C)0,9D)48,58
18)已知在ASCII字符集中,字母A的序号为65,下面程序的输出结果为()。
main()
{charc='A';inti=10;
c=c+10;
i=c%i;
printf("%c,%d\n",c,i);
}
A)75,7B)75,5C)K,5
D)因存在非图形字符,无法直接显示出来
19)已知在ASCII集中,字母A的序号为65,下面程序的输出结果为()。
main()
{charc1='B',c2='Y';
printf("%d,%d\n",++c1,--c2);
}
A)输出格式不合法,输犯错误信息B)67,88
C)66,89D)C,X
20)C语言中,运算对象必需是整型数的运算符是()。
A)%B)\C)%和\D)**
21)以下常数中,合法的C常量是()。
A)-0.B)'105'C)'AB'D)"35"
22)以下常数中,合法的C常量是()。
A)"x-y"B)'105'C)'Be'D)7ff
23)以下常数中,合法的C常量是()。
A)'\n'B)e-310C)'DEF'D)'1234'
24)以下常数中,不合法的C常量是()。
A)-0x2aB)lg3C)'['D)"CHINA"
25)以下常数中,不合法的C常量是()。
A)-0x3bB)123e+C)'}'D)6e+7
26)以下符号中,能够作为变量名的是()。
A)+aB)12345eC)a3BD)5e+0
27)以下符号中,能够作为变量名的是()。
A)+cB)*XC)_DAYD)nextday
28)假设已概念x和y为double类型,那么表达式:
x=1,y=x+3/2的值为()。
A)1B)2C)D)
29)以下程序的执行结果是()。
#include<>
#definesum10+20
main()
{intb=0,c=0;
b=5;
c=sum*b;
printf("%d",c);
}
A)100B)110C)70D)150
30)以下程序的执行结果是()。
#include<>
#definesum(10+20)
mian()
{inta=0,b=0,c=0;
a=sum;
b=5;
c=sum*b;
printf("%d",c);
}
A)100B)110C)70D)150
31)表达式(int)的值为()。
A)2B)C)0D)3
32)表达式(double)(20/3)的值为()。
A)6B)C)2D)3
33)假设所有变量均为整型,那么表达式(a=5,b=2,a++,a+b)的值是()。
A)8B)7C)6D)5
34)C语言规定标识符由()等字符组成.
A)字母 数字 下划线B)中划线 字母 数字
C)字母 数字 逗号 D)字母下划线中划线
35)已知ch是字符型变量,下面不正确的赋值语句是()。
A)ch='\0'B)ch='a+b'C)ch='7'+'9'D)ch=7+9
36)假设x和y都为float型变量,且x=,y=执行以下语句后输出结果为()。
printf("%f",(x,y));
A)B)
C),D)输出符号不够,输出不正确值
37)设整型变量a值为9,那么以下表达式中使b的值不为4的表达式()。
A)b=a/2B)b=a%2C)b=8-(3,a-5)D)b=a>5?
4:
2
二、填空题
1)写出以下程序段的执行结果
inta,b,c;
a=b=c=5;
a=++b+(c--);
变量a,b,c的值为【1】
2)假设有如下程序段:
inta=10,b=9,c=8;
c=(a-=(b-5));
c=(a%11)+(b=5);
顺序执行上述语句后,变量b的值为【2】
3)设有以下变量概念,并已赋确信的值
charw;intx;floaty;doublez;
那么表达式:
w*x+z-y所求得的数据类型为【3】。
4)C语言大体数据类型包括【4】、【5】、【6】、【7】。
5)C语言在概念变量的同时说明变量的【8】,系统在编译时就能够依照变量概念及其【9】为它分派相应数量的存储空间。
6)在C语言中,标识符只能由【10】、【11】和【12】三种字符组成,且第一个字符必需【13】或【14】。
7)实型变量分为【15】和【16】,即float和double型。
8)C语言中规定,在变量概念的同时也能够给变量赋初值,叫做【17】。
9)C的字符串常量是用【18】括起来的字符序列。
10)在C语言中,系统在每一个字符串的结尾自动加一个“字符串终止标志符”即【19】,以便系统据此数据判定字符串是不是终止。
11)下面的程序
mian()
{floatx;inti;
x=;i=(int)x;
printf("x=%f,i=%d",x,i);
}
运行结果为【20】。
第3章顺序结构
一、单项选择题
1)设x为int型变量,那么执行以下语句后,x的值为()。
x=10;x+=x-=x-x;
A)10B)20C)40D)30
2)以下可作为C语言赋值语句的是()。
A)x=3,y=5B)a=b=6
C)i--;D)y=int(x);
3)设x,y,z,t均为int型变量,那么执行以下语句后,t的值为()。
x=y=z=1;
t=++x||++y&&++z;
A)不定值B)2C)1D)0
4)假设以下选项中的变量已正肯概念,那么正确的赋值语句是()。
A)x1=%3B)1+2=x2
C)x3=0x12;D)x4=1+2=3;
5)设有以下概念
inta=0;
doubleb=;
charc='A';
#defined2
那么下面语句中错误的选项是()。
A)a++;B)b++;C)c++;D)d++;
6)有以下程序
main()
{intx=102,y=012;
printf("%2d,%2d\n",x,y);
}
执行后输出的结果是()。
A)10,01B)02,12C)102,10D)02,10
7)有以下程序
main()
{intm=3,n=4,x;
x=-m++;
x=x+8/++n;
printf("%d\n",x);
}
程序运行后的输出结果是()。
A)3B)5C)-1D)-2
8)有以下程序
main()
{chara='a',b;
printf("%c,",++a);
printf("%c\n",b=a++);
}
程序运行后的输出结果是()。
A)b,bB)b,cC)a,bD)a,c
9)有以下程序
main()
{intm=0256,n=256;
printf("%o%o\n",m,n);
}
程序运行后的输出结果是()。
A)02560400B)0256256C)256400D)400400
10)有以下程序
main()
{chara,b,c,d;
scanf("%c,%c,%d,%d",&a,&b,&c,&d);
printf("%c,%c,%c,%c\n",a,b,c,d);
}
假设运行时从键盘上输入:
6,5,65,66。
那么输出结果是()。
A)6,5,A,BB)6,5,65,66C)6,5,6,5D)6,5,6,6
11)数字字符0的ASCII值为48,假设有以下程序
main()
{chara='1',b='2';
printf("%c,",b++);
printf("%d\n",b-a);
}
程序运行后的输出结果是()。
A)3,2B)50,2C)2,2D)2,50
12)有以下程序
main()
{intm=12,n=34;
printf("%d%d",m++,++n);
printf("%d%d\n",n++,++m);
}
程序运行后的输出结果是()。
A)B)
C)D)
13)有以下程序
main()
{intm,n,p;
scanf("m=%dn=%dp=%d",&m,&n,&p);
……
}
假假想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,那么正确的输入是()。
A)m=123n=456p=789B)m=123n=456p=789
C)m=123,n=456,p=789D)123456789
14)有以下程序
main()
{inta,b,d=25;
a=d/10%9;
b=a-1;
printf("%d,%d\n",a,b);
}
程序运行后的输出结果是()。
A)6,1B)2,1C)6,0D)2,0
15)以下表达中错误的选项是()。
A)C语句必需以分号终止
B)复合语句在语法上被看做一条语句
C)空语句出此刻任何位置都可不能阻碍程序运行
D)赋值表达式末尾加分号就组成赋值语句
16)以下表达中正确的选项是()。
A)挪用printf函数时,必需要有输出项
B)利用putchar函数时,必需在之前包括头文件
C)在C语言中,整数能够以十二进制、八进制或十六进制的形式输出
D)挪用getchar函数读入字符时,能够从键盘上输入字符所对应的ASCII码
17)有以下程序
#include<>
main()
{ char c1='1',c2='2';
c1=getchar(); c2=getchar();
putchar(c1); putchar(c2);
}
当运行时输入:
a<回车> 后,以下表达正确的选项是()。
A)变量c1被给予字符a,c2被给予回车符
B)程序将等待用户输入第2个字符
C)变量c1被给予字符a,c2中仍是原有字符2
D)变量c1被给予字符a,c2中将无确信值
二、填空题
1)已知字符A的ASCII码值为65,以下语句的输出结果是【1】。
charch='B';
printf("%c%d\n",ch,ch);
2)有以下语句段:
intn1=10,n2=20;
printf("【2】",n1,n2);
要求按以下格式输出n1和n2的值,每一个输出行从第一列开始,请填空。
n1=10
n2=20
3)有以下程序:
#include""
main()
{charch1,ch2;intn1,n2;
ch1=getchar();ch2=getchar();
n1=ch1-'0';n2=n1*10+(ch2-'0');
printf("%d\n",n2);
}
程序运行时输入:
12<回车>,执行后的输出结果是【3】。
4)以下程序段的输出结果是【4】。
inti=9;
printf("%o\n",i);
5)以下程序运行后的输出结果是【5】。
main()
{inta,b,c;
a=25;
b=025;
c=0x25;
printf("%d%d%d\n',a,b,c);
}
6)以下程序运行时,假设从键盘输入:
102030<回车>,输出的结果是【6】。
#include""
main()
{inti=0,j=0,k=0;
scanf("%d%*d%d",&i,&k);
printf("%d%d%d\n",i,j,k);
}
7)已知字符A的ASCII代码值为65,以下程序运行时假设从键盘输入:
B33<回车>,那么输出结果是【7】。
#include""
main()
{chara,b;
a=getchar();scanf("%d",&b);
a=a-'A'+'0';b=b*2;
printf("%c%c\n",a,b);
}
8)以下程序运行后的输出结果是【8】。
main()
{int x=0210; printf("%x\n",x);}
9)以下程序运行后的输出结果是【9】。
main()
{char c; int n=100;
float f=10; double x;
x=f*=n/=(c=50);
printf("%d %f\n",n,x);
}
10)已知字母A的ASCII码为65。
以下程序运行后的输出结果是【10】 。
main()
{char a, b;
a='A'+'5'-'3'; b=a+'6'-'2' ;
printf("%d %c\n", a, b);
}
第4章选择结构
一、单项选择题
1)假设变量c为char类型,能正确判定出c为小写字母的表达式是()
A)'a'<=c<='z' B)(c>='a')||(c<='z')
C)('a'<=c)and('z'>=c) D)(c>='a')&&(c<='z')
2)设有概念:
inta=2,b=3,c=4;,那么以下选项中值为0的表达式是()
A)(!
a==1)&&(!
b==0)B)(a
c||1
C)a&&bD)a||(b+b)&&(c-a)
3)能正确表示逻辑关系“a≥=10或a≤0”的C语言表达式是()。
A)a>=10ora<=0B)a>=0|a<=10
C)a>=10&&a<=0D)a>=10‖a<=0
4)以下运算符中优先级最高的是()。
A)>B)+C)&&D)!
=
5)以下关于运算符优先级的描述中,正确的选项是()。
A)!
(逻辑非)>算术运算>关系运算>&&(逻辑与)>||(逻辑或)>赋值运算
B)&&(逻辑与)>算术运算>关系运算>赋值运算
C)关系运算>算术运算>&&(逻辑与)>||(逻辑或)>赋值运算
D)赋值运算>算术运算>关系运算>&&(逻辑与)>||(逻辑或)
6)逻辑运算符的运算对象的数据类型()。
A)只能是0或1B)只能是.T.或.F.
C)只能是整型或字符型D)任何类型的数据
7)以下程序的运行结果是()。
main()
{intc,x,y;
x=1;y=1;c=0;
c=x++||y++;
printf("\n%d%d%d\n",x,y,c);
}
A)110B)211C)011D)001
8)以下程序的运行结果是()。
main()
{intc,x,y;
x=0;y=0;c=0;
c=x++&&y++;
printf("\n%d%d%d\n",x,y,c);
}
A)100B)211C)011D)001
9)判定字符型变量ch为大写字母的表达式是()。
A)'A'<=ch<='Z'B)(ch>='A')&(ch<='Z')
C)(ch>='A')&&(ch<='Z')D)(ch>='A')AND(ch<='Z')
10)判定字符型变量ch为小写字母的表达式是()。
A)'a'<=ch<='z'B)(ch>=a)&&(ch<=z)
C)(ch>='a')||(ch<='z')D)(ch>='a')&&(ch<='z')
11)以下if语句书写正确的选项是()。
A)if(x=0;)B)if(x>0)
printf("%f",x);{x=x+1;printf("%f",x);}
elseprintf("%f",-x);elseprintf("%f",-x);
C)if(x>0);D)if(x>0)
{x=x+1;printf("%f",x);}{x=x+1;printf("%f",x)}
elseprintf("%f",-x);elseprintf("%f",-x);
12)分析以下程序:
main()
{intx=5,a=0,b=0;
if(x=a+b)printf("****\n");
elseprintf("####\n");
}
以上程序()。
A)有语法错,不能通过编译
B)通过编译,但不能连接
C)输出****D)输出####
13)写出下面程序的执行结果()。
main()
{intx,y=1;
if(y!
=0)x=5;
printf("%d\t",x);
if(y==0)x=3;
elsex=5;
printf("%d\t\n",x);
}
A)13B)15C)53D)55
14)假设有以下变量概念:
floatx;inta,b;
那么正确的switch语句是()。
A)switch(x)
{case:
printf("*\n");
case:
printf("**\n");
}
B)switch(x)
{case1,2:
printf("*\n");
case3:
printf("**\n");
}
C)switch(a+b)
{case1:
printf("*\n");
case2*a:
printf("**\n");
}
D)switch(a+b)
{case1:
printf("*\n");
case1+2:
printf("**\n");
}
15)以下关于运算符优先顺序的描述正确的选项是()。
A)关系运算符<算术运算符<赋值运算符<逻辑运算符
B)逻辑运算符<关系运算符<算术运算符<赋值运算符
C)赋值运算符<逻辑运算符<关系运算符<算术运算符
D)算术运算符<关系运算符<赋值运算符<逻辑运算符
16)能正确表示a>=10或a<=0的关系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 期末 温习 题库