信息工程专业《C&ASM》程序设计教程复习题
时间:2026-04-30
时间:2026-04-30
历届期末考试最新常考题目,考试复习必备。
一、选择题(每题2分,共20分)
1. 下列选项中属于C语言字符常量的是( C )。 A.’abc’ B.”﹨n” C.’a’ D.’a﹨0’ 2. 下列选项中属于字符串常量的是(B )。 A.ABC B.”ABC” C.’a bc’ D.’a’ 3. 在PC机中,’﹨n’在内存中占用的字节数是(A )。 A.1 B.2 C.3 D.4
4.下列字符串常量中,占用内存字节数为2的字符串常量是(B )。 A.”12” B.”1” C.”1﹨0” D.”﹨n ﹨n ”
5.设a为整型变量,下列选项中不能正确表达数学关系“10<a<15”的C语言表达式是( A )。
A.10<a<15 B.a==11 ∣∣a==12 ∣∣a==13∣∣ a==14 C.a>10 && a<15 D.!(a<=10)&&!(a>=15)
6. 设x为整型变量,和表达式“!(!x)”值完全相同的表达式是( )。 A.x ==0 B.x ==1 C.x !=0 D.x !=1
7. 若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是( C )。 A.1 B.2 C.2.0 D.2.5
8. 设a=1,b=2,c=3,d=4,则表达式:a<b?a:c<d?c:d的结果为( D )。
A.4 B.3 C.2 D.1
9. 设char ch='A';则表达式“ch=(ch>='A'&&ch<='Z')?(ch+32):ch”的值是( B )。
A.'A' B.'a' C.'Z' D.'z'
10. 若在定义语句:int a,b,c; 之后,接着执行以下选项中的语句,则能正确执行的语句
是( B )。
A.scanf( "%d" ,&a,&b,&c); B.scanf( " %d%d%d " ,&a,&b,&c); C.scanf( " %f" ,&a); D.scanf( " %c%d " ,&a,&b); 11.8088/8086存储器分段,每个段不超过(D)
A.64K 个字 B.32K个字节 C.1兆个字节 D.64K个字节
12.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式(B)
A:寄存器寻址 B:相对基址变址寻址 C:变址寻址 D:基址变址寻址
历届期末考试最新常考题目,考试复习必备。
13.8086/8088系统执行传送指令MOV时( A) A.不影响标志位 B.影响DF方向标志 C.影响SF符号标志 D.影响CF进位标志
14.下列标志位中,可以用来判断计算结果正负的是(B) A:PF B:SF C:DF D:OF 15. 8086/8088系统执行传送指令MOV时( A) A.不影响标志位 B.影响DF方向标志 C.影响SF符号标志 D.影响CF进位标志 16. 下列哪个寄存器是属于指针寄存器(C)
A:SI B:DX
C:SP D:ES 17.
MOV AX, 1090H SUB AX, 4AE0H JC L1 JO L2 JMP L3
上述程序执行后AX=___C5B0____,程序转向_____L1__ 18 设整型变量x,y,z均为5:
A.执行“x-=y-z”后x= 5 。 B. 执行“x%=y+z”后x= 5 。
C. 执行“x=(y>z)?x+2:x-2,3,2”后x= 2 。 ⒘ 字符串“AB\012\\\a55d\n”的长度是 7 。
5
⒙ 代数表达式|2-x|的C语言算术表达式是 fabs(2-pow(x,5)) 。 ⒚ 代数表达式cosx+
y
的C语言算术表达式是 cos(x)+y/2 。 2
⒛ C语言中大小写字母被认为是 不同 的字符。 21请写出数学式
a
的C语言表达式 a/(b*c) 。 bc
三、读程序写结果(每题5分,共10分)
1、有以下程序 #include"stdio.h" void main() {
char c1;
scanf("%c",&c1); _asm{
MOV AL,c1 ; ADD AL,32 ;
历届期末考试最新常考题目,考试复习必备。
MOV c1,AL }
printf("c1=%c",c1); }
若输入为A,则运行结果为:__c1=a____。 2、有以下程序 #include”stdio.h” void main ( ) {
int a, b, c; a=1; b=2; c=3; if(a>b) if(a>c)
printf("%d", a); else printf("%d",b); printf("c=%d\n",c); }
程序执行结果为: c=3 .
3、有以下程序 #include”stdio.h” void main( ) {
int a=-1, b=1, k;
if ((++a<0)&&!(b--<=0))
printf("%d %d\n", a, b); else
printf("b=%d,a=%d\n", b, a); }
程序执行结果为: b=1,a=0
4有以下程序 #include"stdio.h" void main() {
int a,b,c;
a=20;b=30;c=40; if(a>b) a=c,b=a; c=a;
printf(“a=%d b=%d c=%d”,a,b,c); }
程序执行结果为: a=20 b=30 c=20 。
历届期末考试最新常考题目,考试复习必备。
四、编程题
1.编写一个程序,从键盘任意输入一个三位整数,将它们逆序输出。例如,输入123,输出321.
1. #include "stdafx.h" #include "stdio.h"
int main(int argc, char* argv[]) {
int n,b;
printf("Please enter number:\n"); scanf("%d",&n);/*输入要处理的数据*/ while(n>0) {
b=n%10; /*取最低位*/ printf("%d",b);/*输出*/ n=n/10; }
printf("\n"); return 0; }
2. 试编程在显示器上输出100至1000以内的所有水仙花数。(水仙花数是指3位数的各位数字的立方和等于这个3位数本身。例如,153=1*1*1+3*3*3+5*5*5。)
2. #include "stdafx.h" #include "stdio.h"
int main(int argc, char* argv[]) {
int i,a,b,c;
for(i=100;i<1000;i++) {
a=i%10;/*取个位*/ b=i/10%10;/*取10位*/ c=i/100;
if(a*a*a+b*b*b+c*c*c==i) prin …… 此处隐藏:4719字,全部文档内容请下载后查看。喜欢就下载吧 ……
上一篇:2011年医师定期考核述职报告