精品日本亚洲一区二区三区,伊人久久狼人色精品无码 ,日鲁夜鲁天天鲁视频,国产精品久久亚洲,秋霞理论理论福利院久久,国产日韩欧美视频一区二区三区,色九九,国产精品美女久久久久久免费 ,九九干,韩国精品一区二区三区

考研論壇

 
查看: 2454|回復: 6
打印 上一主題 下一主題

2012圖像所復試編程試卷(回憶)

[復制鏈接]

3

主題

13

帖子

394

積分

一般戰(zhàn)友

Rank: 2

精華
1
威望
190
K幣
204 元
注冊時間
2012-3-31
跳轉到指定樓層
樓主
發(fā)表于 2012-4-3 09:35 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
本帖最后由 snowhorse712 于 2012-4-4 09:13 編輯

滿分20
學術一,,三題/ 專業(yè)一,,四題
要求添加足夠多的注釋
, 精確計算階乘.
一個32 位整型變量無法精確表示大數(shù)的階乘, 但一個整型數(shù)組卻可表示.
算法思路: 當階乘結果為不超過104次方的十進制正整數(shù)時, 可用一個整型數(shù)組( int nFactorial[4] )來依次存放階乘的每一位數(shù)字. 比如, 5!=120可被記錄為nFactorial[0]= 0, nFactorial[1] = 2, nFactorial[2] = 1, nFactorial[3] = 0.
當已計算出k的階乘, 要計算(k+1)的階乘時, 將記錄k的階乘的數(shù)組的每一位都與(k+1)相乘, 乘積依然存在數(shù)組的對應位上. 最后, 從最低位開始, 依次向高位循環(huán)處理每個位中大于9的數(shù). 若數(shù)大于9,則需要進位. 將數(shù)的10的倍數(shù)進到高一位上,將數(shù)的小于10的余數(shù)存在原來的位中.一直到所有位中的數(shù)都小于10為止.
(1)(6) 按此思路, 當已知階乘結果為一個不超過101000次方的十進制整數(shù)時, 寫出計算正整數(shù)階乘的完整C/C++代碼.
輸入: 鍵盤輸入一個正整數(shù)
輸出: 顯示輸入正整數(shù)的階乘
(2)(2) 完善代碼, 實現(xiàn)鍵盤輸入是否滿足要求的檢查功能.
(3)(2) 寫出幾種測試用例.
, 有一個浮點型數(shù)組記錄了1000個浮點數(shù)(float fData[1000]).
(1)(3) 編寫C/C++代碼, 求出這1000個數(shù)中最大的10個數(shù).
(2)(3) 寫出能實現(xiàn)從1000億個數(shù)中尋找最大的10個數(shù)的算法思路.
, 已知一個指向單向鏈表的某個非頭非尾節(jié)點的指針(node* pCurrent).  pCurrent 指向的地址中僅保存2個指針, 一個是指向下一個節(jié)點的Next指針(pCurrent-> Next), 另一個是指向節(jié)點本身數(shù)據(jù)的Data指針(pCurrent-> Data). 編寫一個C/C++函數(shù), 實現(xiàn)以下功能:
(1)(2) 保留鏈表的原有順序,在原鏈表中刪除這個已知節(jié)點的下一個節(jié)點.
(2)(2) 保留鏈表的原有順序,在原鏈表中刪除這個已知節(jié)點.
, 異或運算的應用.
(1) (2) 列舉異或運算的性質(zhì).
(2) (2) 已知一個記錄了1000個整數(shù)的整數(shù)型數(shù)組. 將這1000個整數(shù)打亂順序后,只將其中的999個整數(shù)記錄在另一個數(shù)組中.請利用異或運算的性質(zhì)編寫一個C/C++函數(shù), 找出缺少的那一個整數(shù).

    評分

    參與人數(shù) 2威望 +130 K幣 +100 收起 理由
    h_jinle + 100 + 100 精品文章
    sail2011 + 30 歡迎學弟來圖像所

    查看全部評分

    回復

    使用道具 舉報

    3

    主題

    13

    帖子

    394

    積分

    一般戰(zhàn)友

    Rank: 2

    精華
    1
    威望
    190
    K幣
    204 元
    注冊時間
    2012-3-31
    7
     樓主| 發(fā)表于 2012-4-4 08:56 | 只看該作者
    第四題(1)a^0=a, a^a = 0, a^b=b^a, a^(b^c)=(a^b)^c[同數(shù)異或為0,數(shù)異或0還為該數(shù),異或運算可交換,異或運算滿足結合律]
    (2)int MyFind(int nArray0[1000], int nArray1[999])
    {
    int nResult = nArray0[0];
    int i;
    for(i=1;i<1000;i++)
    {nResult ^= nArray0[i];}
    for(i=0;i<999;i++)
    {nResult ^= nArray1[i];}
    return nResult;
    }
    回復

    使用道具 舉報

    3

    主題

    13

    帖子

    394

    積分

    一般戰(zhàn)友

    Rank: 2

    精華
    1
    威望
    190
    K幣
    204 元
    注冊時間
    2012-3-31
    6
     樓主| 發(fā)表于 2012-4-4 08:47 | 只看該作者
    本帖最后由 snowhorse712 于 2012-4-10 09:58 編輯

    編程初看,都能做.但要得高分,還真要能力.
    第三題(2),應該是不知道鏈表的頭.否則,和第一題解法一樣就行了. 但不知道頭咋知道指向pCurrent的指針哪...
    昨晚想了一個辦法.
    ... pTemp0 = pCurrent->Data;(這里題目缺少Data指針的具體類型哈...)
    node* pTemp1 = pCurrent->Next;
    pCurrent->Next = pTemp1->Next;
    pCurrent->Data = pTemp1->Data;
    if(pTemp0 != NULL){delete pTemp0; pTemp0 = NULL;}
    if(pTemp1->Data != NULL){delete pTemp1->Data; pTemp1->Data = NULL;}
    if(pTemp1 != NULL){delete pTemp1; pTemp1 = NULL;}

    補充內(nèi)容 (2012-4-11 11:03):
    這個鏈表應該沒有環(huán),否則,刪某個節(jié)點,可能會出問題..
    回復

    使用道具 舉報

    1

    主題

    22

    帖子

    186

    積分

    一般戰(zhàn)友

    Rank: 2

    精華
    0
    威望
    0
    K幣
    186 元
    注冊時間
    2011-5-14
    5
    發(fā)表于 2012-4-3 15:30 | 只看該作者
    總的來說,復試編程還是很考能力的。 相比微機就簡單多了全是概念  哈哈   
    回復

    使用道具 舉報

    3

    主題

    13

    帖子

    394

    積分

    一般戰(zhàn)友

    Rank: 2

    精華
    1
    威望
    190
    K幣
    204 元
    注冊時間
    2012-3-31
    地板
     樓主| 發(fā)表于 2012-4-3 13:08 | 只看該作者
    第三題,(1) node* pTemp = pCurrent->Next; pCurrent->Next = pTemp->Next; delete(pTemp->Data);pTemp->Data=NULL;delete(pTemp);pTemp=NULL;
    回復

    使用道具 舉報

    3

    主題

    13

    帖子

    394

    積分

    一般戰(zhàn)友

    Rank: 2

    精華
    1
    威望
    190
    K幣
    204 元
    注冊時間
    2012-3-31
    板凳
     樓主| 發(fā)表于 2012-4-3 11:17 | 只看該作者
    第二題,(1)部分排序.
    (2)分組,1000個一組, 每組求前10. 然后,每 100個組的結果再合并為一組, 每組再求前10, ...,直到最后求出整體前10.
    疑問:前10個數(shù)...應該數(shù)值可以相同哈
    回復

    使用道具 舉報

    3

    主題

    13

    帖子

    394

    積分

    一般戰(zhàn)友

    Rank: 2

    精華
    1
    威望
    190
    K幣
    204 元
    注冊時間
    2012-3-31
    沙發(fā)
     樓主| 發(fā)表于 2012-4-3 10:04 | 只看該作者
    本帖最后由 snowhorse712 于 2012-4-10 10:00 編輯

    第一題,(1)初始化數(shù)組, 鍵盤輸入, 按照思路循環(huán)計算, 進位,輸出結果. 輸出結果時,高位中的多余的零應去掉,然后,從首個有效位到最低位依次輸出數(shù)組.
    (2)用scanf("%s", cs)來接受鍵盤輸入的字符串, 再用atoi()將字符串轉換為整數(shù)n,  再用itoa()將n轉換為字符串css, 用strcmp()比較cs和css, 相同說明輸入的是整數(shù),不同則非法. 但不知如何確定輸入的整數(shù)是否太大...感覺要用到數(shù)學知識(斯特靈公式...)...
    (3)測試用例,
    3.1 下邊界0!=1!=1,
    3.2 合法值5!=120, 11!=...,
    3.3 上邊界460!, 461!(結果為1000位10進制整數(shù)的上界), 462!(越界)
    3.4 非法值 (abc)!提示非法, (1.3)!, (-0)!提示非法,
    3.5 退出條件 (-2)!, (-1)!...
    等...


    補充內(nèi)容 (2012-4-12 14:45):
    450就越界鳥...449!有998位

    評分

    參與人數(shù) 1威望 +30 收起 理由
    sail2011 + 30 辛苦了

    查看全部評分

    回復

    使用道具 舉報

    您需要登錄后才可以回帖 登錄 | 注冊 人人連接登陸

    本版積分規(guī)則   

    關閉

    您還剩5次免費下載資料的機會哦~

    掃描二維碼下載資料

    使用手機端考研幫,進入掃一掃
    在“我”中打開掃一掃,
    掃描二維碼下載資料

    關于我們|商務合作|小黑屋|手機版|聯(lián)系我們|服務條款|隱私保護|幫學堂| 網(wǎng)站地圖|院校地圖|漏洞提交|考研幫

    GMT+8, 2026-6-26 10:27 , Processed in 0.074304 second(s), Total 16, Slave 13(Usage:6.75M, Links:[2]1,1_1) queries , Redis On.

    Powered by Discuz!

    © 2001-2017 考研 Inc.

    快速回復 返回頂部 返回列表
    × 關閉