当前位置:文档之家› 全国计算机等级考试二级笔试试卷基础部分和C语言程序设计1996年4月

全国计算机等级考试二级笔试试卷基础部分和C语言程序设计1996年4月

全国计算机等级考试二级笔试试卷基础部分和C语言程序设计1996年4月
全国计算机等级考试二级笔试试卷基础部分和C语言程序设计1996年4月

全国计算机等级考试二级笔试卷

基础知识和C语言程序设计

(考试时间120分钟,满分100分)

1996年4月

一、选择题((1)-(40)每小题1分,(41)-(50)每小题2分,共60分)

下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1) 一个完整的计算机系统包括

A) 主机、键盘与显示器B) 计算机与外部设备

C) 硬件系统与软件系统D) 系统软件与应用软件

(2) 十六进制数1000转换成十进制数是

A) 4096 B) 1024 C) 2048 D) 8192

(3) 十进制数269转换成十六进制数是

A) 10E B) 10D C) 10C D) 10B

(4) 如果用八位二进制补码表示带符号的定点整数,则能表示的十进制数的范围是

A) -127到+127 B) -128到+128 C) -127到+128 D) -128到+127

(5) 下列设备中,既可作为输入设备又可作为输出设备的是

A) 鼠标器B) 打印机C) 键盘D) 磁盘驱动器

(6) 下列各叙述中,正确的是

A) 正数十进制原码的补码是原码本身

B) 所有的十进制小数都能准确地转换为有限位二进制小数

C) 汉字的计算机内码就是国标码

D) 存储器具有记忆能力,其中的信息任何时候都不会丢失

(7) 在下列操作中,能导致DOS系统重新启动但不进行系统自检的是

A) 加电开机B) 按+

C) 按++ D) 按RESET按钮

(8) 如果给定一个带有通配符的文件名F*.?,则在下列各文件中,它能代表的文件名是

A) FA.EXE B) F.C C) EF.C D) https://www.doczj.com/doc/f19368490.html,

(9) DOS系统启动后,下列文件中常驻内存的是

A) *.COM B) https://www.doczj.com/doc/f19368490.html,

C) AUTOEXEC.BAT D) https://www.doczj.com/doc/f19368490.html,

(10) 设A盘的目录结构为(画方框的为目录)

D1 \

D2

ABC A.FOR

DX.C Q.DAT

根目录

B.PAS Y.BAS A.C

D3 A1.C

D4

XYZ.C

QR.C NA.C A.TXT B.C

如果当前盘为C 盘,A 盘的当前目录为\D2,则下列对A 盘上文件QR.C 的指定中,合法的是 A) \D2\D4\QR.C B) D4\QR.C C) A:D4\QR.C D) A:D2\D4\QR.C (11) 为了要将A 盘当前目录(不是根目录)中所有扩展名为.C 的文件同名复制到A 盘的目录\USER

中,正确的命令是

A) COPY A:*.C USER\*.C B) COPY A:*.C A:\USER C) COPY A:*.C A:USER\ D) COPY A:*.C A:USER\*.C (12) 为了在屏幕上一次显示当前盘当前目录下的所有扩展名为.TXT 的文件内容,下列命令中正确的

A) TYPE *.TXT B) TYPE *.TXT CON C) COPY *.TXT>CON D) COPY *.TXT CON (13) 设当前盘为A 盘,为了将当前盘当前目录下的文件AB1.TXT 连接在C 盘根目录下的文件XYZ.TXT

的后面,正确的命令是

A) COPY C:\XYZ.TXT+AB1.TXT B) COPY AB1.TXT>>C:\XYZ.TXT

C) TYPE AB1.TXT>C:\XYZ.TXT

D) COPY AB1.TXT+C:\XYZ.TXT>C:\XYZ.TXT

(14) 设A 盘为启动盘,其目录结构为(画方框的为目录)

其中文件AUTOEXEC.BA T 的内容为

MD \XYZ

CD \DOS\USER

则由A 盘启动成功后,A 盘的当前目录是

A) \DOS\USER B) \XYZ C) \ D)\DOS

(15) 下列DOS 命令中为内部命令的是

A) COMP B) PATH

C) PRINT D) FORMAT

(16) 设当前盘为C 盘,所用的所有软盘已格式化且容量相同,则下列DOS 命令中错误的是

A) DISKCOPY A: C: B) DISKCOPY A: A: C) COPY A:*.* D) COPY A:*.* C: (17) 下列DOS 命令中,有错误的是

A) TYPE AAB.FOR>PRN B) TYPE ?AB.FOR C) COPY *.C PRN

D) COPY CON PRN

https://www.doczj.com/doc/f19368490.html, \ 根目录 AUTOEXEC.BA T

DOS USER

(18) 设当前盘为C盘,在当前目录下有全部的DOS系统文件与批处理命令文件AB.BAT,且该批处理

命令文件的内容为

FORMAT A:/4

MD \XYZ

CD \XYZ

RD \XYZ

MD \XYZ

如果在1.2软盘驱动器A中插入一张360K容量的软盘片,执行批自理命令文件AB.BAT后,结果A盘的目录结构是

A) 根目录

B) 根目录----子目录XYZ----子目录XYZ

C) 根目录─┬─子目录XYZ

└─子目录XYZ

D) 根目录----子目录XYZ

(19) 下列带有通配符的文件名,能代表文件ABC.FOR的是

A) *BC.? B) A?.* C) ?BC.* D) ?.?

(20) 设当前盘为C盘,且C盘上含有子目录\DOS,A盘为只有根目录的启动盘(根目录下只有三个

DOS系统文件与扩展名为. C的文件)。下列命令组中的两个命令从效果上可以认为等价的是

A) DEL \DOS与RD \DOS B) FORMAT A:与DEL A:*.*

C) FORMAT A: /S与DEL A:*.? D) COPY A:F1 F2与REN A:F1 F2

(21) 设a、b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是

A) 'a'&&'b' B) a<=b C) a||b+c&&b-c D) !((a

(22) 请读程序片段:

int i=65536; printf("%d\n",i);

上面程序片段的输出结果是

A) 65536 B) 0 C) 有语法错误,无输出结果 D) -1

(23) 设ch是char型变量,其值为A,且有下面的表达式:

ch=(ch>='A'&&ch<='Z')?(ch+32):ch

上面表达式的值是

A) A B) a C) Z D) z

(24) 若x和y都是int型变量,x=100,y=200,且有下面的程序片段:

printf("%d",(x,y));

上面程序片段的输出结果是

A) 200 B) 100 C) 100 200 D) 输出格式符不够,输出不确定的值

(25) 下面各语句行中,能正确进行赋字符串操作的语句行是

A) char st[4][5]={"ABCDE"}; B) char s[5]={'A','B','C','D','E'};

C) char *s; s="ABCDE"; D) char *s; scanf("%s",s);

(26) 若k是int型变量,且有下面的程序片段:

k=-3

if(k<=0) printf("####")

else printf("&&&&");

上面程序片段的输出结果是

A) #### B) &&&& C) ####&&&& D) 有语法错误,无输出结果

(27) 若x是int型变量,且有下面的程序片段:

for(x=3; x<6; x++) printf((x%2)?("**%d"):("##%d\n"),x);

