⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2002年4月二级笔试试题c.txt

📁 c++的大量习题,对二级考试大有帮助. 希望大家满意.
💻 TXT
📖 第 1 页 / 共 2 页
字号:
ps=s;

则对s数组元素的正确引用形式是

A) ps+1            B) *(ps+3)      C) ps[0][2]    D) *(ps+1)+3

(44) 以下程序的输出结果是

main()

{  int  b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;

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

  for(j=i;j<=i;j++) t=t+b[i][b[j][j]];

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

}

 A) 3          B) 4            C) 1            D) 9

(45) 以下程序的输出结果是

#include  <stdio.h>

#include  <string.h>

main()  

{  char  b1[8]="abcdefg",b2[8],*pb=b1+3;

while (--pb>=b1)  strcpy(b2,pb);

printf("%d\n",strlen(b2));

}

A) 8           B) 3            C) 1            D) 7

(46) 在说明语句:int *f();中,标识符f代表的是

A) 一个用于指向整型数据的指针变量

B) 一个用于指向一维数组的行指针

C) 一个用于指向函数的指针变量

D) 一个返回值为指针型的函数名

(47) 不合法的main函数命令行参数表示形式是

A) main(int   a,char  *c[])        B) main(int  arc,char   **arv)

C) main(int   argc,char  *argv)    D) main(int  argv,char  *argc[])

(48) 以下程序的输出的结果是

int x=3;

main()

{   int i; 

for (i=1;i<x;i++)  incre();

}

ncre()

{   staic   int  x=1;

x*=x+1;

printf("  %d",x);

}

A) 3  3            B) 2   2        C) 2   6        D) 2   5

(49) 若以下定义:

struct  link 

{   int  data;

struck  link  *next;

}a,b,c,*p,*q;

且变量a和b之间已有如下图所示的链表结构:

a                    b

data  next           data   next 

┌──┬──┐       ┌──┬──┐

│ 5  │    ┼──→ │ 9  │ \0 │

└──┴──┘       └──┴──┘

↑p

c

data   next 

┌──┬──┐

│ 7  │    │  

└──┴──┘

↑q

指针p指向变量a,q指向变量c。则能够把c插入到a和b 之间并形成新的链表的语句组是:

A) a.next=c;  c.next=b;          B) p.next=q;  q.next=p.next;

C) p->next=&c; q->next=p->next;  D) (*p).next=q;  (*q).next=&b;

(50) 设有以下说明语句

typedef  struct  

{   int  n;

char  ch[8];

}PER;

则下面叙述中正确的是

A) PER 是结构体变量名                  B) PER是结构体类型名

C) typedef  struct 是结构体类型    D) struct 是结构体类型名

二、填空题(每空2分,共40分)
请将每一个空的正确答案写在答案卡上,答在试卷上不得分。

(1) 为了要将当前盘目录中的可执行程序ABC.EXE的输出结果存放到当前盘当前目录中的文件OUT.TXT中,则应使用的DOS命令为【1】 。

(2) 计算机网络分为广域网和局域网,因特网属于【2】 。

(3) 要想在当前目录下方便地执行C盘\UCDOS目录中的程序,就应该先执行预设搜索路径的命令,该DOS命令为【3】 。

(4) 要查看当前目录中扩展名为.DAT的所有文件目录,应该使用的DOS 命令为【4】 。

(5) 在Windows环境下,当进行复制操作时,其复制的内容将存放在【5】中 

(6) 若从键盘输入58,则以下程序输出的结果是 【6】 。

main()

{ int  a;

scanf("%d",&a);

if(a>50)  printf("%d",a);

if(a>40)  printf("%d",a);

if(a>30)  printf("%d",a);

}

(7) 以下程序的输出结果是【7】 。

main()  

{   int  a=177;

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

}

(8) 以下程序的输出结果是【8】 。

 main()

{ int  a=0

a+=(a=8);

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

} 

(9) 以下程序输出的结果是【9】 。

main()

{   int  a=5,b=4,c=3,d;

d=(a>b>c);

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

}

