C++面试题四

1.事后控制不如事中控制,事中控制不如事前控制,可惜大多数事业经营者均未能
到这一点,等到错误的决策造成了重大的损失才如梦方醒,结果往往是请来了名气很大的“空降兵”也 。
A.意识 于事无补    B.体会 无力回天
C.观察 无济于事    D.认识 一事无成
答案:A 
解析: 根据语境,风险隐患等不适用体会观察认识,所以答案A最符合。
参考网址:http://wenku.baidu.com/link?url=7zqhiBue6V3H7N3FTqD4WrpPbfgv5pEeqjYp9pD7_iRZ4SJA462nuyMQA7xKL142Q-hJhJ7M36NN8oq3ehNLQF6OR5CsiXqsN0TC-5k8WAW
参考网址:http://blog.sina.com.cn/s/blog_7528d93201016dy5.html 

2.【C语言】请实现字符串循环右移函数。列如字符串“abcdefghi”向右移2位就是“hiabcdefg” 

#include "stdafx.h"
#include <assert.h>

void severse(char *p, char *q) //字符串翻转 
{
    char temp;
    assert(p);
    assert(q);
    while (p < q)
    {
        temp = *p;
        *p = *q;
        *q = temp;
        p++;
        q--;
    }
}
void RightLoopMove(char *pstr, unsigned short steps)
{
    int len = strlen(pstr);
    severse(pstr, pstr + len - steps - 1);//前部分翻转 
    severse(pstr + len - steps, pstr + len - 1);//后部分翻转 
    severse(pstr, pstr + len - 1); //整体翻转 
}
int _tmain(int argc, _TCHAR* argv[])
{
    char arr[] = "abcdefghi"
    RightLoopMove(arr, 2); 
    printf("%s\n", arr);} 


3.实现裴波那契数列 

#include "stdafx.h"
#include <iostream>
using namespace std;


int fun(int i)
{
    if (i == 1 || i == 2)
        return 1;

    if (i > 2)
        return fun(i - 1) + fun(i - 2);
}


int _tmain(int argc, _TCHAR* argv[])
{
    cout << fun(0);
    return 0;

} 

5.winapi和MFC的区别
INDOW API主要是面向过程的,而MFC主要是面向对象的。
在调用API函数时候,如果涉及到另外的对象或者说操作另外的对象,只能通过句柄来实现。所以知道对象ID需要转化成句柄。GetDlgItem();
在MFC中涉及到另外的对象而没自己的成员变量(成员变量本身是对象),则通过句柄来实现。所以知道对象ID需要转化成对象或者对象指针。GetDlgItem();
参考网址:http://www.cnblogs.com/liuweilinlin/archive/2012/08/20/2647924.html

 

 

 

 

4.英文翻译

https://msdn.microsoft.com/en-us/library/cc246052.aspx 

posted @ 2015-07-14 18:53  明月忧忧  阅读(160)  评论(0编辑  收藏  举报