望麓自卑—湖南大学最具潜力的校园传媒

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1809|回复: 5

某公司的面试题,有兴趣的朋友看看

[复制链接]
发表于 2007-5-18 18:38:06 | 显示全部楼层 |阅读模式
1) 在 Linux 操作系统上,执行 $ ls a.c b.c 命令时,传递给这个 ls 进程 main 函
数的参数 argc 和 argv 值各是多少?
A) argc = 2; argv [] = {\"a.c\", \"b.c\"};
B) argc = 3; argv [] = {\"ls\", \"a.c\", \"b.c\"};
C) 抱歉,看不懂题目在说什么。

2) 在 Linux BASH Shell 中,执行 $ ls *.png 命令给出的结果如下:
$ ls *.png
1.png 2.png 3.png 4.png
请问系统为执行上述命令的 ls 进程之 main 函数的参数 argc 和 argv 传入了什么?
A) 和第一道题重复,懒得答!
B) argc = 2; argv [] = {\"ls\", \"*.png\"};
C) argc = 5; argv [] = {\"ls\", \"1.png\", \"2.png\", \"3.png\", \"4.png\"};
D) argc = 4; argv [] = {\"1.png\", \"2.png\", \"3.png\", \"4.png\"};
E) argc = 1; argv [] = {\"*.png\"};

3) 在 Linux C 程序中,希望执行某个特殊的程序 prog,该程序保存在 /opt/test 目
录下,则应该使用下面哪段程序最为合理及正确?
A)
system (\"prog\");
B)
if (fork ()) {
execl (\"/opt/test/prog\", \"my_prog\", NULL);
}
C)
if (fork () == 0) {
execl (\"/opt/test/prog\", \"prog\", NULL);
}
D)
execl (\"/opt/test/prog\", \"prog\", NULL);

4) 如下 C 语言语句:
enum Week{ Sun, Mon = 125, Tue, Wed, Thu = 140, Fri }
其中的 Sun, Mon, Tue, Fri 各是多少:
A) 0, 125, 2, 5
B) 1, 125, 2, 6
C) 0, 1, 2, 5
D) 0, 125, 126, 141

5) 在 vim 中,想撤消上一个编辑操作,应如何操作?
A) 没用过 vim,不知道。
B) 进入命令模式,按 u 键。
C) 进入命令模式,按 U 键。
D) 不管三七二十一,按 Ctrl+u 键。

6) 在 vim 中,以下对可视模式的描述,哪个(些)是正确的?
A) 我听说过命令模式、插入模式,没听说可视模式。
B) 在命令模式下按 V 键,可进入可视模式。
C) 可视模式可以帮助限定编辑命令的区域。
D) 如果在命令模式下按 Ctrl+V 键,可按列选中文字。

7) 在 vim 中,你想把一段文字转换为全部大写,应该如何操作?
A) 一个个删除,然后再插入被删除字母的大写。
B) 进入可视模式,选中需要转换的文字,然后按 U 键。
C) 移动光标到字母上,然后按 R 键,之后按对应的大写字母,然后一个个处理。
D) 没用过 vim。

8) 请看下面的目录项属性
drwxrwsr-x 7 snig team 4096 4月 8 19:34 minigui
这里的 s 属性有何作用?
A) 搞错了吧?没听说过 s 属性。
B) 如果目录有组 s 属性,则在其下新建立的目录项,将自动继承该目录的组属主信息。
C) 就是目录的可执行属性。
D) 如果目录有组 s 属性,则只有属于该目录属主组的成员才能进入该目录。

9) 请看下面的目录项属性
drwxrwsr-x 7 snig team 4096 4月 8 19:34 minigui
属性字段后的数字7 表示什么?4096 表示什么?
A) 7 表示 minigui 这个文件有 7 个目录项;4096 是这个文件的大小。
B) 7 表示 minigui 这个目录下 7 个目录项;4096 是这个目录的大小。
C) 7 表示 minigui 这个目录项有 7 个硬链接指向它;4096 是这个目录的大小。
D) 不知道。

