天天范文

位置:首页 > 求职简历 > 笔试题目

威盛笔试题目(软件部门)威盛

威盛笔试题目(软件部门)威盛
留给后人看看吧。积攒rp。


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四种存储类型的区别


count=0;
int x=xx

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];
编程求出每条线段和多少条其他线段相交。