面试题1-服务器硬件与基础命令
单核处理器是指一个处理器中只有一个内核。而一个核心在同一时间只能处理一个线程
单核的处理器也能够做到性能强大,高频的单核处理器也可以流畅运行多个任务,而且在应对大型的单个任务上,单核心处理器也更具优势
主频如果不变的话,多核运行也不会变快,所以,并不是所有程序在多核cpu上速度都快
A copy file1txt file2txt
B cp file1txt file2txt
C cat file2txt file1txt
D cat file1txt > file2txt
11 如果要列出一个目录下的所有文件需要使用命令行 A B C
A ls -l
B ls
C ls -a
D ls -d
23设超级用户root当前所在目录为:/usr/local,键入cd命令后,用户当前所在目录为 (/root)
/home
/root
/home/root
/usr/local
25在下列命令中,不能显示文本文件内容的命令是() 答案 join
more
less
tail
join
27Linux文件系统的文件都按其作用分门别类地放在相关目录中,对于外部设备文件,一般应将其放在( /dev )目录中
A:/bin
B:/etc
C:/dev
D:/lib
29如何删除一个非空目录/tmp rm -rf /tmp
del /tmp/
rm -rf /tmp
rm -Ra /tmp/
rm -rf /tmp/
A:echo $(pwd)
B:echo pwd
C:$pwd
D:pwd | echo
用户的密码,是以密文形式存储在/etc/passwd 文件中的
用户的密码,是以密文形式存储在/etc/passwd文件中的
用户的密码,是以密文形式存储在/etc/shadow文件中的
用户登录的时候,会把用户的密码明文与保存的密码做对比
一次去一个小公司面试,没有太重视,当时由于工作甚忙,也没作准备。他们给我的试卷有大量的题,规定一个小时必须做完,一看题量,吓了一大跳,题有链表,有多维数组,有大量的程序阅读,幸亏基本功还算扎实,未辱使命,差强完成。等到做到编程题时,才发现自己太长时间没有写过程序了,让一些琐碎的改BUG工作和代码维护浪费了太多的精力。一直做下去,心里暗暗吃惊,一个小时,这个题量如果是在刚毕业时,还是有可能完成的,工作几年后,压力渐小,写程序基本都是拿来主义,对标准库函数的原理把握和编程能力越来越退化。由于当时时间紧迫,所写程序也不够完善,过后又思考了一下,回到家后赶紧又对这些问题总结了一下。下面对面试中遇到的编程问题分析了一下。真是人在社会如江湖呀,学习是一刻也不能放松的事。稍一不慎,晚节不保不说,反而会阴沟里翻船。
1获取路径下的文件名
char FindFileName(char s)
{
int len;
char tmp=NULL;
ASSERT(s != NULL);
for (len=strlen(s); len>0;len--)
{
if((s[len]=='/') ||(s[len]=='//'))
{
tmp = &s[len+1];
break;
}
}
return tmp;
}
2把整型转化为字符型
char i2a(int n, char s)
{
int i, sign;
ASSERT(s != NULL);
if ((sign = n) < 0)
{
n = -n; //转为正数,利于取位
}
do
{
s[i++] = n % 10 + '0';
}
while ((n /= 10) > 0)
if (sign < 0)
{
s[i++] = '-';
}
s[i] = '/0';
reverse(s);
}
3把字符型转为整型
int a2i(char s)
{
int i, n, sign;
ASSERT(s != NULL);
for (i = 0; s[i] == ' '; i++)
{
NULL; //如果字串前有空格,跳过所有空格
}
sign = (s[i] == '-') : -1 : 1;
if (s[i] == '+' || s[i] == '-')
{
i++; //判断是正整数串还是负整数串
}
for (n = 0; s[i] > = '0' && s[i] <= '9'; i++)
{
n = 10 n + (s[i] - '0');
}
return signn;
}
4输出字符串倒文,不能动态分配内存
char reverse(char s)
{
int c, i, j;
ASSERT(s != NULL);
for (i = 0, j = strlen(s) - 1; i < j; i++, j--)
{
c = s[i];
s[i] = s[j];
s[j] = c;
}
return s;
}
5查找子串是否存在
int strindex(char str,char searchstr)
{
int end, i, j;
ASSERT((str != NULL) && (searchstr != NULL));
//计算结束位置
end = strlen(str) - strlen(searchstr);
if ( end > 0 )
{
for ( i = 0; i <= end; i++ )
{
for ( j = i; str[j] == searchstr[j-i]; j++ )
{
if ( searchstr[j-i+1] == '/0' ) / 子字符串字结束 /
{
return i + 1; / 找到了子字符串 /
}
}
}
}
return -1;
}
0条评论