10) 在 C 语言中,交换两个任意类型的变量的值,应该使用下面的哪种语句最好?
A) #define swap(x,y) x=y; y=x;
B) #define swap(x,y) {tmp=x; x=y; y=tmp;}
C)
#define swap(x,y) \\ { \\ typeof(x) tmp; \\ tmp = x; \\ x = y; \\ y = tmp; \\ };
D)
#define swap(type, x, y) \\ do { \\ type tmp; \\ tmp = x; \\ x = y; \\ y = tmp; \\ } while (0);

11) C 语言中,__FILE__ 表示什么?
A) 它是编译器预定义的宏,表示当前源文件名称,将被展开成字符串常量;
B) 它是编译器预定义的宏,表示当前源文件名称,将被展开成字符串变量;

12) C 语言中,__LINE__ 表示什么?
A) 它是编译器预定义的宏,表示当前源文件行号,将被展开成字符串常量;
B) 它是编译器预定义的宏,表示当前源文件行号,将被展开成字符串变量;
C) 它是编译器预定义的宏,表示当前源文件行号,将被展开成无符号整型变量;
D) 它是编译器预定义的宏,表示当前源文件行号,将被展开成无符号整型立即数;

13) C 语言中,你定义了一个整型数组 int a [10]。请问以下描述哪种正确:
A) a [-1] 没有意义,会在编译时出现错误。
B) a [-1] 可编译,但在运行时会出现错误。
C) a [-1] 有意义,是否出错看怎么用。
D) 不知道。

14) 有如下 C 语言代码,请问执行该代码的前后,a[10] 中的初始值和最终值各是
多少?
int a [10] = {5};
int b;
int main (void)
{
a [10] = 9;
b = 8;
return 0;
}
A) 0,9;
B) 5,9;
C) 0,8;
D) 程序根本有误。

15) 在 32 位系统上,定义如下结构,请问该结构类型有多大(字节数)?
struct MYSTRUCT {
char a [3];
int b;
short c;
};
A) 9
B) 10
C) 12
D) 具体结果看编译器以及编译选项。

16) 在 32 位小头系统上,int 型整数 0x11223344 在内存中是如何存放的?
A) 看不懂题目。
B) 0x11, 0x22, 0x33, 0x44
C) 0x22, 0x11, 0x44, 0x33
D) 0x44, 0x33, 0x22, 0x11

17) 请问下列程序中a 的输出结果是多少?
#define SQUARE(x) x * x
a = SQUARE(3 + 5);
printf(“a = %d\\n”, a );
A) 64
B) 23
C) 29
D) 43

18) 下面用于声明结构体别名的两种情况哪种更好?
1)#define dPS struct s *
2)typedef struct s * tPS;
及下面两个例子扩展结果各为什么?请选择。
dPS p1,p2;
tPS p3,p4;
A) 第1 种更好,struct s* p1, *p2; struct s *p3, *p4;
B) 第2 种更好,struct s* p1, *p2; struct s *p3, *p4;
C) 第1 种更好,struct s* p1, p2; struct s *p3, *p4;
D) 第2 种更好,struct s* p1, p2; struct s *p3, *p4;

19) 下列选项中在静态存储区域分配内存的是:____;在栈(stack)上分配内存的是:
____;在堆(heap)上分配内存的是:____。
A) 函数内局部变量
B) static 变量
C) 函数形参
D) malloc 或者new 申请的内存
E) 全局变量
F) 自动变量

20) 下面代码的输出结果为多少?
int main(void)
{
int a[5]={1,2,3,4,5};
int *ptr=(int *)(&a+1);
printf (\"%d, %d\",*(a+1),*(ptr-1));
return 0;
}
A) 2, 1
B) 2, 5
C) 2, 随机数
 楼主| 发表于 2007-5-18 18:40:25 | 显示全部楼层
21) 下面的声明是什么意思?
int * const a;
A) a 是一个指向整型数的常指针
B) a 是一个指向常整数的指针
C) a 是一个指向常整数的常指针
D) 不知道

22) 有以下表达式:
int a=20, b=5; const int *c=&a; int const d=2;
int *const e=&a; int const *f const =&b;
请问下列表达式哪些会被编译器禁止?
A) d = 32;
B) c = &b;
C) *c = 43;
D) e = &a;
E) f = 0x321f;
F) *f = 30

23) 在32 位系统上,定义如下结构,则sizeof(A) = ?
struct A
{
char t:4;
char k:4;
unsigned short i:8;
unsigned long m;
};
A) 4
B) 8
C) 12
D) 没见过这种用法。

