就业数据资源平台
当前位置:首页 > C语言程序设计
2010年9月计算机等级考试二级C语言模拟试题(一)-1

 笔试部分

  一、选择题


  1.串的长度是( )


  A.串中不同字符的个数


  B.串中不同字母的个数


  C.串中所含字符的个数且字符个数大于零


  D.串中所含字符的个数


  【参考答案】D


  2.以下不属于对象的基本特点的是( )


  A.分类性 B.多态性 C.继承性 D.封装性


  【参考答案】C


  3.下面不属于软件设计原则的是( )


  A.抽象 B.模块化 C.自底向上 D.信息隐蔽


  【参考答案】C


  4.下列SQL语句中,用于修改表结构的是( )


  A.ALTER B.CREATE C.UPDATE D.INSERT


  【参考答案】A


  5.关系模型允许定义3类数据约束,下列不属于数据约束的是( )


  A.实体完整性约束  B.参照完整性约束


  C.域完整性约束   D.用户自定义的完整性约束


  【参考答案】C


 6.非空的循环单链表head的尾结点(由p所指向),满足( )


  A.p->next==NULL B.p==NULL


  C.p->next=head D.p=head


  【参考答案】C


  7.对建立良好的程序设计风格,下面描述正确的是( )


  A.程序应简单、清晰、可读性好


  B.符号名的命名只要符合语法


  C.充分考虑程序的执行效率


  D.程序的注释可有可无


  【参考答案】A


  8.在软件生产过程中,需求信息的给出是( )


  A.程序员 B.项目管理者 C.软件解析设计人员 D.软件用户


  【参考答案】D


  9.NULL是指( )


  A.0 B.空格 C.未知的值或无任何值 D.空字符串


  【参考答案】C


  10.下列说法中,不属于数据模型所描述的内容的是( )


  A.数据结构 B.数据操作 C.数据查询 D.数据约束


  【参考答案】C


  11.在C语言中,退格符是( )


  A.\n  B.\t  C.\f  D.\b


  【参考答案】D


 12.若已定义:int a=25,b=14,c=19;以下三目运算符(?:)所构成语句的执行后

  a<=25 &&b--<=2 &&c? printf(″***a=%d,b=%d,c=%d\n″,a,b, c):printf(″###a=%d,b=%d,c=%d\n″,a,b,c);程序输出的结果是( )


  A.* * *a=25,b=13,c=19 B.* * *a=26,b=14,c=19


  C.### a=25,b=13,c=19 D.### a=26,b=14,c=19


  【参考答案】C


  13.若运行以下程序时,从键盘输入ADescriptor(表示回车),则下面程序的运行结果是( )


  #include


  main()


  { char c;


  int v0=1,v1=0,v2=0;


  do{ switch(c=getchar())


  { case ′a′:case′A′:


  case′e′:case′E′:


  case′i′:case′I′:


  case′o′:case′O′:


  case′u′:case′U′:v1+=1;


  default:v0+=1;v2+=1;


  }


  } while(c!=′\n′);


  printf(″v0=%d,v1=%d,v2=%d\n″,v0,v1,v2);


  }


  A.v0=7,v1=4,v2=7   B.v0=8,v1=4,v2=8


  C.v0=11,v1=4,v2=11 D.v0=13,v1=4,v2=12


  【参考答案】D


 14.执行下面的程序段后,变量k中的值为( )


   int k=3,s[2];


   s[0]=k;k=s[1]*10;


  A.不定值 B.33 C.30 D.10


  【参考答案】A


  15.有如下程序段


  int a=14,b=15,x;


  char c=′A′;


  x=(a&&b)&&(c<′B′);


  执行该程序段后,x的值为( )


  A.ture  B.false  C.0  D.1


  【参考答案】D


  16.以下函数返回a所指数组中最大值所在的下标值


  fun(int *a,int n)


  { int i,j=0,p;


  p=j;


  for(i=j;i

  if(a[i]>a[p])_______


  return(p);


  }


  在下划线处应填入的内容是( )


  A.i=p  B.a[p]=a[i]  C.p=j  D.p=i


  【参考答案】D


 17.有如下程序

  main()


  { char s[ ]=″ABCD″,*p;


  for(p=s+1;p

  }


  该程序的输出结果是( )


  A.ABCD B.A


  BCD B


  CD C


  D D


  C.B D.BCD


  C CD


  D D


  【参考答案】D


  18.以下正确的说法是( )


  A.定义函数时,形参的类型说明可以放在函数体内


  B.return后边的值不能为表达式


  C.如果函数值的类型与返回值类型不一致,以函数值类型为准


  D.如果形参与实参类型不一致,以实参类型为准


  【参考答案】B


19.结构化程序设计的三种基本逻辑结构是( )


  A.选择结构、循环结构和嵌套结构


  B.顺序结构、选择结构和循环结构


  C.选择结构、循环结构和模块结构


  D.顺序结构、递归结构和循环结构


  【参考答案】C


  20.设有如下定义


  struck sk


  { int a;


  float b;


   } data;


   int * p;


  若要使p指向data中的a域,正确的赋值语句是( )


  A.p=8a; B.p=data.a; C.p=&data.a; D.*p=data.a;


  【参考答案】C


  21.在下述程序中,判断i>j共执行的次数是( )


  main()


  { int i=0,j=10,k=2,s=0;


  for(;;)


  { i+=k;


  if(i>j)


  { printf(″%d″,s);


  break;


  }s+=i;


  }


  }


  A.4  B.7  C.5  D.6


  【参考答案】D


22.以下程序的输出是( )

  struct st


  { int x;int *y;} *p;


  int dt[4]={10,20,30,40};


  struct st aa[4]={50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0]};


  main()


  { p=aa


  printf(″%d\n″,++(p->x));


  }http://www.Examw.com


  A.10  B.11  C.51  D.60


  【参考答案】C


  23.下列数据中,不合法的C语言实型数据的是( )


  A.0.123  B.123e3  C.2.1e3.5  D.789.0


  【参考答案】C


  24.设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为( )


  A.int  B.float  C.double  D.不确定


  【参考答案】C


25.设以下变量均为int类型,表达式的值不为7的是( )


  A.(x=y=6,x+y,x+1)    B.(x=y=6,x+y,y+1)


  C.(x=6,x+1,y=6,x+y)   D.(y=6,y+1,x=y,x+1)


  【参考答案】C


  26.若变量a是int型,并执行语句:a=′A′+1.6;,则正确的叙述是( )


  A.a的值是字符C


  B.a的值是浮点型


  C.不允许字符型和浮点型相加


  D.a的值是字符′A′的ASCII值加上1


  【参考答案】D


  27.有如下程序


  main()


  {


  int x=23;


  do


  { printf(″%d″,x--);} while(!x);


  }


  该程序的执行结果是( )


  A.321 B.23 C.不输出任何内容 D.陷入死循环


  【参考答案】B


 28.若变量c为char类型,能正确判断出c为小写字母的表达式是( )

  A.′a′<=c<=′z′


  B.(c>=′a′)||(c<=′z′)


  C.(′a′<=c)and(′z′>=c)


  D.(c>=′a′)&&(c<=′z′)


  【参考答案】D


  29.下面程序段的运行结果是( )


  char str[]=″ABC″,*p=str;


  printf(″%d\n″,*(p+3));


  A.67 B.0


  C.字符′C′的地址 D.字符′C′


  【参考答案】B


  30.有以下语句,则对a数组元素的引用不正确的是(0≤i≤9)( )


  int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;


  A.a[p-a] B.*(&a[i]) C.p[i] D.*(*(a+i))


  【参考答案】D


  31.有以下程序


  fun(int x,int y,int z)


  { z=x*y;}


  main()


  {中 华 考 试 网


  int a=4,b=2,c=6;


  fun(a,b,c);


  printf(″%d″,c);


  }


  程序运行后的输出结果是( )


  A.16  B.6  C.8  D.12


  【参考答案】B


 32.以下叙述中不正确的是( )


  A.预处理命令都必须以#号开始


  B.在程序中凡是以#号开始的语句行都是预处理命令行


  C.宏替换不占用运行时间,只占编译时间


  D.在以下定义是正确的:#define PI 3.1415926


  【参考答案】D


  33.下面程序段的运行结果是( )


  char *p=″abcdefgh″;


  p+=3;


  printf(″%d\n″,strlen(strcpy(P,″ABCD″)));


  A.8  B.12  C.4  D.7


  【参考答案】C


  34.已知函数的调用形式:fread(buf,size,count,fp),参数buf的含义是( )


  A.一个整型变量,代表要读入的数据项总数


  B.一个文件指针,指向要读的文件


  C.一个指针,指向要读入数据的存放地址


  D.一个存储区,存放要读的数据项


  【参考答案】C


  35.C语言规定,在一个源程序中,main函数的位置( )


  A.必须在最开始 B.必须在系统调用的库函数的后面


  C.可以任意   D.必须在最后


  【参考答案】C

就业数据资源平台