上面程序片段的输出结果是

A) **3 B) ##3 C) ##3 D) **3##4

##4 **4 **4##5 **5

**5 ##5

(28) 请读程序:

#include

f(char *s)

{ char *p=s;

while( *p!='\0') p++;

return(p-s);

}

main()

{ printf("%d\n",f("ABCDEF"));}

上面程序的输出结果是

A) 3 B) 6 C) 8 D) 0

(29) 请读程序:

#include

main()

{ int a; float b, c;

scanf("%2d%3f%4f",&a,&b,&c);

printf("\na=%d, b=%f, c=%f\n", a, b, c);

}

若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是

A) a=98, b=765, c=4321 B) a=10, b=432, c=8765

C) a=98, b=765.000000, c=4321.000000 D) a=98, b=765.0, c=4321.0

(30) 请读程序:

#include

main()

{ int n[2], i, j, k;

for(i=0;i<2;i++) n[i]=0;

k=2

for(i=0;i

for(j=0;j

printf("%d\n",n[k]);

}

上面程序的输出结果是

A) 不确定的值B) 3 C) 2 D) 1

(31) 请读程序片段:

char str[]="ABCD", *p=str;

printf("%d\n",*(p+4));

上面程序的输出结果是

A) 68 B) 0 C) 字符"D"的地址 D) 不确定的值

(32) 请读程序片段:

#include

main()

{ int a, b;

for(a=1;b=1;a<=100;a++)

{ if(b>=20) break;

if(b%3==1)

{b+=3;

continue;

}

b-=5;

}

printf("%d\n",a);

}

上面程序的输出结果是

A) 7 B) 8 C) 9 D) 10

(33) 若要用下面的程序片段使指针变量p指向一个存储整型变量的动态存储单元:

int *p;

p=__________ malloc( sizeof(int));

则应填入

A) int B) inst * C) (*int) D) (int *)

(34) 请读程序片段(字符串内没有空格):

printf("%d\n",strlen("ATS\n012\1\\"));

上面程序片段的输出结果是

A) 11 B) 10 C) 9 D) 8

(35) 请读程序:

#include

#include

main()

{ char*s1="AbCdEf", *s2="aB";

s1++; s2++;

printf("%d\n",strcmp(s1,s2));

}

上面程序的输出结果是

A) 正数B) 负数C) 零D) 不确定的值

(36) 请读程序:

#include

func( int a, int b)

{ int c;

c=a+b;

return c;

}

main()

{ int x=6, y=7, z=8, r;

r=func( x--,y==,x+y),z--);

printf("%d\n",r);

}

上面程序的输出结果是

A) 11 B) 20 C) 21 D) 31

(37) 请读程序:

#include

int a[]={2,4,6,8};

main()

{ int i;

int *p=a;

for(i=0;i<4;i++) a[i]=*p++;

printf("%d\n",a[2]);

}

上面程序的输出结果是

A) 6 B) 8 C) 4 D) 2

(38) 请读程序:

#include

char fun(char *c)

{ if( *c<='Z' && *c>='A') *c-='A'-'a';

return *c;

}

main()

{ char s[81], *p=s;

gets(s);

while(*p)

{ *p=fun(p); putchar(*p); p++;}

putchar('\n');

}

若运行时从键盘上输入OPEN THE DOOR(表示回车),则上面程序的输出结果是

A) oPEN tHE door B) open the door C) OPEN THE DOOR D) Open The Door

(39) 请读程序:

#include

void fun( int *s)

{ static int j=0;

do

s[j]+=s[j+1];

while(++j<2);

}

main()

{ int k, a[10]={1,2,3,4,5};

for(k=1; k<3; k++) fun(a);

for(k=0; k<5; k++) printf("%d", a[k]);

}

上面程序的输出结果是

A) 34756 B) 23445 C) 35743 D) 12345

(40) 请读程序:

#include

#define SUB(X,Y) (X)*Y

main()

{ int a=3, b=4;

printf("%d", SUB(a++, b++));

}

上面程序的输出结果是

A) 12 B) 15 C) 16 D) 20

(41) 请读程序:

#include

main()

{ int mun=0;

while(num<=2)

{ num++; printf("%d\n",num);}

}

上面程序的输出结果是

A) 1 B) 1 C) 1 D) 1

2 2 2

3 3

4

(42) 请读程序:

#include

main()

{ float x,y;

scan("%f",&x);

if(x<0.0) y=0.0

else if((x<5.0)&&(x!=2.0))

y=1.0/(x+2.0);

else if (x<10.0) y=1.0/x;

else y=10.0;

printf("%f\n",y);

}

若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果是

A) 0.000000 B) 0.250000 C) 0.500000 D) 1.000000

(43) 请读程序:

#include

main()

{ int x=1, y=0, a=0, b=0;

switch(x)

{ case 1:

switch(y)

{ case 0: a++;break;

case 1: b++;break;

}

case 2:

a++; b++; break;

}

printf("a=%d, b=%d\n",a,b);

}

上面程序的输出结果是

A) a=2, b=1 B) a=1, b=1 C) a=1, b=0 D) a=2, b=2

(44) 若有下面的程序片段:

int a[12]={0}, *p[3], **pp, i;

for(i=0; i<3; i++)

p[i]=&a[i*4];

pp=p;

则对数组元素的错误引用是

A) pp[0][1] B) a[10] C) p[3][1] D) *(*(p+2)+2)

(45) 请读程序:

#include

#include

main()

{ float x,y,z;

scan("%f%f",&x,&y);

z=x/y;

while(1)

{ if(fabs(z)>1.0)

{ x=y; y=z; z=x/y;

}

else break

}

printf("%f\n",y);

}

若运行时从键盘上输入3.6 2.4(表示回车),则输出的结果是

A) 1.500000 B) 1.600000 C) 2.000000 D) 2.400000

(46) 请读程序:

#include

f(in b[], int n)

{ int i, r;

r=1;

for(i=0; i<=n; i++) r=r*b[i];

return r;

}

main()

{ int x, a[]={ 2,3,4,5,6,7,8,9};

x=f(a, 3);

printf("%d\n",x);

}

上面程序的输出结果是

A) 720 B) 120 C) 24 D) 6

(47) 请读程序:

#include

#include

void fun( char *s)

{ char a[10];

strcpy( a, "STRING");

s=a;

}

main()

{ char *p;

fun(p);

x=f(a, 3);

printf("%s\n",p);

}

上面程序的输出结果是(└┘表示空格)

A) STRING└┘└┘└┘└┘B) STRING

C) STRING└┘└┘└┘D) 不确定的值

(48) 若已建立下面的链表结构,指针p、s分别指向图中所示的结点,则不能将s所指的结点插入到

链表末尾的语句组是

A) s->next=NULL; p=p->next; p->next=s; B) p=p->next; s->next=p->next; p->next=s; C) p=p->next; s->next=p; p->next=s;

D) p=(*p).next; (*s).next=(*p).next; (*p).next=s;

(49) 请读程序:

#include

void fun(float *pl, float *p2, float *s) { s=( float * )calloc( 1, sizeof(float)); *s=*p1+ *(p2++); }

main()

