学历改变命运
24小时客服:4008135555/010-82335555
当前位置:首页> 历年试题 > 自考“C语言程序设计”模拟试题十一

自考“C语言程序设计”模拟试题十一

2007年05月29日    来源:   字体:   打印
成绩查询

  一、单项选择题(共30分,每题1分)

  1.在PC机中,‘\n’在内存占用的字节数是(  )

  A.1   B.2   C. 3   D.4

  2.字符串“ABC”在内存占用的字节数是(   )

  A.3   B.  4   C.6   D.8

  3.在C语言中,合法的长整型常数是(   )

  A.0L  B.4962710   C.0.054838743   D.2.1869 e10

  4.执行语句“x=(a=3,b=a——)”后,x,a,b的值依次是(   )

  A.3,3,2   B.3,2,2   C.3,2,3   D.2,3,2

  5.设有语句int a=3;,则执行了语句a+=a-=a*a后,变量a的值是(  )

  A.3    B.0    C.9   D.-12

  6.设int k=32767;执行k=k+1;后k值为(   )

  A.32768    B.-32768    C.0   D.-1

  7.下列正确的标识符是(        )

  A.hot_do    B.a+b    C.test!    D.%y

  8.设int a=5,使b不为2的表达式是(  )

  A.b=6-(——a)    B.b=a%2    C.b=a/2   D.b=a>3?2:1

  9.执行x=(6*7%8+9)/5;后,x的值为(     )

  A.1     B.2    C.3    D.4

  10.执行语句x=(a=3,b=a——)后,x,a,b的值依次为(   )

  A.3,2,3   B.2,3,2   C.3,3,2   D.3,2,2

  11.设a=-3;执行(a>0)?a:-a;后,a的值为(    )

  A.3    B.1   C.0     D.-3

  12.设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值为(   )

  A.7    B.8    C.9    D.2

  13.下面正确的字符常量是(      )

  A.“c”    B.‘\\’‘    C.’W‘   D. ’‘

  14.若有代数式3ae/bc,则不正确的c语言表达式是(     )

  A.a/b/c*e*3    B.3*a*e/b/c    C.3*a*e/b*c    D.a*e/c/c*3

  15.在C语言中,要求运算数必须是整型的运算符是(   )

  A./    B.++   C.!=    D.%

  16.若有说明语句:char c=‘\72’;则变量c (     )

  A.包含1个字符   B.包含2个字符

  C.包含3个字符  D.说明不合法,c值不确定

  17.sizeof (float)是(      )

  A.一个双精度型表达式        B.一个整型表达式

  C.一种函数调用              D 一个不合法的表达式

  18.设变量a 是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型是(  )

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

  19.若有定义int a[10],*p=a;,则p+5表示(     )

  A.元素a[5]的地址     B.元素a[5]的值

  C.元素a[6]的地址  D.元素a[6]的值

  20.以下与int *q[5];等价的定义语句是(   )

  A.int q[5];    B.int * q     C.int (q[5])    D.int (*q)[5]

  21.若有定义int a[5],*p=a;则对a数组元素地址的正确引用是(   )

  A.P+5   B.*a+1   C.&a+1    D  &a[0]

  22.凡是函数中未指定存储类别的局部变量,其隐含的存储类别是(  )

  A.auto     B.static    C.extern    D.register

  23.若用数组名作为函数调用的实参,传递给形参的是(    )

  A.数组的首地址          B.数组第一个元素的值

  C.数组中全部元素的值    D .数组元素的个数

  24.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是(   )

  A.float    B.int    C.long    D.double

  25.以下对二维数组a的正确说明是(    )

  A.int a[3][]        B.float  a(3,4)

  C.double a[1][4]   D.float a(3)(4)

  26.若有说明int a[3][4];则对a数组元素的正确引用是(A  )

  A.a[2][4]    B.a[1,3]    C.a[1+1][0]    D.a(2)(2)

  26.语句while(!E);中的表达式!E等价于(     )

  A.E= =0   B.E!=1    C.E!=0    D.E= =1

  27.C语言中while和do—while循环的主要区别是(    )

  A. do—while的循环体至少无条件执行一次

  B. While的循环控制条件比do—while的循环控制条件严格

  C. do—while允许从外部转到循环体内

  D. do—while循环体不能是复合语句

  28.为了避免在嵌套的条件语句if—else中产生二义性,C语言规定:else子句总与(    )配对

  A.缩排位置相同的if    B.其之前更近的if

  C.其之后更近的if   D.同一行上的if

  29.判断char型变量ch是否为大写字母的正确表达式是(  )

  A.‘A’<=ch<=‘Z’          B.(ch>=‘A’)&(ch<=‘Z’)

  C.(ch>=‘A’)&&(ch<=‘Z’   D.(‘A’<=ch)AND (‘Z’>=ch)

  30.以下能正确定义整型变量a、b、c并为其赋初值5的语句是(   )

  A.int  a=b=c=5;   B.int  a,c, c=5;

  C.a=5,b=5,c=5;   D.a=b=c=5;

  二、填空(20分,每空1分)

  1.C语言中的实型变量分为两种类型,它们是(   )和(    )。

  2.C语言中的标识符只能由三种字符组成,它们是(    )、(    )和(    )。

  3.若有定义:char c=‘\010’;则变量c中包含的字符个数是(   )。

  4.C语言提供的三种逻辑运算符是(   )、(   )、(   )。

  5.设y为int型变量,请写出描述“y是奇数”的表达式(   )。

  6.设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式(      )。

  7.在C语言中,二维数组元素在内存中的存放顺序是(      )。

  8.若有定义:double x[3][5];则x数组中行下标的下限为(     ),列小标的上限为(     )。

  9.若有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]得到的初值是(     ),a[2][2]得到的初值是(     )。

  10.若自定义函数要求返回一个值,则应在该函数体中有一条(    )语句,若自定义函数要求不返回一个值,则应在该函数说明时加一个类型说明符(    )。

  11.函数中的形参和调用时的实参都是数组名时,传递方式为(   ),都是变量时,传递方式为(    )。

  三、读程序(30分)

  1.  main()

  {int a=2,b=3,c;

  c=a;

  if (a>b) c=1;

  else if (a= =b) c=0;

  else c=-1;

  printf (“%d\n”,c);}         运行结果:

  2.main()

  {int a=2,b=7,c=5;

  switch (a>0)

  { case  1: swithch (b<0)

  {case 1:printf(“@”);break;

  case 2:printf(“!”);break;

  }

  case 0: switch  (c= =5)

  { case 0:printf(“*”);break;

  case 1:printf(“#”),break;

  default:printf(“#”);break;

  }

  default:printf(“&”);               运行结果:

  } printf (“\n”);

  }

  3.#include <stdio.h>

  main()

  { int i;

  for (i=1;i<=5;i++)

  switch (i%5)

  { case 0:printf(“*”);break;

  case 1:printf(“#”);break;

  default:printf(“\n”);

  case 2:printf (“&”);    运行结果:

  }

  }

  4.main()

  { int i,b,k=0;

  for (i=1;i<=5;i++)

  {b=i%2;

  while (b——>=0)  k++;

  }                            运行结果:

  printf (“%d,%d”,k,b);

  }

  5.#include <stdio.h>

  main()

  { char ch[7]={“12ab56”};

  int i,s=0;

  for (i=0;ch[i]>=‘0’&&ch[i]<=‘9’;i+=2)

  s=s*10+ch[i]-‘0’;                      运行结果:

  printf (“%d\n”,s);

  }

  6. main()

  { int a=2,i;

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

  printf (“%4d”,f(a));

  }

  f(int a)

  { int b=0;static int c=3;

  b++;c++;    

  运行结果:

  return(a+b+c);

  }

  四、编写程序(20分)

  1.从键盘输入的10个整数中,找出第一个能被7整除的数。若找到,打印此数后退出循环;若未找到,打印“not exist”。

  2.已有变量定义和函数调用语句:int x=57;isprime(x);函数isprime()用来判断一个整数a是否是素数,若是素数,函数返回1,否则返回0.请编写isprime函数。

  insprime( int a)

  {……};   {……}

关注添加

扫码添加学习顾问

了解考试计划,进行学习规划
备战考试,获取试题及资料

扫码下载APP

海量历年试题、备考资料
免费下载领取

扫码进入微信小程序

每日练题巩固、考前模拟实战
免费体验自考365海量试题

免费题库

新人有礼
关闭