实习生笔试面试题总结

一.微软面试开发者
1.把一个字符串转换成整数。
实现一般功能的写法
int StrToInt(char* string)
{
     int number=0;
     while(*string!=0)
     {
         number=number*10+*string-'0';
         ++string;
     }
     return  number;
}

该程序没有考虑到1)输入负数、正负号问题 2)最大整数和最小负数溢出问题 3)字符串不能转换成整数时如何做错误处理
而且程序也不够鲁棒,只要输入一个空指针,程序立即奔溃;
int StrToInt(char *string)
{
    int number = 0;
    bool flag = true;
    int i;
    if (string[0] == '-')
   {
     flag = false;
    }
    if (flag == false)
   {
         for (i = 1; string[i] >= '0' && string[i] <= '9'; ++i)
        {
             number = number * 10 + (string[i] - '0');
        }
      return -number;
    }
    else
   {
         for (i = 0; string[i] >= '0' && string[i] <= '9'; ++i)
        {
            number = number * 10 + (string[i] - '0');
         }
       return number;
    }
}

二.阿里电话面试

1.Linux中查看电脑性能的命令是什么?CPU使用率并根据相应信息分析系统状况

top CPU的状态以全屏方式显示,并且处于对话模式,退出q

    top 的全屏对话模式可分为3部分:系统信息栏、命令输入栏、进程列表栏。

    1)(top)系统信息栏:系统当前时刻、系统启动后到现在的运作时间、当前登陆到用户的终端数、当前系统负载的平均值

    (task)当前系统进程总数、当前运行中的进程数、当前处于等待状态中的进程数、停止的系统进程数、复原的进程数

    (Cpus)CPU当前的使用率

    (Mem)内存总量、当前使用量、空闲内存量、缓冲使用中的内存量

    (Swap)分区swap的使用情况

    2)内部命令提示栏

    3)进程列表栏


2.Linux中查看文件的命令有哪些?

whereis (寻找特定文件) whereis [-bmsu] 文件或目录名 whereis ifconfig; whereis -m passwd

locate(寻找特定文件名)locate [-ir] keyword  loate passwd; -r后可接正则表达式的显示方法

updatedb:根据/etc/updatedb.conf的设置去查找系统硬盘内的文件名,并更新/var/lib/mlocate内的数据库文件 locate:根据/var/lib/mlocate内的数据库记载,找出用户输入的关键字文件名

whereis和locate是利用数据库来查找数据,而不实际查找文件系统,相当快速。


which (寻找“执行文件”)  which [-a] command:  which ifconfig; which which;

type (寻找“执行文件”) type -t  ls ;-t 显示意义;

which和type都是通过PATH变量所规定的目录来查找完整的文件名


find(查询文件系统)find [PATH] [option] [action]  find / -mtime 0;

使用find可以直接查询文件系统,查找具有特殊属性的文件,即文件当中含有SGID,SUID,SBIT的文件;

其中file是查看文件类型  file  /usr/bin/passwd


3.Linux中使用vim编辑代码的时候,将vim在后台运行,进行终端操作的命令,如何再回到vim编辑?

 :shell

 exit


三.NI公司面试

1.写strcpy函数作用的代码


你可能感兴趣的:(编程,面试题,c/c++)