首页>计算机等级考试>模拟试题>正文
2007年计算机二级C语言模拟试题(4)

www.zige365.com 2007-10-26 11:40:40 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

(41)下列程序的输出结果是
main()
{ int a[5]={2,4,6,8,10},*p,**k;
p=a;
k=&p;
printf("%d",*(p++));
printf("%d\n",**k);
}
A)4
B)22
C)24
D)46
正确答案:  C

(42)若有以下结构体,则正确的定义或引用的是
struct Test
{int x;
int y;
} vl;
A)Test.x=10;
B)Test v2;v2.x=10;
C)struct v2;v2.x=10;
D)struct Test v2={10};
正确答案:  D

(43)下面程序段的运行结果是
char *p="abcdefgh";
p+=3;
printf("%d\n",strlen(strcpy(p,"ABCD")));
A)8
B)12
C)4
D)7
正确答案:  C

(44)下面判断正确的是
A)char *a="china";等价于 char *a;*a="china";
B)char str[5]={"china"};等价于char str[]={"china"};
C)char *s="china";等价于 char *s;s="china";
D)char c[4]="abc",d[4]="abc";等价于char c[4]=d[4]="abc";
正确答案:  C

(45)下列函数的运行结果是
main()
{ int i=2,p;
int j,k;
j=i;
k=++i;
p=f(j,k);
printf("%d",p);
}
int f(int a,int b)
{ int c;
if(a>b)c=1;
else if(a==b)c=0;
else c=-1;
return(c);
}
A)-1
B)1
C)2
D)编译出错,无法运行
正确答案:  A

(46)在位运算中,操作数左移一位,其结果相当于
A)操作数乘以2
B)操作数除以2
C)操作数除以4
D)操作数乘以4
正确答案:  A

(47)若调用fputc函数输出字符成功,则其返回值是
A)EOF
B)1
C)0
D)输出的字符
正确答案:  D

(48)已知函数的调用形式:fread(buf,size,count,fp),参数buf的含义是
A)一个整型变量,代表要读入的数据项总数
B)一个文件指针,指向要读的文件
C)一个指针,指向要读入数据的存放地址
D)一个存储区,存放要读的数据项
正确答案:  C

(49)有如下程序:
#define   N     2
#define   M     N+1
#define   NUM  2*M+1
main()
{
int i;
for(i=1;i<=NUM;i++)printf("%d\n",i);
}
该程序中的for循环执行的次数是
A)5
B)6
C)7
D)8
正确答案:  B

(50)以下定义中,标识符prt int(*prt)[3]
A)定义不含法
B)是一个指针数组名,每个元素都是一个指向整数变量的指针
C)是一个指针,它指向一个具有三个元素的一维数组
D)是一个指向整型变量的指针
正确答案:  D

二 、填空题
(1)在树形结构中,树根结点没有 【1】 。
正确答案:  1.(前件)

(2)Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向 【2】 的设计方法。
正确答案:  1.(数据结构)

(3)面向对象的模型中,最基本的概念是对象和 【3】 。
正确答案:  1.(类)

(4)软件设计模块化的目的是 【4】 。
正确答案:  1.(降低复杂性)

(5)数据模型按不同应用层次分成3种类型,它们是概念数据模型、 【5】 和物理数据模型。
正确答案:  1.(逻辑数据模型)

(6)以下程序段的输出结果是【6】。
main ()
{int a=2,b=3,c=4;
a*=16+(b++)-(++c);
printf("%d",a);
}
正确答案:  1.(28)

(7)若变量n中的值为24,则print()函数共输出【7】行,最后一行有【8】个数。
void print (int n,int aa[])
{int i;
for (i=1;  i<1;i++)
{printf ("%6d", aa[i]);
if(!(i%5)) printf ("\n");
}
printf ("\n");

正确答案:  1.(5) 2.(4)

(8)调用C语标准库函数时要求用【9】命令。
正确答案:  1.(include)

(9)stract函数的作用是【10】。
正确答案:  1.(连接两个字符数组中的字符)

(10)C语言程序的注释可以出现在程序中的任何地方,一个注释以【11】作为开始和结束。
正确答案:  1.(/*  */)

(11)设二进制数A是00101101,若想通过异或运算A^B使A的高4位取反,低4位不变,则二进制数B应是
【12】 。
正确答案:  1.(11110000)

(12)若已知a=10,b=20,则表达式!a<b的值为【13】 。
正确答案:  1.(1)

(13)设i,j,k均为int型变量,则执行完下面的for语句后,k的值为【14】 。
for(i=0, j=10; i<=j; i++, j--)k=i+j;
正确答案:  1.(10)

(14)下面函数的功能是:找出一维数组元素中最大的值和它所在的下标,最大值的和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。请填空。
#include<stdlib.h>
#include<stdio.h>
void fun(int a[],int n, int *max, int *d)
{ int i;
*max=a[0];
*d=0;
for(i=0;【15】;i++)
if(*max<【16】)
{*max=a[i];*d=i;}
}
main()
{ int i, x[20], max,  index, n=10;
randomize();
for(i=0;i<n;i++)
{
x[i]=rand()%50; printf("%4d",x[i]);
}
printf("\n");
fun(x,n,&max,&index);
printf("Max=%5d,Index=%4d\n",max,index);
}
正确答案:  1.(i<n) 2.(a[i])

(15)以下程序的输出结果是【17】。
void fun()
{ static int a=0;
a+=2; printf("%d",a);
}
main()
{ int cc;
for(cc=1;cc<4;cc++)fun();
printf("\n");
}
正确答案:  1.(2 4 6)

(16)以下程序的输出结果是【18】 。
#define MAX(x,y)(x)>(y)?(x):(y)
main()
{ int a=5,b=2,c=3,d=3,t;
t=MAX(a+b,c+d)*10;
printf("%d\n",t);
}
正确答案:  1.(7)

(17)用以下语句调用库函数malloc,使字符指针st指向具有11个字节的动态存储空间,请填空。
st=(char*)【19】 ;
考生答案:  1.()
正确答案:  1.(malloc(11)或malloc(sizeof(char)*11))

 (18)以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。
FILE *myf; long f1;
myf=【20】 ("test.t","rb");
fseek(myf,0,SEEK_END); f1=ftell(myf);
fclose(myf);
printf("%d\n",f1);
正确答案:  1.(fopen)

本新闻共2页,当前在第2页  1  2  

我要投稿 新闻来源: 编辑: 作者:
相关新闻
2007年计算机二级VB模拟试题及答案(13)
2007年计算机二级VB模拟试题及答案(11)
2007年计算机二级VB模拟试题及答案(10)
2007年计算机二级VB模拟试题及答案(9)
2007年计算机二级VB模拟试题及答案(8)
2007年计算机二级VB模拟试题及答案(7)