一个公司给我发的笔试题,大家看看

liuqian0415 2006-12-05 09:09:27
一、判断题(对的写T,错的写F并说明原因,每小题4分,共20分)

1、有数组定义int a[2][2]={,{2,3}};则a[0][1]的值为0。(T )

2、int (*ptr) (),则ptr是一维数组的名字。( )

3、指针在任何情况下都可进行>,<,>=,<=,==运算。( )

4、switch(c) 语句中c可以是int ,long,char ,float ,unsigned int 类型。( )

5、#define print(x) printf("the no, "#x",is ")


二、填空题(共30分)

1、在windows下,写出运行结果,每空2分,共10分。

char str[ ]= "Hello";

char *p=str;

int n=10;

sizeof(str)=( )

sizeof(p)=( )

sizeof(n)=( )

void func(char str[100])

{ }

sizeof(str)=( )

2、void setmemory(char **p, int num)

{ *p=(char *) malloc(num);}

void test(void)

{ char *str=NULL;

getmemory(&str,100);

strcpy(str,"hello");

printf(str);

}

运行test函数有什么结果?( )10分



3、设int arr[]={6,7,8,9,10};

int *ptr=arr;

*(ptr++)+=123;

printf("%d,%d",*ptr,*(++ptr));

( ) 10分


二、编程题(第一小题10,第二小题20分)

1、 不使用库函数,编写函数int strcmp(char *source, char *dest)

相等返回0,不等返回-1;


2、 写一函数int fun(char *p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1

三、问答题(20分)
1、文件系统编成、网络编成、数据库编程、线程进程编成各举出你认为最好的方法,并说出为什么最好?
2、写出访问外设如拨号、串口操作各一个函数?
...全文
503 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
Java_java2005 2006-12-05
  • 打赏
  • 举报
回复
asusa3a(从此告别懒惰)(心不外浮气不外弛)的水平实在是太差了,汗一个,几乎没有答对的,怪不得CSDN上大多数人都是拿着民工的工资,现在基本上明白了
asusa3a 2006-12-05
  • 打赏
  • 举报
回复
1、有数组定义int a[2][2]={,{2,3}};则a[0][1]的值为0。//F 根据编译器来定,不然值未知

2、int (*ptr) (),则ptr是一维数组的名字。//F(int型的指针函数)

3、指针在任何情况下都可进行>,<,>=,<=,==运算。(f)

4、switch(c) 语句中c可以是int ,long,char ,float ,unsigned int 类型。(不可以float)

5、#define print(x) printf("the no, "#x",is ")//没有转义字符


二、填空题(共30分)

1、在windows下,写出运行结果,每空2分,共10分。

char str[ ]= "Hello";

char *p=str;

int n=10;

sizeof(str)=(1 )

sizeof(p)=( 1)

sizeof(n)=(4 )

void func(char str[100])

{ }

sizeof(str)=(1 )

2、void setmemory(char **p, int num)

{ *p=(char *) malloc(num);}

void test(void)

{ char *str=NULL;

getmemory(&str,100);

strcpy(str,"hello");

printf(str);

}

运行test函数有什么结果?(hello )10分



3、设int arr[]={6,7,8,9,10};

int *ptr=arr;

*(ptr++)+=123;

printf("%d,%d",*ptr,*(++ptr));//6 130

( ) 10分


二、编程题(第一小题10,第二小题20分)

1、 不使用库函数,编写函数int strcmp(char *source, char *dest)

相等返回0,不等返回-1;
int strcmp(char *source, *source)
{
int i=0;
while(*(source+i)!=null)
{
if(*(source+i)== null)
{
return -1;
}
if(*(source+i)!=*(source+i))
{
return -1;
}
i++;
}
if(*(source+i)!=null)
{
return -1;
}
return 0;

}


2、 写一函数int fun(char *p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1
int fun(char *p)
{
int len = strlen(*p);
while(i >= len/2-1)
{
int i=0;
if(*(p+i)!=*(p+len-i-1))
{
return 0;
}
i++;

}
return 1;
}//我不知道出错怎么办?会有什么错

三、问答题(20分)
1、文件系统编成、网络编成、数据库编程、线程进程编成各举出你认为最好的方法,并说出为什么最好?
不会
2、写出访问外设如拨号、串口操作各一个函数?
不知道
=========================================
新手,请大家帮忙看看,错了指教。
carrotmin 2006-12-05
  • 打赏
  • 举报
回复
说实话,不算难
不过得是成天在写C的人才知道

我是一道题也不会的。。。
shellyyee 2006-12-05
  • 打赏
  • 举报
回复
自己先练练
ppddt008 2006-12-05
  • 打赏
  • 举报
回复
o
hansin 2006-12-05
  • 打赏
  • 举报
回复
char *p=str;
sizeof(p)=( 3 )

这个为什么是3 呢,用编译器看的
Ass_Of_Gril 2006-12-05
  • 打赏
  • 举报
回复
楼上的是人妖


每贴一语:
============================================================
别人讲我们不好,不用生气、难过……说我们好也不用高兴,这不好
中有好,好中有坏,就看你会不会用?
============================================================
nonplus 2006-12-05
  • 打赏
  • 举报
回复
沙发
zoologist 2006-12-05
  • 打赏
  • 举报
回复
上机试验啊~

出了错误也可以解释:对不起我忽略了编译器的特性问题...
asusa3a 2006-12-05
  • 打赏
  • 举报
回复
Java_java2005(深圳代码工)
你做做试试,给讲讲怎么错了。
asusa3a 2006-12-05
  • 打赏
  • 举报
回复
有热心的给指点下,我不怕丢人。
asusa3a 2006-12-05
  • 打赏
  • 举报
回复
int fun(char *p)
{
int i=0;
int len = strlen(*p);
while(i >= len/2-1)
{
//int i=0;不好意思,刚开始我想用while(1)来着,改的时候忘记了。
if(*(p+i)!=*(p+len-i-1))
{
return 0;
}
i++;

}
return 1;
}//我不知道出错怎么办?会有什么错
ilove8 2006-12-05
  • 打赏
  • 举报
回复
up
asusa3a 2006-12-05
  • 打赏
  • 举报
回复
asusa3a(从此告别懒惰)(心不外浮气不外弛)的水平实在是太差了,汗一个,几乎没有答对的,怪不得CSDN上大多数人都是拿着民工的工资,现在基本上明白了
==========================================
要不就不是新手了,也没去查什么资料,自己做的,不对的地方给指点指点呀,光说明白有什么用?
jxfengzi 2006-12-05
  • 打赏
  • 举报
回复
up
lijunjun 2006-12-05
  • 打赏
  • 举报
回复
这是实习生的笔试题吧?

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