{ float a[2]={1.1, 2.2}, b[2]={10.0, 20.0}, *s=a; fun(a, b, s)

printf("%f\n",*s); }

上面程序的输出结果是

A) 11.100000 B) 12.100000 C) 21.100000 D) 1.100000 (50) 请读程序:

#include #include

void fun( char *w, int m) { char s, *p1, *p2; p1=w; p2=w+m-1; while (p1

{ s=*p1++; *p1=*p2--; *p2=s;} }

main()

{ char a[]="ABCDEFG"; fun( a, strlen(a)); puts(a); }

上面程序的输出结果是

A) GFEDCBA B) AGADAGA C) AGAAGAG D) GAGGAGA 二、填空题(每空2分,共40分)

请将每空的正确答案写在答题卡上【1】-【20】序号后的横线上,答在试卷上不得分。 (1) DOS 命令分为内部命令与外部命令,XCOPY 命令是 【1】 命令

F

NULL

E

data next

head

p

G

s

(2) 为了列出当前盘当前目录中所有第三个字符为C 的文件名的有关信息,应该用命令 【2】 。 (3) 设当前盘为A 盘,当前目录为\X\Y ,A 盘上的一个文件QR.C 在当前目录下的子目录W 中。现

已将A 盘的当前目录改为\D\XY ,当前盘改为C 盘,如需指定A 盘上该文件应写成 【3】 。 (4) 用十六进制给存储器中的字节地址进行编号,其地址编号是从0000到FFFF ,则该存储器的容量是【4】KB 。 (5) 设有两个八位二进制数00010101与01000111相加,其结果的十进制表示为 【5】 。 (6) 数学式子b

a b