(10) 以下定义的结构体类型拟包含两个成员,其中成员变量info用来存入整形数据;成员变量link是指向自身结构体的指针.请将定义补充完整。

struct  node

  {int  info;

     【10】  link;

}

(11) 以下程序的输出结果是【11】 。

main() 

  {int  s,i;

    for(s=0,i=1;i<3;i++,s+=i);

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

}

(12) 以下程序的输出结果是【12】 。

main()

 { char  *p="abcdefgh",*r;

   long  *q;

   q=(long*)p;

   q++;

   r=(char*)q;

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

}

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

main()

{  char   s[]="abcdef";

   s[3]=‘\0';

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

}

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

main()

{ int  x=0;

sub(&x,8,1);

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

}

sub(int  *a,int  n,int   k)

{  if(k<=n)  sub(a,n/2,2*k);

*a+=k;

}

(15) 设有如下宏定义

#define   MYSWAP(z,x,y)   {z=x;  x=y; y=z;}

以下程序段通过宏调用实现变量a、b内容交换,请填空。

float  a=5,b=16,c;

MYSWAP(  【15】 ,a,b);

(16) 以下程序用来统计文件中字符个数。请填空。

 #include  "stdio.h"

 main()

 { FILE  *fp;   long  num=0L;

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

    {  pirntf("Open error\n");  exit(0);}

     while( 【16】 )

     { fgetc(fp); num++;}

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

     fclose(fp);

 }

(17) 以下程序中,select 函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。

#define   N   3

#define   M   3

 select(int  a[N][M],int   *n)

 {  int  i,j,row=1,colum=1;

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

for(j=0;j<M;j++)

if(a[i][j]>a[row][colum]){row=i;colum=j;}

*n= 【17】;

return 【18】;

 }

 main()

 {int  a[N][M]={9,11,23,6,1,15,9,17,20},max,n;

  max=select(a,&n);

  printf("max=%d,line=%d\n",max,n);

 }

(18) mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回。请填空。

int  mystrlen(char  *str)

{ int  i;

for(i=0; 【19】!=‘\0';i++);

return(【20】);

}

 

基础部分和C语言程序设计试题
参考答案及评分标准
一、选择题(⑴-(40)题每题1分,(41)-(50)题每题2分,其60分)
(1)  D
 (2)  B
 (3)  A
 (4)  A
 (5)  B
 
(6)  C
 (7)  B
 (8)  B
 (9)  C
 (10)              C
 
(11)              D
 (12)              D
 (13)              C
 (14)              A
 (15)              B
 
(16)              B
 (17)              D
 (18)              C
 (19)              D
 (20)              A
 
(21)              D
 (22)              B
 (23)              D
 (24)              C
 (25)              D
 
(26)              A
 (27)              A
 (28)              B
 (29)              B
 (30)              D
 
(31)              A
 (32)              C
 (33)              B
 (34)              B
 (35)              A
 
(36)              A
 (37)              A
 (38)              B
 (39)              A
 (40)              A
 
(41)              C
 (42)              A
 (43)              C
 (44)              B
 (45)              D
 
(46)              D
 (47)              C
 (48)              C
 (49)              C
 (50)              B
 

二、填空题答案(每空2分,共40分)
(1)  【1】 ABC >OUT.TXT    或者 ABC.EXE>OUT.TXT

(2)  【2】 广域网

(3)  【3】 PATH C:\UCDOS   或其它等效命令

(4)  【4】 DIR *.DAT 或 DIR *.DAT/P 或 DIR *.DAT/W 或带其它参数也可

(5)  【5】 剪贴板

(6)  【6】 585858

(7)  【7】 261

(8)  【8】 16

(9)  【9】 0

(10)     【10】 struct node *

(11)     【11】 5

(12)     【12】 efgh

(13)     【13】 abc

(14)     【14】 7

(15)     【15】 c

(16)     【16】 !feof(fp)

(17)     【17】 row

(18)     【18】 a[row][colum]

(19)     【19】 *(str+i)str[i]

(20)     【20】 i

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -