威盛笔试题和面试题答案目汇总

|来源:新高考网

  如下汇总的是威盛公司近年笔试常考的题目,大家敬请关注!
  1.说明下面程序的作用。

  func(char*a,char*b)

  {

  while(*a++=*b++);

  return;

  }

  2.#include

  #define ADD(p) {p++;(*p)++;}

  Add(int *p) {p++;(*p)++;}

  int a[]={0,1,2};

  int main()

  {

  int *p=a;

  ADD(p)

  ADD(p)

  printf("%d,%d,%d",a[0],a[1],a[2]);

  p=a;

  Add(p);

  Add(p);

  printf("%d,%d,%d",a[0],a[1],a[2]);

  }

  输出多少?

  3.说明下面的的表达有没有不同,如果不同,请说明不同在哪里。

  char* s1="hello";

  char s2[]="world";

  4.简述auto,static,register,extern四种存储类型的区别

  5.int count=0;

  int x=2007

  int main()

  {

  while(x)

  {

  count++;

  x=x&(x-1);

  }

  return count;

  }

  问输出返回的count值。

  6.编程给一个程序,输入N,(1<=N<=20)给N*N的矩阵进行Zigzag赋值,

  即:N=0 时,a[0]=0;

  N=4 时,a[4][4]=0 1 5 6

  2 4 7 12

  3 8 11 13

  9 10 14 15

  7.8个台阶,上台阶的人一次最多上3个台阶,问上这个8个台阶有多少种方法?

  8.编写程序,产生一个8*8的数组,随即初始化该数组,然后编程查找该数组中值为1的元

  素,讲该元素的所在的行列都赋为1.

  9.a[2][2]={(0,1),(2,3)};

  char *b=a[0];

  char *b1=a[1];

  char *c=b;

  char *c1=b1;

  printf("%c",b[0]);

  printf("%c",b1[0]);

  printf("%c",c[0]);

  printf("%c",c[1]);

  printf("%c",c1[0]);

  printf("%c",c1[1]);

  10. 下面定义了一个线段的结构体,

  struct line

  {

  int startx;

  int starty;

  int endx;

  int endy;

  };

  line line2[32];

  编程求出每条线段和多少条其他线段相交。

中国点击率最高的一篇文章 !