a x -+?

)sin (2写成C 语言表达式是 【6】 。 (7) 下面程序的输出结果是 【7】 。

#include main()

{ static char b[]="Goodbye"; char *chp=&b[7];

while( --chp >=&b[0]) putchar( *chp); putchar('\n'); } (8) 下面程序的输出结果是 【8】 。

#include

void as( int x, int y, int *cp, int *dp) { *cp=x+y; *dp=x-y; }

main()

{ int a=4, b=3, c, d; as( a, b, &c, &d);

printf( '%d %d\n", c, d); }

(9) 请读程序:

#include

main( int argc, char *argv[]) { int i;

printf( '%d\n", argc);

for( i=0; i<=argc+1; i++) printf( "%s ", argv[i]); printf("\n"); }

若上面的程序编译、连接后生成可执行文件ABC.EXE ,则输入以下命令行

abc file1 file2(表示回车) 程序执行后的输出结果是 【9】 。 (10) 条件“20

(11) 设二进制数a 是00101101,若想通过异或运算a^b 使a 的高4位取反,低4位不变,则二进制

数b 应是 【11】 。

(12) 若有以下说明和定义语句,则变量w在内存中所占的字节数是【12】。

union aa

{ float x, y;

char c[6];

};

struct st { union aa v; float w[5]; double ave; } w;

(13) 下面程序的输出结果是【13】。

#include

#define N 5

fun( char *s, char a, int n)

{ int j;

*s=a; j=n;

while( e

return j;

}

main()

{ char s[N+1];

int k, p;

for( k=1; k<=N; k++)

s[k]='A'+k+1;

printf( "%d\n", fun(s, 'E', N));

}

(14) 下面程序的输出结果是【14】。

#include

void fun( char *a1, char *a2, int n)

{ int k;

for( k=0; k

a2[k]=( a1[k]-'A'-3+26)%26+'A';

a2[n]='\0';

}

main()

{ char s1[5]="ABCD", s2[5];

fun( s1, s2, 4);

puts( s2);

}

(15) 下面的findmax函数返回数组s中最大元素的下标,数组中元素的个数由t传入,请填空。

findmax( int s[], int t)

{ int k, p;

for( p=0, k=p; p

if( s[p]>s[k]) 【15】。

return k;

}

(16) 下面程序的输出结果是【16】。

#include

fun( int x)

{ int p;

if( x==0||x==1) return(3);

p=x-fun( x-2);

return p;

}

main()

{ printf( "%d\n", fun(9));}

(17) 下面程序的输出结果是【17】。

#include

funa( int a, int b)

{ return a+b;}

funb( int a, int b)

{ return a-b;}

sub( int (*t)(), int x, int y)

{ return((*t)( x,y));}

main()

{ int x, (*p)();

p=funa;

x=sub(p,9,3);

x+=sub(funb, 8, 3);

printf("%d\n", x);

}

(18) 下面程序的输出结果是【18】。

#include

main()

{ char *p[]={ "BOOL", "OPK", "H", "SP"};

int i;

for(i=3; i>=0; i--,i--) printf( "%c", *p[i]);

printf("\n");

}

(19) 为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是向结点的指针域),

请填空。

data next

struct link { char data; 【19】} node;

(20) 下面的程序用来统计文件中字符的个数,请填空。

#include

main()

{ FILE *fp;

long num=0;

if(( fp=fopen("fname.dat","r"))==NULL)

{ printf( "Can't open file! \n"); exit(0);}

while 【20】

{ fgetc(fp); num++;}

printf("num=%d\n", num);

fclose(fp);

}

『完』

1996年4月二级C语言笔试试卷参考答案

一`选择题((1)~(40)题每题1分,(41)~(50)题每题2分,共60分)

(1)C (2)A (3)B (4)D (5)D (6)A (7)C (8)B (9)D (10)C

(11)B (12)D (13)A (14)C (15)B (16)A (17)B (18)A (19)C (20)C

(21)D (22)B (23)B (24)A (25)C (26)D (27)D (28)B (29)C (30)A

(31)B (32)B (33)D (34)C (35)A (36)C (37)A (38)B (39)C (40)A

(41)C (42)C (43)A (44)C (45)B (46)B (47)D (48)C (49)D (50)C

二` 填空题(每空2分,共40分)

(第(2)`(3)空允许小写或大小写混合使用,其它空均须与答案一样)

(1) 外部

(2) DIR ?? C*.*

(3) A:\X\Y\W\QR.C

(4) 64

(5) 92

(6) pow(sin(x),2) * (a+b)/(a-b) 或 sit(x) * sit(x) * (a+b)/(a-b)

(7) eybdooG

(8) 7 1

(9) 3 abc.exe file1 file2 (注:两个答案,每个1分)

(10) ((20

(11) 11110000

(12) 34

(13) 3

(14) XYZA

(15) k=p

(16) 7

(17) 17

(18) SO

(19) struct link *next

(20) (!feof(fp))或(feof(fp)==0)

C语言程序设计试题及答案

C语言程序设计 一、选择题(共40分,每小题2分) 1、以下叙述不正确的是(D) A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个main函数 C、C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 2、下列四个选项中,是不合法的用户标识符的选项是(B) A、abc B、12AC C、sun D、A 3、设有语句inta=4;则执行了语句a+=a-=a*a后,变量a的值是(A) A、-24 B、0 C、4 D、16 4、下列运算符中优先级最高的是(B) A、< B、+ C、&& D、== 5、在C语言中,运算对象必须是整型数的运算符是(A) A、% B、/ C、%和/ D、+ 6、以下关于运算符的优先顺序的描述正确的是(C) A、关系运算符<算术运算符<赋值运算符<逻辑与运算符 B、逻辑与运算符<关系运算符<算术运算符<赋值运算符 C、赋值运算符<逻辑与运算符<关系运算符<算术运算符 D、算术运算符<关系运算符<赋值运算符<逻辑与运算符 7、在C语言中,如果下面的变量都是int类型,则输出的结果是(C) sum=pad=5;pAd=sum++,pAd++,++pAd; printf(“%d\n”,pad); A、7 B、6 C、5 D、4 8、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B)

A、INPUTx、y、z; B、scanf(“%d%d%d”,&x,&y,&z); C、scanf(“%d%d%d”,x,y,z); D、read(“%d%d%d”,&x,&y,&z); 9、假定从键盘输入23456<回车>,下面程序的输出结果是:(C)voidmain() {intm,n; scanf(“%2d%3d”,&m,&n); printf(“m=%dn=%d\n”,m,n); } A、m=23n=45 B、m=234n=56 C、m=23n=456 D、语句有错误 10、若运行时,给变量x输入12,则以下程序的运行结果是(A)main() {intx,y; scanf(“%d”,&x); y=x>12?x+10:x-12; printf(“%d\n”,y); } A、0B、22C、12D、10 11、C语言中while和do-while循环的主要区别(A) A、do-while的循环体至少执行一次 B、while的循环控制条件比do-while的循环控制条件严格 C、do-while允许从外部转到循环体内 D、do-while的循环体不能是复合语句 12、以下对二维数组的正确说明的语句是(C) A、inta[3][] B、floata(3,4) C、doublea[3][4] D、floata(3)(4) 13、以下程序的输出结果是(C) main()

全国高等教育自学考试高级语言程序设计

全国高等教育自学考试高级语言程序设计 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

2001年10月全国高等教育自学考试高级语言程序设计(一) 试卷 第一部分选择题 一、单项选择题 (本大题共20小题,每小题1分,共20分) 在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。 1. C语言程序编译时,程序中的注释部分【】 A. 参加编译,并会出现在目标程序中 B. 参加编译,但不会出现在目标程序中 C. 不参加编译,但会出现在目标程序中 D. 不参加编译,也不会出现在目标程序中 2. 下列表达式的值为0的是【】 A. 3﹪5 B. 3/ C. 3/5 D. 3<5 3. 正确的C语言用户自定义标识符是【】 A. print B. float C. when?

D. random﹪2 4. 设int a = 3;则表达式a<1&& - - a>1的运算结果和a的值分别是【】 A. 0和2 B. 0和3 C. 1和2 D. 1和3 5. 下列叙述中,正确的是【】 A. 引用带参的宏时,实际参数的类型应与宏定义时的形式参数类型相一致 B. 宏名必须用大写字母表示 C. 宏替换不占用运行时间,只占编译时间 D. 在程序的一行上可以出现多个有效的宏定义 6. 下列保留字中用于构成循环结构的是【】 A. if B. while C. switch D. default 7. 与语句if(a>b)if(c>d)x = 1;else x = 2;等价的是【】 A. if(a>b){if(c>d) x = 1;else x = 2;} B. if(a>b){if(c>d) x = 1;} else x = 2;

《高级语言程序设计》期末考试试卷

武汉大学计算机学院 2006-2007学年度第2学期2006级 《高级语言程序设计》期末考试试卷A卷 姓名:学号:专业: 说明:开卷考试,答案请全部写在答题纸上,写在试卷上无效。 一.单项选择题:(选择最合适的答案填空,每小题2分,共16分) ()1、在执行以下程序时,从键盘上输入9,则该程序输出结果是__________。 #include int main( ) { int n; scanf("%d",&n); if(n++<10) printf("%d\n",n); else printf("%d\n",n--); return 0; } A、8 B、9 C、10 D、11 ()2、表达式0156637&~0777的结果是____________。 A、0156000 B、156000 C、0637 D、637 ()3、假设有如下定义:int m=1,n=1; 则执行表达式(m=’5’<’3’)&&(n=’7’>’9’)后,m和n的值分别是_____________________。 A、1和1 B、1和0 C、0和1 D、0和0 ()4、表达式-11%3+7/2的结果是____________。 A、5.5 B、5 C、1.5 D、1 ()5、设有如下宏定义: #define BOOK(x) 8-x 则执行赋值语句v=BOOK(2)*BOOK(4); /*v为int型变量*/ 后,变量v的值为。 A、-12 B、0 C、24 D、44 ()6、设有如下定义: int a[6][4]; int (*p)[4]; p=a; 则与表达式*p+3等价的选项是_________。 A、a[0][3] B、&a[0][3] C、a[3][0] D、&a[3][0] ()7、假设有以下定义: static char *a=”h\te\nY\0W\0o\b”;

汇编语言程序的设计试卷与答案

汇编语言程序设计试卷 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分) 1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。 ① 无符号十进制数136 ② 带符号十进制数-120 ③ 压缩型BCD码十进制数88 ④ 8位二进制数-8的补码表示 2.指令指针寄存器是()。 ① IP ② SP ③ BP ④ PSW 3.当执行指令ADD AX,BX后,若AX的内容为2BA0H, 设置的奇偶标志位PF=1,下面的叙述正确的是()。 ① 表示结果中含1的个数为偶数 ② 表示结果中含1的个数为奇数 ③ 表示该数为偶数 ④ 表示结果中低八位含1的个数为偶数 4.完成将累加器AL清零,并使进位标志CF清零, 下面错误的指令是()。 ① MOV AL,00H ② AND AL,00H

③ XOR AL,AL ④ SUB AL,AL 5.下列指令执行后总是使CF=0,OF=0的是()。 ① AND ② NEG ③ NOT ④ INC 6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。 ① MOV AX,BX ② MOV BX,AX ③ PUSH AX POP BX ④ MOV CX,AX MOV AX,BX MOV BX,CX 7.设AH=0,AL=06H,BL=09H,执行指令 ADD AL,BL AAA 之后,其结果应是()。 ① AH=01,AL=05 ② AH=1 AL=15 ③ AH=0 AL=0FH ④ AH=0 AL=05 8.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为

《高级语言程序设计》复习题及答案

一、选择题 1.以下叙述正确的是( ): A)在C程序中,main函数必须位于程序的最前面 B) C程序的每行只能写一条语句 C) C语言使用库函数实现输入输出操作 D)注释中的拼写错误会影响编译结果 2、以下说法中正确的是() A) C语言程序总是从第一个的函数开始执行 B) C语言程序总是从main()函数开始执行 C)在C语言程序中,要调用的函数必须在main()函数中定义 D)C语言程序中的main()函数必须放在程序的开始部分 3、下列选项种说法正确的是( ) A)函数由声明部分和执行部分两部分组成 B)语言中main函数一定在程序的开始部分 C)C语言程序总是从第一个定义的函数开始执行 D)C程序的每行中只能写一条语句 4、设有说明:int a;float b; char c; double d; 则表达式1.3*a+2*b*c+d*(int) 2.6 值的类型为( )。 A)doubleB) char C) floatD) int 5、C语言的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( ) A)必须为字母 B)必须为下划线 C)必须为字母或下划线 D)可以是字母、数字和下划线中任一种字符 6、以下不正确的C语言标识符是( )。 A) ABC B) abc C)a_bc D) void 7、下列运算符中优先级最高的是( ) A)< B)+ C)&& D)!= 8、以下选项中属于C语言中合法关键字的是( ) A)Float B)abc C)int D)CASE 9、若x、i、j和k都是int型变量,计算下面表达式后,x的值为( ) x=(i=4,j=16,k=32) A)4 B)16 C)32 D)52 10、在C语言中,要求数据必须是整型的运算符是( ) A)/ B)+ + C)!=D) % 11、若整型变量x的值为8,则下列表达式中值为1的表达式是 A)x+=x-=x B) x%=x-1 C) x%=x%=3 D) x/=x+x 12、若w=1,x=2,y=3,z=4,则条件表达式“w > x? w : y< z ? y : z”的值是( ) A)4 B)3 C)2 D)1 13、有以下程序,程序运行后的输出结果是。 main() {inti=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf("%d %d %d\n",i,j,k); }

C++语言程序设计试题试题和答案

C 语言程序设计试卷 ,C++语言程序设计试题及答案 一、单项选择题(每题1分,共20分) 1. C语言规定:在一个源程序中,main函数的位置( C )。 A. 必须在最开始 B. 必须在系统调用的库函数的后面 C. 可以任意 D. 必须在最后 2. 下面四个选项中,均是合法浮点数的选项是( B )。 A. +1e+1 5e-9.4 03e2 B. -.60 12e-4 -8e5 C. 123e 1.2e-.4 +2e-1 D. -e3 .8e-4 5.e-0 3. 若a=-14,b=3,则条件表达式 a

华南理工大学高级语言程序设计作业

华南理工大学高级语言程序设 计作业(总3页) -CAL-FENGHAI.-(YICAI)-Company One1 -CAL-本页仅作为文档封面,使用请直接删除

《高级语言程序设计(https://www.doczj.com/doc/f19368490.html,)》作业 2014.3 教学中心:专业层次: 学号:姓名: 一.判断题(如正确打√,否则,打×。) 1.存储数据不属于数据处理功能。N 2. Write_1 和学校$ 是正确的变量名。Y 3.若一个整型变量说明了之后没有给它赋值,则它的值为0。Y 4.判别ch是否为小写字母,若是,输出“yes”;否则,输出“No”的块结构条件语句为:Y If Asc(ch)>=97 And Asc(ch)<=122 Then WriteLine (“Yes”) Else WriteLine(“No”) End If 5.。输入结构变量的值就是输入该变量的各个元素的值Y 6.函数过程定义中必须有一个赋值语句把表达式的值赋给函数过程名。N 7. 事件是由https://www.doczj.com/doc/f19368490.html,系统预先设置好或者在程序中由编程者自己设计的,它能够被对象识别的动作。Y 8. 从文件取出一组数据以流的方式存放到程序的变量或数组中称为向流写入数据。N 9. 文件流类FileStream用于打开和关闭文件,并提供对文件按字节的读/写操作。Y 10. 在VB中不可以把类型说明符放在变量名的末尾来说明变量的类型。N 二.单项选择题 1.下列变量名中错误的是( “年龄” )。 2.设X为整型变量,不能正确表达1< X < 5的逻辑表达式是(1< X <5 )。 3.设有数组说明语句:Dim c( 10) AS Integer,则下面表示数组c的元素选项中 (c(11) )是错误的。 4.在过程的形式参数前面加上关键字( ByVal ),则该参数说明为引用参数。 D. 5. 设已定义函数过程f,它有三个实型传值参数;设a,b和c为实型变量,则调用该函数的正确形式为( f a+b, b+c, c+a )。 6.若使命令按钮不可见,可以设置Visible属性的值为( False )。 7.要使单选按钮RadioButton处于选中或未选中状态,需由( Checked )属性来决定。 8.要删除列表框中的某一个项目,需要使用(ReMove )方法。 9.要设置计时器的时间间隔可以通过( InterVal )属性来实现。 10.下面( StreamWriter )类用来把数据写入文本文件中。 三.简答题 1. 在控制台应用程序中,如何输入输出一维数组的元素 1. 答:输入一维数组元素的值可以使用赋值语句,也可以使用Console类的输入方法Read和ReadLine从键盘输入数据。输出一维数组元素的值可以使用Console类的Write方法和WriteLine方法。 2.若有数组定义语句:Dim c%() = { 76, 80, 75},则数组c有多少个元素这些元素是什么它们的初值是多少 3.答:数组c共有3个元素c(0)、c(1)和c(2),它们的初值分别为1、2和3,即c(0)=76,c(1)=80和c(2)=75。 3. 文件操作可以分为哪些步骤

高级语言程序设计期末考试试卷及答案(-E卷)

高级语言程序设计期末考试试卷及答案( E卷)2005-2006学年上学期考试科目: 考试类型:(闭卷)考试时间:120分钟 考试须知: 1.答案必须写在“答题卡”上,写在试卷上不得分。 2.必须在答题卡上正确填写班级、学号、姓名等内容。 一、选择题(共20小题,每小题1分) 1. 下列C常量中不合法的是( ) A.'\500' B.0500 C.'500' D."500" 2. C语言中,若对函数类型未加显示说明,则函数的隐含类型为()类型 A.void B.int C.空D.char 3. C语言程序的三种基本结构是() A. 嵌套结构、递归结构、顺序结构 B.递归结构、循环结构、转移结构 C. 顺序结构、选择结构、循环结构 D.循环结构、转移结构、顺序结构 4. 一个可执行C程序的开始执行点是() A.名为main()的函数B.包含文件的第一函数 C.程序中的第一个语句D.程序中的第一个函数 5. 下面程序段的执行结果是() int a=5, b=4, c=3; if(a>b>c) printf("a>b>c"); else printf("no"); A.a>b>c B.no C.编译错误D.运行错误

6. 合法的数组定义是( ) A .int a[] = “string ” B .int a[5] = {0,1,2,3,4,5} C .char a[] = {0,1,2,3,4,5} D .char s = “string ” 7. 在C 语言中,提供的合法关键字是( ) A .printf B .cher C .case D .Else 8. 在C 语言中,合法的字符常量是( ) A .’\081’ B .’\0’ C .’ab ’ D .”a ” 9. putchar 函数可以向终端输出一个( )。 A)字符串 B)实型变量值 C)整型变量表达式 D)字符或字符型变量 10. 在C 语言中,一个char 变量占( )字节。 A .1 B .2 C .4 D .8 11. 调用scanf(“%d,%d ”,&a,&b);时,正确的键盘输入是( ) A .12,23 B . a=12,b=23 C .12:23 D . 12 23 12. 若有int s[4] = {1,2,3,4};,则s[s[0]+ s[3]-s[2]] 的值是( ) A . 1 B . 2 C . 3 D . 4 13. 在C 语言中,一般1个float 类型变量占4个字节,则设float x[2][4];假设数组 x 开始于内存1000单元,则x[1][2]的存储始于( ) A.1004 B.1012 C.1020 D.1024 14. 下面对C 语言运算符的优先级叙述正确的是( )。 A . !(非) > 关系运算符 >算术运算符 > &&(与) > ||(或) > 赋值运算符 B . !(非) > 算术运算符 > 关系运算符 > &&(与) > ||(或) > 赋值运算符 C . 算术运算符 > 关系运算符 > !(非) > &&(与) > ||(或) > 赋值运算符 D . 算术运算符 >!(非) >关系运算符 > &&(与) > ||(或) > 赋值运算符 15. 若有代数式bc y x 32,则正确的C 语言表达式是( ) A . x^2*y/3*b*c B .x*x/b/c*y/3 C . x*x*y/3*b*c D .x^2*y/3/b/c

汇编语言程序设计期末考试题

汇编语言程序设计期末考试题 学院(系):学号: 姓名: 计分: 一、项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号 内。每小题1分,共10分) 1.CPU发出的访问存储器的地址是( ) A.物理地址 B.偏移地址C.逻辑地址D.段地址 2.将高级语言的程序翻译成机器码程序的实用程序是( ) A.编译程序 B.汇编程序 C.解释程序 D.目标程序 3.DEC BYTE PTR[BX]指令中的操作数的数据类型是( ) A.字 B.双字C.字节D.四字 4.在下列语句中,BUFFER称为( ) BUFFER DB 01H,0AH A.符号 B.变量 C.助记符D.标号 5.串操作指令中,源串操作数的段地址一定在( )寄存器中。 A. CS B. SS C. DS D. ES 6.使计算机执行某种操作的命令是( ) A.伪指令B.指令 C.标号D.助记符 7.将数据5618H存放在存储单元中的伪指令是( ) A. DATA1 DW 1856H B. DATA1 DB 18H,56H C. DATA1EQU 5618H D. DATA1 DB 18H,00H,56H,00H 8.若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=( ) A.1400H B. 77F8H C. 0000H D. 0FFFFH 9.计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。目前,微机中普遍 采用的是( )码。 A. BCD码 B.二进制码 C.ASCII码D.十六进制码 10.用指令的助记符、符号地址、标号和伪指令、宏指令以及规定的格式书写程序的语 言称为( ) A.汇编语言 B.高级语言 C.机器语言 D.低级语言 二、填空题(每空1分,共20分) 1.在8086/8088汇编语言中,有五条串操作指令,其中搜索字符串指令的助记符是______。 2.通常所说的计算机系统包括________和________两大部分。 3.8086/8088存储器分四个段,这四个段的段名所对应的段寄存器分别是________、_____ ___、________、________。 4.现有AX=2000H,BX=1200H, DS=3000H, DI=0002H, (31200H)=50H,(31201H)=02H, (31202H)=40H,请写出下列各条指令独立执行完后有关寄存器及存储单元的内容,并指出标 志位ZF、CF的值。 A.ADDAX,1200H;问AX=________H,ZF=________

《高级语言程序设计》答案

1. 输入两个整数,要求用两个函数求出其最大公约数和最小公倍数,最大公约数和最小公倍数都在主函数中输出。#include int main() { int i,j,t; int max(int,int); int min(int,int); scanf("%d%d",&i,&j); if(i int main() { int max4(int,int,int,int); //对max4的函数声明 int a,b,c,d; scanf("%d%d%d%d",&a,&b,&c,&d); //输入4个数 printf("max=%d\n",max4(a,b,c,d));//调用4个数中的最大者 return 0; } int max4(int a,int b,int c,int d) //定义max4函数 { int max2(int,int); //对max2的函数声明 return max2(max2(max2(a,b),c),d); //调用max2把作为函数值带回main函数} int max2(int a,int b) { return(a>b?a:b); //返回条件表达式的值,即a和b中的大者 } 3. 用递归调用的方法求5!。 #include int main() { int fac(int); int n; scanf("%d",&n);

程序和程序设计语言(教学设计)

第3节程序和程序设计语言 一、教学目标 知识目标:1、掌握计算机程序的概念 2、掌握计算机程序的概念、计算机语言分类及其特征。 技能目标:通过阅读程序,学生主动探寻算法与程序的关系 情感态度与价值观:编程语言没有好坏之分,应选择适合自己的语言深入学习 二、教学重点和难点 重点:1、计算机语言的概念。 2、高级语言的特征 难点:程序的编译与解释 三、教学过程 以九歌机器人七秒成诗引入新课 (一)程序和程序设计 计算机能做很多的事情,包括各种控制活动,它们都是在程序的控制和指挥下进行的,可以这么说:离开了程序,计算机什么也干不了。 1、程序及其特征 (1)程序(Program):是一组操作的指令或语句的序列,是计算机执行算法的操作步骤。 (2)程序的特征: ●解决问题的每一个算法步骤对应着程序中的一个或多个语句实现一个或多个操作, 每一个操作都有执行对象。 ●在程序中被施行操作的对象称为数据。 ●除了有特殊的程序转向控制语句外,程序都是从第一条语句开始顺序执行。 2、程序的基本结构 (1)顺序结构 (2)选择结构 (3)循环结构 3、程序设计:从分析问题、建立模型、设计算法、编写修改程序,一直到程序正确运行的整个过程。

(二)程序设计语言 程序设计语言:是指人们编制程序所使用的计算机语言。 程序设计语言的分类: 机器语言 汇编语言 高级语言 1、机器语言 机器语言(machine language):把直接用二进制代码表示的计算机指令系统称为机器语言。 机器语言特点: ①用机器语言编写的程序可以被计算机直接执行,速度快,占用内存少。 ②编写程序相当繁琐。 ③程序不具有通用性。 2、汇编语言 汇编语言(assembly language):用符号和数字来代替二进制代码的计算机语言称为汇编语言。 汇编语言特点: ①不能被计算机直接执行。 ②编写程序比机器语言方便得多。 ③程序不具有通用性。 3、高级语言 高级语言(high-level language):由一系列按一定语法规则的语句组成(与计算机内部结构无关、通用、用其编写的程序需要“翻译”后才可执行)。 高级语言特点: ①不能被计算机直接执行。 ②易读、易改,编写程序方便。 ③程序通用性好。 补充:Basic语言的发展历程 BASIC(Beginner’s All-purpose Symbolic Instruction Code的缩写,即初学者通用符号指令代码)语言简单易学,适合初学者。

暨南大学 2008高级语言程序设计试卷及答案

暨 南 大 学 考 试 试 卷 一、单项选择题(共20小题,每小题2分,共40分) 1、以下叙述中正确的是___________(C ) A 、C 语言程序总是从第一个的函数开始执行 B 、在 C 语言程序中,要调用的函数必须在main ()函数中定义 C 、C 语言程序总是从main ()函数开始执行 D 、C 语言程序中的main ()函数必须放在程序的开始部分 2、以下值不等于3的表达式是_____________(D ) A 、'D'-'A' B 、'6'-'3' C 、'\011' D 、3+'\0' 3. 能正确表达字母c 为大写字母的C 语言表达式是__________(D ) A )c>=’A’ and c<=’Z’ B )c>=’A’ || c<=’Z’ C )c>=’A’ or c<=’Z’ D )c>=’A’ && c<=’Z’ 4. 设变量a 是整型,f 是实型,i 是双精度型,则表达式10+'a'+i*f 值的数据类型为_____(C ) A )int B )float C )double D )不确定 5. 有函数调用语句:func(rec1,rec2+rec3,(rec4,rec5));,此语句的实参数为________(A )

A、3 B、4 C、5 D、有语法错误 6. 设有语句int a=5,b; b=a>3&&0, a++; 执行后变量b的值为__________(C) A)5 B)6 C)0 D)1 7. 判断两个字符串s1和s2是否相等,应该使用____________(D) A)if (s1= =s2) B)if (s1=s2) C)if (strcpy(s1, s2)) D)if (strcmp(s1,s2)= =0) 8. 下面程序的执行结果是____________(B) main() { int n=1; n++; printf("%d%d%d",n,n++,――n);} A、2 2 1 B、2 2 2 C、2 3 2 D、2 1 1 9. 循环语句while(!E);中的表达式!E等价于________(C) A)E!=0 B)E!=1 C)E==0 D)E==1 10. 设有数组定义: char array []="China"; 则数组array所占的存储空间为___________(C)A)4个字节B)5个字节C)6个字节D)7个字节 11. 下列关于C语言的函数参数说法不正确的是__________(B) A)实参可以是常量,变量或表达式B)形参可以使常量,变量或表达式 C)在函数定义时必须指定形参的类型D)形参与实参的类型应相同或赋值兼容 12. 下列程序执行后的输出结果是__________(A) void func(int *a,int b[]) { b[0]=*a+6; } main() { int a,b[5]; a=0; b[0]=3; func(&a,b); printf("%d\n", b[0]);} A、6 B、7 C、8 D、9 13. 若有语句:int s[3][3],(*p)[3];p=s; 则对s数组元素的引用形式正确的是__________(C)A)p+1 B)*(p+1) C)p[1][2] D)*(p+1)+2 14. 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是________(B) A、地址传递 B、单向值传递

汇编语言程序设计试题A卷

陕西电子信息职业技术学院考试试卷(A) 2011至2012学年度第一学期 期末 班级: 09成教 课程: 汇编语言程序设计 题 号 一 二 三 四 五 合分人 分 数 总 分 (考试时间:120分钟 满分100分) 一、单项选择题(本大题共10小题,每小题2分,共20分) 1. 计算机硬件中最核心的部件是( )。 A. 运算器 B. 主存储器 C. CPU D. 输入 / 输出设备 2. 指令指针寄存器(IP )中存放的内容( )。 A. 指令 B. 指令地址 C. 操作数 D. 操作数地址 3. 寄存器间接寻址方式中,要寻找的操作数位于( )中。 A. 通用寄存器 B. 内存单元 C. 段寄存器 D. 堆栈 4. I/O 端口的编址方式分为统一编址和( )。 A. 独立编址 B. 选择编址 C. 设置编址 D. 控制编址 5. 汇编语言程序中可执行的指令位于( )中。 A. 数据段 B. 堆栈段 C. 代码段 D. 附加数据段 6. 循环结构设计中,要考虑的核心问题是( )。 A. 循环的控制 B. 选择循环结构 C. 设置循环参数初始值 D. 修改循环控制参数 7. 在汇编中用于管理和控制计算机相关功能的指令是( )。 A. 伪指令 B. 机器指令 C. 宏指令 D. 目标指令 班级 姓名 学号 — — — — — — — — — — — — — — — — 密 — — — — — — — — — 封 — — — — — — — — — — 线 — — — — — — — — — — — — — — — —

8. 识别中断源的方法包括查询中断和()共两种类型。 A. 指令中断 B. 故障中断 C. 矢量中断 D. 实时时钟中断 9. CPU与I/O设备之间需要传输的信息通常包括()、状态信息 和控制信息。 A. 编址信息 B. 格式信息 C. 中断信息 D. 数据信息 10. 一般情况下,汇编源程序应由数据段、()和代码段共三个逻 辑段组成。 A. 逻辑段 B. 堆栈段 C. 指令段 D. 类型段 二、名词解释(本大题共5小题,每小题4分,共20分) 11. 微处理器: 12. 寻址方式: 13. 伪指令: 14. 中断源:

语言程序设计》试题四及答案

《C语言程序设计》试题四 一、单项选择题。(每题1分,共20分) 1. C程序的基本单位是:() A.子程序 B.程序 C.子过程 D.函数 2.在C语言中,非法的八进制是:() A.016 B.018 C.017 D.02 3. 不是C语言实型常量的是:() A.55.0 B.0.0 C.55.5 D.55e2.5 4 .字符串“xyzw”在内存中占用的字节数是:() A.6 B.5 C.4 D.3 5. 若已定义f,g为double类型,则表达式:f=1,g=f+5/4的值是:() A.2.0 B.2.25 C.2.1 D.1.5 D.1.5 D.1.5 D.1.5 6. 若有语句char c1=`d`,c2=`g`;printf(“%c,%d\n”,c2-`a`,c2-c1);则输出结果为:() (a的ASCII码值为97) A.M,2 B.G,3 C.G,2 D.D,g 7. 使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据输入是:() A.a=2.2,b=3 B.a=2.2 b=3 C.2.2 3 D.2.2,3 8.表示关系12<=x<=y的C语言表达式为:() A.(12<=x)&(x<=y) B. (12<=x)&&(x<=y) C. (12<=x)|(x<=y) D.(12<=x)||(x<=y) 9.设x=1,y=2,m=4,n=3,则表达式x>y?x:mc4)后,s,t的值为:() A.1,2 B.1,1 C.0,1 D.1,0 12. 语句for(a=0,b=0;b!=100&&a<5;a++)scanf(“%d”,&b); scanf最多可执行次数为:() A.4 B.6 C.5 D.1 13. 对于for(s=2;;s++)可以理解为:()

高级语言程序设计期末试卷

2017年秋季《高级语言程序设计》期末试卷 批次专业:2017年春季-电气工程及其自动化(专升本)课程:高级语 言程序设计(专升本) 1. ( 单选题 ) 能将高级语言编写的源程序转换为目标程序的是 _____________ 。(本题2.0分) A、链接程序 B、解释程序 C、编译程序 D、编辑程序 学生答案:C 标准答案:C 解析: 得分:2 2. ( 单选题 ) C语言程序编译时,程序中的注释部分()。(本题 2.0分) A、参加编译,并会出现在目标程序中 B、参加编译,但不会出现在目标程序中 C、不参加编译,但会出现在目标程序中 D、不参加编译,也不会出现在目标程序中 学生答案:D

标准答案:D 解析: 得分:2 3. ( 单选题 ) C 语言中的标识符只能由字母、数字和下划线三种字符组成 , 且第一个字符( )(本题2.0分) A、 必须为下划线 B、 可以是字母、数字和下划线中的任意一种 C、 必须为字母或下划线 D、 必须为字母 学生答案:C 标准答案:C 解析: 得分:2 4. ( 单选题 ) 一个 C 程序的执行是从( )(本题2.0分) A、 本程序的main函数开始,到main函数结束 B、 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C、 本程序的main函数开始,到本程序文件的最后一个函数结束 D、 本程序文件的第一个函数开始,到本程序main函数结束 学生答案:C 标准答案:C 解析: 得分:2

5. ( 单选题 ) C 语言提供的合法关键字是( ) (本题2.0分) A、swicth B、chan C、case D、default 学生答案:D 标准答案:D 解析: 得分:2 6. ( 单选题 ) C语言程序的基本单位是()(本题2.0分) A、程序行 B、语句 C、函数 D、字符 学生答案:C 标准答案:C 解析: 得分:2 7. ( 单选题 ) 组成C语言程序的是( )。(本题2.0分) A、过程 B、函数

【汇编语言程序设计】试题及答案合集

《汇编语言程序设计试题及答案》合集 汇编语言程序设计试题及答案 1.对于有符号的数来说,下列哪个值最大(D) A:0F8H B:11010011B C:82 D:123Q 2.下列有关汇编语言中标号的命名规则中,错误的是(D) A:通常由字母打头的字符、数字串组成 B:标号长度不能超过31个字符 C:?和$不能单独作为标号 D:.号不可位于标号首 3.8088/8086存储器分段,每个段不超过(D ) A.64K个字 B.32K个字节 C.1兆个字节 D.64K个字节 4.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式(B)A:寄存器寻址B:相对基址变址寻址 C:变址寻址D:基址变址寻址 5.若AX= - 15要得到AX=15应执行的指令是(A ) A.NEG AX B.NOT AX C.INC AX D.DEC AX 6.8086/8088系统执行传送指令MOV时( A) A.不影响标志位 B.影响DF方向标志 C.影响SF符号标志 D.影响CF进位标志 7.若要求一个操作数中的若干位维持不变,若干位置?1?,可以使用(B)A:NOT B:OR C:AND D:XOR 8.下列指令中段默认为堆栈段的是( C) A.MOV AX,[BX+SI+10] B.ADD AX,ES:[SI] C.SUB [BX],[BP][DI] D. MOV DX,[1000H] 9.关于8086/8088微机系列,下列说法哪个是正确的(D) A:一个存储单元由16个二进制位组成,简称字。

B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。 C:在内存空间中,可以无限分配段,且段的大小不受限制。 D:段与段之间可以邻接,也可以重叠。 10.下列关于堆栈的说法,错误的是(D) A:以?先入后出?为原则。 B:栈区最高地址单元的前一个单元为栈底。 C:运行中SP寄存器动态跟踪栈顶位置。 D:压栈和弹出都是以字节为单位。 11.表示过程定义结束的伪指令是( A) A.ENDP B.ENDS C.END D.ENDM 12.BUF1 DB 3 DUP(0,2 DUP (1,2),3) COUNT EQU $-BUF1 符号COUNT等价的值是( B) A.6 B.18 C.16 D.9 13.下列标志位中,可以用来判断计算结果正负的是(B) A:PF B:SF C:DF D:OF 14.下列指令正确的是( CD) A. MOV [100H], [BX] B.MOV DS, ES C. ADD V[BX], CX D.MOV AX, 34H 15.下列哪个寄存器是属于指针寄存器(C) A:SI B:DX C:SP D:ES 二、填空题 (每小题4 分,共 20 分) 1.下列程序段求数组FLD的平均值,结果在AL中。请将程序填写完整(不考虑溢出) FLD DW 10, -20, 30, -60, -71, 80, 79, 56 _LEA SI,FLD______ MOV CX, 8 XOR AX, AX

C.语言程序设计试题试题与答案

C 语言程序设计试卷,C++语言程序设计试题及答案 一、单项选择题(每题1分,共20分) 1. C 语言规定:在一个源程序中, main 函数的位置(C). A. 必须在最开始 B. 必须在系统调用的库函数的后面 C. 可以任意 D. 必须在最后 2. 下面四个选项中,均是合法浮点数的选项是 A. +1e+15e-9.403e2 B. -.6012e-4-8e5 C. 123e1.2e-.4+2e-1 D. -e3.8e-45.e-0 3.若a=-14,b=3,则条件表达式 avb?a:b+1的值为(A)。 A. -14 B.-13 C.3 D.4 4. 已知:intn,i=1,j=2; A.1,2B.1,3C.2,2D.2,3 5. 为了判断两个字符串s1和s2是否相等,应当使用(D) A.if(s1==s2) B.if(s 仁s2) C. if(strcm p( s1,s2)) D. if(strcm p( s1,s2)==0) 6. 以下正确的描述是(B) o (B)。 执行语句n=ivj?i++:j++; 则i 和j 的值是(c).

A. 函数的定义可以嵌套,但函数的调用不可以嵌套。 B. 函数的定义不可以嵌套,但函数的调用可以嵌套。 C. 函数的定义和函数的调用均不可以嵌套。 D. 函数的定义和函数的调用均可以嵌套。 7. 在C 语言中,下面对函数不正确的描述是 A. 当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。 B. 允许函数递归调用。 C. 函数形参的作用范围只是局限于所定义的函数内。 D. 子函数必须位于主函数之前。 8. 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是 A. 该变量只在该复合语句中有效 B. 该变量在该函数中有效 C. 该变量在本程序范围内均有效 D. 该变量为非法变量 9. 以下正确的函数形式是(D)。 A. doublefun(intx,inty){z=x+y;retum z;} B. fun(intx,y){int z; return z;} C. fun(x,y){intx,y;doublez;z=x+y;returnz;} D. doublefun(intx,inty){doublez;z=x+y;returnz;} 10. 以下程序的输出结果是(B)。 #includevstdio.h> (D)。 (A) o

《C语言程序设计》教案设计(清华谭浩强)

第一章C语言及程序设计概述 本章要求: 了解C语言的特点、C语言与其它高级语言相比有什么异同; 了解C程序在PC机上的建立、编译和运行过程; 了解C语言程序设计思想的基本篇; 重点:①C语言的主要特点; ②C语言在PC机上的运行过程及上机操作过程; ③常用算法的应用 难点:无 一、C语言概述 C语言是目前国际上在各种计算机运行较为广泛流行的一种高级语言。 主要表现为: C语言:适合于作为系统描述语言——可用来写系统软件。 具有高级语言的特点,又有低级语言(汇编语言)的特点。 C语言:是AT&T贝尔实验室的Dennis Ritchie在1972年发明的。 C语言:是在B语言的基础上发展起来的。(ALGOL 60) C语言:最早开始是用于UNIX操作系统。(C语言和UNIX是相辅相成的) DBASE 、Microsoft Exel 、 Microsoft Word、PC-DOS等,则是用C语言加上若干汇编子程序编写的。 1983年:——制定的新标准,称为(美国国家标准化协会)ANSI C 1987年:——Turbo C1.0 (Borland) 1988年:TC 1.5(图形和文本窗口) 1989年:——Turbo C2.0 (DOS操作系统、查错、Tiny模式生成com文件) 1991年:——Turbo C++(3.0) 支持windows 3.X 说明:Turbo C语言可以在程序的任何地方嵌入汇编代码,提高速度,可以直接使用存储器和寄存器。 二.C语言的特点 1.语言简洁、紧凑、使用方便、灵活 C语言:——共有32个关键字,9种控制语句; 程序书写自由,主要用小写字母表示; 2.运算符丰富

相关主题
文本预览
相关文档 最新文档