24) 下面的代码运行后,输出的x 和compute 中的a 值分别是多少?
void compute (int* x)
{
static int a = 1;
*x+=a++;
}
static int x = 6;
int main (int, char*)
{
static int x = 10;
compute (&x);
compute (&x);
printf (“x:%d \n”, x);
return 0;
}
A) 12, 1
B) 12, 2
C) 13, 3
D) 15, 3

25) 下面代码的输出结果是:
#include <stdio.h>
int main (void)
{
int a,b,c,d;
a = 10;
b = a++;
c = ++a;
d = 10*a++;
printf ("a, b, c, d: %d, %d, %d, %d\n", a, b, c, d);
return 0;
}
A) a, b, c, d: 13, 10, 12, 120
B) a, b, c, d: 13, 11, 12, 130
C) a, b, c, d: 12, 10, 12, 120
D) a, b, c, d: 12, 10, 11, 110

26) 在 Linux 系统中,一个函数库通常中是这样存在的:
lrwxrwxrwx 1 root root 23 3月 8 11:54 libminigui.so-> libminigui-1.6.so.2.0.0
lrwxrwxrwx 1 root root 23 3月 8 11:54 libminigui-1.6.so.2 -> libminigui-1.6.so.2.0.0
-rwxr-xr-x 1 root root 1551241 3月 8 11:54 libminigui-1.6.so.2.0.0
-rw-r--r-- 1 root root 5278658 3月 8 11:54 libminigui.a
-rwxr-xr-x 1 root root 738 3月 8 11:54 libminigui.la
请问,下面的描述哪个(些)是正确的?
A) so 后缀名表示这个函数库是动态库,a 后缀名表示这个函数库是静态库。
B) so 后缀名表示这个函数是共享库,a 后缀名表示这个函数库是个归档文件。
C) 1.6.so.2 是 minigui 库的 so 名称;当系统中存在多个 minigui 共享库版本
时,系统通过保存在程序中的共享库 so 名称确定应该装载哪个版本。
D) 用 gcc 链接这个函数库时,可以通过 –llibminigui 选项指定这个函数

27) 现在要设计 C 函数,该函数在给定的内存区域搜索给定的字符,并返回该字符
所在的位置索引值。请问该函数的接口设计中哪个最为合理?
A) int index (const void* dest, char ch);
B) int index (const void* start, unsigned int len, char ch);
C) int index (const void* start, const void* end, char ch);
D) int index (char* dest, unsigned int len, char ch);
E) int index (const char* dest, char ch);

28) 从套接字(socket)中读取数据时,如果对方关闭了该套接字,则read 系统调
用的返回值是?
A) 0
B) -1

29) 在Linux 系统下,在后缀为ifo 的文件中查找指定字符串apple,如下选项给出的
命令中,哪个(些)实现了此功能?
A) find . -name \*.ifo -exec grep apple {} \;
B) find . –name *.ifo | xargs grep apple -n;
C) find . –name *ifo –exec grep apple {};
D) find . –name *ifo | grep apple;

30) 正则表达式里表示字符串以某字母开头用下面的哪个字符?
A) &
B) $
C) ^
D) @
 楼主| 发表于 2007-5-18 18:41:41 | 显示全部楼层
下次把自己做的发上来,有兴趣的大家一起讨论下
 楼主| 发表于 2007-5-18 21:01:24 | 显示全部楼层
1)B
2)B
3)C
4)D
5)BC
6)BC
7)ABC
8)D
9)C
10)B
11)B
12)C
13)B
14)D
15)C
16)C
17)B
18)D
19)BE,ACF,D
20)B
21)A
22)ACDEF
23)B
24)C
25)A
26)AC
27)B
28)A
29)B
30)C
大家可以参考下
发表于 2007-5-19 00:02:03 | 显示全部楼层
我晕了!
发表于 2007-5-19 00:22:26 | 显示全部楼层
我要是去应聘的话,肯定是没戏
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

每日推荐上一条 /1 下一条

小黑屋|手机版|湖南大学望麓自卑校园传媒 ( 湘ICP备14014987号 )

GMT+8, 2024-9-21 16:43 , Processed in 0.087812 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表