首页 > 就业 > 笔试

设备硬件开发师笔试题

设备硬件开发师笔试题



设备硬件开发师笔试题

选择题

  1:下述程序执行后的输出结果是( )。

  #include

  main()

  {

  int a[]={2,4,6,8,10};

  int y=1,x,*p;

  p=&a[1];

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

  y+=*(p+x+;

  printf("%d ",y);

  }

  A.17

  B.18

  C.19

  D.20

  2:C 语句“ x*=y+2 ;”还可以写作

  A.x=x*y+2;

  B.x=2+y*x;

  C.x=x*(y+2);

  D.x=y+2*x;

  3:定义宏将两个 float 类型变量中的数据交换,下列写法中最好的是

  A.# define jh(a,b) t=a;a=b;b=t;

  B.# define jh(a,b) {float t;t=a;a=b;b=t;}

  C.# define jh(a,b) a=b;b=a;

  D.# define jh(a,b,t) t=a;a=b;b=t;

  4:下述程序执行后的输出结果是

  #include

  main()

  {

  int x='f';

  printf("%c ",'a'+(x-'a'+1));

  }

  A.G

  B.H

  C.I

  D.J

  5:在某文件中,若全局变量与局部变量同名,则

  A.视为同一个变量

  B.变量作用域不确定

  C.不允许

  D.允许

  6:常数的书写格式决定了常数的类型和值, 0x1011 是

  A.8 进制整型常量

  B.字符常量

  C.16 进制整型常数

  D.2 进制整型常数

  7:设double * p[6];则

  A.p是指向double型变量的指针

  B.p是double型数组

  C.p是指针数组,其元素是指向double型变量的指针

  D.p是数组指针,指向double型数组

  8:对于do-while语句,错误的说法是

  A.先执行循环体后判断循环条件

  B.循环体至少要执行一次

  C.循环体有可能一次也不执行

  D.循环体中可以包含若干条语句

  9:求一个双精度实数的绝对值,应该调用函数

  A.sqrt

  B.pow

  C.abs

  D.fabs

  10:以下叙述中不正确的是

  A.在不同的函数中可以使用相同名字的变量

  B.函数中的形式参数是局部变量

  C.在一个函数内定义的变量只在本函数范围内有效

  D.在一个函数内的复合语句中定义的变量在本函数范围内有效

  11:设有定义“int a=3, b,*p=&a;”,则下列语句中使 b不为3的语句是

  A.b=* &a;

  B.b=* p;

  C.b=a;

  D.b=*a;

  12:下列程序的运行结果是( )

  main( )

  { int a[][4]={1,3,5,7,9,11,13,15,17,19,21,23};

  int (*p)[4],i=2,j=1;

  p=a;

  printf(″%d ″,*(*(p+i)+j));

  }

  A.9

  B.11

  C.17

  D.19

  13:数据-35.78在文本文件中占用的字节个数是

  A.4

  B.5

  C.6

  D.8

  14:下列说法中错误的是

  A.C语言中循环嵌套的层数没有限定

  B.C语言中的内部函数只能在本文件中被调用

  C.用typedef语句定义的数据类型名称必须是大写字母

  D.C语言中的`continue语句,可以通过改变程序的结构而省略

  简答题

  15:已知:无序数组,折半查找,各元素值唯一。函数原型是:Binary_Seach(int array[], int iValue, int iCount),array是数组,在里面用折半查找的方法找等于iValue的值,找到返回1否则0,iCount是元素个数。

  16:写一个方法,在JAVA,C/C++源代码中,检查花括弧(是“(”与 “)”,“{”与“}”)是否匹配,若不匹配,则输出不匹配花括弧所在的行与列。

  17:输入一个五位以内的正整数,(1)判断它是一个几位数;(2)请按序输出其各位数字;(3)逆序输出其各位数字。

  如输入:56439,输出:5位数

  5,6,4,3,9

  9,3,4,6,5

  18:下面的代码有什么问题?

  char *_strdup( const char *strSource )

  {

  static char str[MAX_STR_LEN];

  strcpy(str, strSource);

  return str;

  }

  19:输入一字符串,检查是否回文 (回文是指正反序相同,如,LeveL),若是则输出“Yes”,否则输出“No”。

  20:阅读下列程序段,简述其主要功能。

  #include

  void main()

  {

  FILE*fpd1, *fpd2;

  char ch;

  fpd1=fopen(“d1.dat”,“r”) ;
fpd2=fopen(“d2.dat”,“w”) ;

  while(fscanf(fpd1,“%c”,&ch)!=EOF)

  if (ch>='A'&& ch <='Z' ‖ ch>='a'&& ch<='z')

  fprintf(fpd2,“%c”,ch);

  fclose(fpd1);

  fclose(fpd);

  }

  21:试将下列递归过程改写为非递归过程。

  void test(int &sum)

  { int x;

  scanf(x);

  if(x=0) sum=0 else {test(sum); sum+=x;}

  printf(sum);

  }

  22:对给定记录的序号k(1

  23:Write a program to remove all trailing blanks and tabs from each line of input, and to delete entirely blank lines.

  24:int func(int a)

  {

  int b;

  switch(a)

  {

  case 1: 30;

  case 2: 20;

  case 3: 16;

  default: 0

  }

  return b;

  }

  则func(1)=?

  25:Write a function reverse(s) that reverses the character string s . Use it to write a program that reverses its input a line at a time.

相关内容

热门阅读
随机推荐