一起答

2016年程序员考试试题

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1. 下列关于结构型变量的定义语句中,错误的是( )

    • A.typedef struct CCC
    • B.#define GGG struct  { char name[20];GGG CCC { char name[20];  int age; int age;  }GGG;           };  GGG abc ; GGG CCC abc;
    • C.struct
    • D.struct  { char name[20]; { char name[20];  int age; int age;  }ccc;        }abc;  CCC abc;
  2. 能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是

    • A.a>=10 or a<=0
    • B.a>=0|a<=10
    • C.a>=10a<=0
    • D.a>=10‖a<=0
  3. 函数调用时,下列说法中不正确的是 ( )

    • A.若用值传递方式,则形式参数不予分配内存
    • B.实际参数和形式参数可以同名
    • C.主调函数和被调用函数可以不在同一个文件中
    • D.函数间传送数据可以使用外部全局变量
  4. 执行下列程序段后,x的位是( )  int a=8,b=7,c=6,x=1;  if(a>6)if(b>7)if(c>8)x=2;else x=3;

    • A.0
    • B.1
    • C.2
    • D.3
  5. 执行下列程序段后,变量y的值为( )  int x[]={1,2,3,4},y,*p=&x[1];  y=(*--P)++;

    • A.1
    • B.2
    • C.3
    • D.4
  6. 计算平方数时不可能引起二义性的宏定义是( )

    • A.#define SOR(x)x*x
    • B.#define SQR(x)(x)*(x)
    • C.# define SQR(x)(x*x)
    • D.# define SQR(x)((x)*(x))
  7. 设有函数调用语句“f(x1,x1+x2,(x1,x2));”,正确的说法是( )

    • A.调用的实际参数是2个
    • B.调用的实际参数是3个
    • C.调用的实际参数是4个
    • D.调用时会出现语法错误。
  8. 设有定义语句“char ch='\77';”,则下列说法中正确的是( )

    • A.ch中含有1个字符
    • B.ch中含有2个字符
    • C.ch中含有3个字符
    • D.语法出错
  9. 以只写方式打开一个二进制文件,应选择的文件操作方式是( )

    • A."a+"
    • B."w+"
    • C."rb"
    • D."Wb"
  10. 函数fopen()的返回值不能是( )

    • A.NULL<
    • B.0
    • C.1
    • D.某个内存地址
  11. 下列数据类型中不属于构造类型的是 ( )

    • A.数组型
    • B.结构型
    • C.共用型
    • D.枚举型
  12. 设有定义语句“int a[]={2, 4,6,8,10},*p=s;”,则值为8的表达式是( )

    • A.*p+3
    • B.*p+4
    • C.*(p+4)
    • D.*(s+3)
  13. 设指针变量p1、 p2已经指向同一个数组的元素,则下列表达式中错误的是( )

    • A.p1=p2
    • B.p1==p2
    • C.p1-p2
    • D.p1+p2
  14. 设有定义语句“char s[]="123";”,则表达式“s[3]”的值是 ( )

    • A.’1’
    • B.’3’
    • C.0
    • D.语法出错
  15. 定义一个具有10个元素的整型数组,应当使用语句( )

    • A.int a[10];
    • B.int a[2,5];
    • C.int a[];
    • D.int *a[10];
  16. 设有“int a=1,b=1;”,“printf("%d,%d",(a++,--b),b-1);”的输出是( )

    • A.1,-1
    • B.1,0
    • C.0,-1
    • D.0,0
  17. 设有定义“int x=8,y,z;”,则执行“y=z=x++,x=y==z;”后,变量x值是( )

    • A.0
    • B.1
    • C.8
    • D.9
  18. 设有定义语句“double d1,d2;”,则表达式“d1=1,d2=d1+5/2”的值是( )

    • A.1
    • B.3
    • C.3.0
    • D.3.5
  19. 正确的C语言标识符是( )

    • A.num(10)
    • B.file bak
    • C.continue
    • D.class+2
  20. 不属于C语言保留字的是( )

    • A.for
    • B.goto
    • C.if
    • D.loop
  21. 执行下列程序后的输出结果是( )  int fun(int x1,int x2)  { int x;x1>x2?(x=3):(x=4);return(x+x1); }  main()  { printf("%d\n",fun( 7,8));}

    • A.9
    • B.10
    • C.11
    • D.12
  22. 下列程序段的输出是( )  typedef union{ long x[2];  short y[4][5];  char z[10];  }TYPE1;  TYPE1 u1;  printf("%d\n", sizeof(u1));

    • A.8
    • B.10
    • C.40
    • D.58
  23. 关于带参数的主函数,下列说法中错误的是( )

    • A.带参数的主函数中,形式参数名称是系统规定的,用户不能自己选择
    • B.带参数的主函数中,第1个形式参数是int型的
    • C.带参数的主函数中,第2个形式参数是字符型数组
    • D.带参数的主函数中,实际参数值只能在执行程序的命令行中获得
  24. 执行下列程序后的输出结果是( )  #define M(a,b)(a)>(b)?(a):(b)  main()  { int i=10,i=15; printf("%d\n",10*M(i,j)); }

    • A.10
    • B.15
    • C.100
    • D.150
  25. 执行下列程序段后的的输出结果是( )  x=9;  while( x>7)  { printf("*");x--;}

    • A.****
    • B.***
    • C.**
    • D.*
  26. 存储整型数据-7856时,在二进制文件和文本文件中占用的字节数分别是( )

    • A.2和2
    • B.2和5
    • C.5和5
    • D.5和2
  27. 对于输入语句scanf("%f,%f",&a,&b);要使变量a、b上的值分别为 1.78和2.48,则正确的输入是( )

    • A.1.78,2.48后跟回车
    • B.1.78 2.48后跟回车
    • C.1.782.48后跟回车
    • D.1.78;2.48后跟回车
  28. 如果某个函数在定义时,省略了存储类型,则默认的存储类型是( )

    • A.auto
    • B.void
    • C.extern
    • D.static
  29. 能正确定义一个用来指向打开文件的文件型指针变量fp的语句是( )

    • A.file fp;
    • B.file *fp;
    • C.FILE fp;
    • D.FILE *fp;
  30. 存储整型数据-7856时,在二进制文件和文本文件中占用的字节数分别是( )

    • A.2和2
    • B.2和5
    • C.5和5
    • D.5和2
  31. 能正确定义一个用来指向打开文件的文件型指针变量fp的语句是( )

    • A.file fp;
    • B.file *fp;
    • C.FILE fp;
    • D.FILE *fp;
  32. 如果某个函数在定义时,省略了存储类型,则默认的存储类型是( )

    • A.auto
    • B.void
    • C.extern
    • D.static
  33. 若有定义语句“int x,*p=&x,**ppx=&px;”,则下列表达式中错误的是( )

    • A.x=*px
    • B.x=**ppx
    • C.px=&ppx
    • D.*ppx=&x
  34. 设有定义语句“int a=10,*p=&a;”,则表达式“a十*p”的值是( )

    • A.10
    • B.20
    • C.100
    • D.语法出错
  35. 若整型变量x的值为8,则下列表达式中值为1的表达式是( )

    • A.x+=x-=x=x
    • B.x%=x-1
    • C.x%=x%=3
    • D.x/=x+x
  36. 字符串"m\x43\\\np\102q"的长度是( )

    • A.7
    • B.9
    • C.15
    • D.16
  37. 下列符号串中,合法的十进制整型常量是( )

    • A.09876
    • B.0x9876
    • C.9.876*e4
    • D.-9876
  38. 设有关变量已经正确定义并赋值,则下列表达式中符合C语言语法规则的是( )

    • A.a_=\12
    • B.a_1=a_2+=12
    • C.int13.5%2
    • D.a=b+7=C-2
  39. 下列符号串中,合法的C语言标识将是( )

    • A._121
    • B.121_
    • C.121
    • D.#121
  40. 在计算机上可以直接运行的程序是写( )

    • A.高级语言程序
    • B.汇编语言程序
    • C.机器语言程序
    • D.C语言源程序
  41. 循环语句“for(x=0, y=0;(y!=123)||( x<4);x++);”的循环执行( )

    • A.无限次
    • B.不确定次
    • C.4次
    • D.3次
  42. 设有如下定义,则正确的叙述为( )  char x[]={"abcdefg"};  char y[]={'a','b','c','d','e','f','g'};

    • A.数组x和数组y等价
    • B.数组x和数组y长度相同
    • C.数组X的长度大于数组y的长度
    • D.数组X的长度小于数组y的长度
  43. 函数调用“strcat(strcpy(strl,str2),str3)”的功能是( )

    • A.将字符串strl复制到字符串str2中后再连接到字符串str3之后
    • B.将字符串strl连接到字符串str2中后再复制到字符率str3之后
    • C.将字符串str2复制到字符串strl中后再将字符串str3连接到字符串strl之后
    • D.将字符串str2连接到字符率strl之后再将字符串strl复制到字符串str3中
  44. 语句"printf("%d\n"strlen("ats\nol2\1\\"));"的输出结果是( )

    • A.11
    • B.10
    • C.9
    • D.8
  45. 合法的数组定义是( )

    • A.int a[]={"string"}
    • B.int a[5]={0,1,2,3,4,5};
    • C.char a={"string"}
    • D.char a[]={0,1,2,3,4,5};
  46. 下列语句中,正确的是( )

    • A.char a[3][]={'abc",'1'};
    • B.char a[][3]={'abc','l'};
    • C.char a[3][]={'a',"1"};
    • D.char a[][3]={"a","1"};
  47. 设有定义:"char s[12]={"string"};" 则printf("%d\n",strlen(s));的输出是( )

    • A.6
    • B.7
    • C.11
    • D.12
  48. 若有下列说明,则数值为4的表达式是( )  int a[12]={ l,2,3,4,5,6,7,8,9,10,11,12 };  char c='a',d, g;

    • A.a[g-c]
    • B.a[4]
    • C.a['d'-'c']
    • D.a['d'-c]
  49. .若有以下程序段,W和k都是整型变量,则不能与该程序段等价的循环语句是( )

    W= k;

    LB: if(w==0) gotO LE;

    w - -;

    printf("*");

    goto LB;

    LE:

    • A. for(w=k;w!=0;W--)printf("*");
    • B.w= k;   While(W--!=0) Prinif(”* ”);
    • C.w= k;   do{w--; prinif(“*”);   } while( W!= 0);
    • D.for(w=k;W;--W) printf("*");
  50. 在C语言中,下列说法中正确的是( )

    • A.不能使用“do语句while(条件)”的循环
    • B.“do语句While(条件)”的循环中必须使用“break”语句退出循环
    • C.“do语句while(条件)”的循环中,当条件非0时将结束循环
    • D.“do语句while(条件)”的循环中,当条件为0时将结束循环
  51. 设x和y为int型变量,则执行下面的循环后,y的值为( )  for(y=l, x=l; y<=50; x="">=10) break;  if(x%2==1){ x+=5; continue;}  X -= 3;  }

    • A.2
    • B.4
    • C.6
    • D.8
  52. 41.假定a和b为int型变量,则执行以下语句后b的值为( )

    • a=1; b=10;
    • do b-=a; a++;    }while<(b--<0);
    • A. A.9
    • B.-2
    • C.-1
    • D.8
  53. 若i、j已定义为int类型,则以下程序段中的内循环体的执行次数是( )  for( i=5; i; i--)  for(j= 0; j<4;j++){……}

    • A.20
    • B.24
    • C.25
    • D.30
  54. 下列语句中,句法错误的是(不考虑语义)( )

    • A.while(x=y)5 ;
    • B.do x++ while(x==10) ;
    • C.while(0);
    • D.do 2;while(a==b);
  55. 下面的程序段所表示的数学函数关系是( )  y=-l;  if( x!= 0)if(x>0)y=l; else y=0 ;  1(x<0) 1(x<0)

    • A.y= { 0(x= 0)
    • B.y={-l(X=0)  1(X>0) 0(X>0)  o(X< 0) -l(X< 0)
    • C.y= {-1(x= 0)
    • D.y={ 1(X= 0)  1(X>0) 0(X>0)
  56. 假定所有变量均已正确定义,下列程序段运行后X的值是( )  a=b=c=0; x=35;  if(!a)x--; else if(b);if(c)x=3;else x=4;

    • A.34
    • B.4
    • C.35
    • D.3
  57. 设x、y、z均为int型变量,则执行以下语句后,x、y, z的值为( )  X=1; y=0; Z=2; y++&&++Z ||++ X;

    • A.2、l、3
    • B.2、0、3
    • C.2、l、3
    • D.2、1、2
  58. 设X、y、Z、t均为int型变量,则执行以下语句后,t的值为( )  x=y=z=1;t=++x||++y&&++z;

    • A.不定值
    • B.2
    • C.l
    • D.0
  59. 设a,b为字符型变量,执行"scanf("a=%c,b=%c",&a,&b)"后使a为'A',b为'B',从键盘上的正确输入是( )

    • A.’A”B’
    • B.’A’,’B’
    • C.A=A,B=B
    • D.a=A b=B
  60. 设有int i=010,j=10;则执行“printf("%d,%d\n",++i,j--);”的输出是( )

    • A.ll, 10
    • B.9,10
    • C.010,9
    • D.10, 9
  61. 设 a=3,b=4执厅‘printf(”%d,%d’,(a,b)(b,a));”的输出是( )

    • A.3,4
    • B.4,3
    • C.3, 3
    • D.4,4
  62. 使用“Scanf("X=%f,y=%f",&x,&y)”,要使 X,y均为1.25,正确的输入是( )

    • A.1.25,1.25
    • B.1.25 1.25
    • C.x=1.25,y=1.25
    • D.X=1.25 y=1.25
  63. 设有无符号短整型变量i、j、k,i值为013,j值为 OX13。计算表达式“k=~i|j>> 3”后,k的值是( )

    • A.06
    • B.0177776
    • C.066
    • D.0177766
  64. 设 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<b)&&!c||1)
  65. 设Ch是Char型变量,其值为’A’,则下面表达式的值是( )  ch=(ch>=’A’&&ch<=’Z’)?(ch+32):ch

    • A.’A’
    • B.’a’
    • C.’Z’
    • D.’z’
  66. 用十进制数表示表达式“12|012”的运算结果是( )

    • A.1
    • B.0
    • C.14
    • D.16
  67. 设字符型变量 a=3,b=6,计算表达式 C=(a^b)<< 2后C的二进制值是( )

    • A.00011100
    • B.00000111
    • C.00000001
    • D.00010100
  68. 表达式“9!=7”的值是( )

    • A.true
    • B.非0值
    • C.0
    • D.1
  69. 下列表达式中,正确的C赋值表达式是( )

    • A.a=7+b+C=a+7
    • B.C=7+b++=a+7
    • C.a=(7+b, b++, a+7)
    • D.a= 7+b, c=a+7
  70. 若有以下定义: char a;int b;float c; double d;则表达式a*b+d-c值的类型为( )

    • A.float
    • B.int
    • C.char
    • D.double
  71. 设a为整型变量,下列C表达式中,不能表达数学关系式:10

    • A.10
    • B.a==11||a==12|| a==13|| a==14
    • C.a>10&&a<15
    • D.!(a<=10)&&!(a>=15)
  72. 若已定义 x和 y为double类型,则表达式: x=l, y=x+3/2结果是( )

    • A.l
    • B.2
    • C.2.0
    • D.2.5
  73. 设整型变量 a、b、c均为2,表达式 a+++b+++c++ 的结果是( )

    • A.6
    • B.9
    • C.8
    • D.表达式出错
  74. 在以下一组运算符中,优先级最高的运算符是( )

    • A.<=
    • B.=
    • C.%
    • D.&&
  75. 设整型变量i的值为3,则计算表达式i---i后表达式的值为( )

    • A.0
    • B.l
    • C.2
    • D.表达式出错
  76. 设有代码“int a=3;”,则执行了语句“a+=a-= a*a;”后,变量a的值是( )

    • A.3
    • B.0
    • C.9
    • D.-12
  77. 设整型变量m,n,a,b,c,d均为1,执行“( m=a>b)&&(n=a>b)"后m,n的值是( )

    • A.0,0
    • B.0,l
    • C.1,0
    • D.1,l
  78. 执行语句“x=(a=3,b=a--);”后,X,a,b的值依次为( )

    • A.3,3,2
    • B.2,3,2
    • C.3,2,3
    • D.2,3,3
  79. 设a为5,执行下列计算后,b的值不为2的是( )

    • A.b=a/2
    • B.b=6-(--a)
    • C.b=a%2
    • D.b=a<3?3:2
  80. 一个char型数据,它的值在内存中存放的是()

    • A.ASCll代码值
    • B.BCD代码值
    • C.内码值
    • D.十进制代码值
  81. 设变量 m,n,a,b,c,d均为0,执行(m=a==b)||(n=c==d)后,m,n的值是( )

    • A.0,0
    • B.0,1
    • C.l,0
    • D.1,1
  82. 字符串”XyZ”在内存占用的字节数是( )

    • A.3
    • B.4
    • C.6
    • D.8
  83. 在以下字符列中,合法的长整型常数是( )

    • A.OL
    • B.4962710
    • C.0.054838743
    • D.2.1869el0
  84. 下列字符列中,可以作为“字符串常量”的是( )

    • A.ABC
    • B.ABC”
    • C.’abc’
    • D.’a’
  85. 在以字节存储字符的系统中,’\n ’在内存占用的字节数是( )

    • A.1
    • B.2
    • C.3
    • D.4
  86. 在C语言中,下列说法中错误的是()

    • A.函数定义可以分为两个部分:函数说明部分和函数体
    • B.主函数可以调用任何非主函数
    • C.任何非主函数可以调用其它任何非主函数
    • D.程序可以从任何函数开始执行
  87. 下列字符列中,能作为单个标识符是()l

    • A.? a
    • B.a=2
    • C.3
    • D.a___3
  88. 不是C语言提供的合法关键字是()

    • A.switch
    • B.begin
    • C.case
    • D.default
  89. 下列字符列中,不是用来表达转义字符是( )

    • A.\\
    • B.\'
    • C.074
    • D.\0
  90. 下列字符中属于键盘符号的是( )

    • A.\
    • B.\n
    • C.\t
    • D.\b
  91. 下列语言中不属于面向过程的语言是( )

    • A.高级语言
    • B.低级语言
    • C.C语言
    • D.PASCAL语言
  92. 二进制语言是属于( )

    • A.面向机器语言
    • B.面向问题语言
    • C.面向过程语言
    • D.面向汇编语言