亚洲AV乱码一区二区三区女同,欧洲在线免费高清在线a,中文字幕丝袜四区,老少配老妇熟女中文高清

<s id="38axe"><nobr id="38axe"></nobr></s><abbr id="38axe"><u id="38axe"></u></abbr>

<sup id="38axe"></sup>
    <acronym id="38axe"></acronym>
  • <s id="38axe"><abbr id="38axe"><ins id="38axe"></ins></abbr></s>
    
    
        <s id="38axe"></s>

        2013年下半年程序員考試下午真題

        程序員 責(zé)任編輯:YLM 2017-08-17

        添加老師微信

        備考咨詢

        加我微信

        摘要:以下是由希賽網(wǎng)整理的2013年下半年程序員考試下午真題​,希望對(duì)備考程序員考試的考生有所幫助。

        2013年下半年程序員考試下午真題:

        >>>點(diǎn)擊進(jìn)入軟考初級(jí)程序員歷年真題下載

        ● 閱讀以下說(shuō)明和流程圖,填補(bǔ)流程醫(yī)中的空缺(1)~(5)將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
        【說(shuō)明】
        兩個(gè)包含有限個(gè)元素的非空集合 A、B 的相似度定義為 |A∩B|/|A∪B|,即它們的交 集大小(元素個(gè)數(shù))與并集大小之比。
        以下的流程圖計(jì)算兩個(gè)非空整數(shù)集合(以數(shù)組表示)的交集和井集,并計(jì)算其相似度。己知整數(shù)組 A[1:m]和 B[l:n]分別存儲(chǔ)了集合 A 和 B 的元素(每個(gè)集合中包含的元素各不相同),其交集存放于數(shù)組C[1:s],并集存放于數(shù)組D[1:t] ,集合A 和 B 的相似度存放于 SIM。
        例如,假設(shè) A={ 1, 2 ,3,4} ,B={ 1, 4 ,5,的,則C={1, 4} ,D={1, 2 ,3 ,4 ,5, 6},A 與 B 的相似度 SIM=1/3。
        【流程圖】
        1.png

        ● 閱讀以下說(shuō)明和 C 函數(shù),填充函數(shù)中的主缺,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
        【說(shuō)明】
        下面的函數(shù) sort(int n,int a[])對(duì)保存在數(shù)在 a 中的整數(shù)序列進(jìn)行非遞減排序。由于該 序列中的元素在一定范圍內(nèi)重復(fù)取值,因此排序方法是先計(jì)算出每個(gè)元素出現(xiàn)的次數(shù)并記錄在數(shù)組 b 中,再?gòu)男〉酱箜樞虻嘏帕懈髟丶纯傻玫揭粋€(gè)非遞減有序序列。例如, 對(duì)于序列 6,5,6,9,6,4,8,6,5. 其元素在整數(shù)區(qū)間 [4,9]內(nèi)取值,因此使數(shù)組元素 b[0] ~b[5]的下標(biāo)。0~5分別對(duì)應(yīng)數(shù)值 4~9. 順序地掃描序列的每一個(gè)元素并累計(jì)其出現(xiàn)的次數(shù),即將 4的個(gè)數(shù)記入b[0], 5 的個(gè)數(shù)記b[1],依此類推,9的個(gè)數(shù)記入 b[5]最后依次判斷數(shù)組b的每個(gè)元素值,并將相應(yīng)個(gè)數(shù)的數(shù)值順序地寫(xiě)入結(jié)果序列即可。

        對(duì)于上例,所得數(shù)組 b 的各個(gè)元素值如下:

        1.png

        那么在輸出序列中寫(xiě)入 1 個(gè) 4、2個(gè) 5、4個(gè) 6、l 個(gè) 8、1 個(gè) 9,即得4,5,5,6,6,6,6,8,9,
        從而完成排序處理。
        【C 函數(shù)】
        void sort(int n ,int a[ ])
        { int *b;
        int i ,k ,number;
        int minimum = a[0] , maximum = a[0];
        /* minimum 和 maximum 分別表示數(shù)組a的最小、最大元素值*/
        for(i=1;i<n;i++){
        If( (1) ) minimum=a[j];
        Else
        If( (2) ) maximum=a[i];
        }
        number = maximum - minimum + 1;
        if (number<=1) return;
        b = (int *)calloc (number ,sizeof(int)) ;

        if (!b) return;

        for(i=0;i<n;i++){ /* 計(jì)算數(shù)組a元素值出現(xiàn)的次數(shù)并計(jì)入數(shù)組b */

        K=a[i]-minimum; ++b[k];
        }
        /*按次序在數(shù)組 a 中寫(xiě)入排好的序列*/
        i=(3) ;
        for( k=0; k<number; k++ )
        for(; (4) ; --b[k] )
        a [i++] = minimum +(5);}

        ● 閱讀以下說(shuō)明和 C 代碼,填充代碼中的空缺,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
        【說(shuō)明 1】
        下面的函數(shù) countChar(char *text)統(tǒng)計(jì)字行串 text 中不同的英文字母數(shù)和每個(gè)英文字母出現(xiàn)的次數(shù)(英文字母不區(qū)分大小寫(xiě))。
        【c代碼1】

        int countChar( char *text )

        {

        int i,sum = 0; /* sum 保存不同的英文字母數(shù)*/

        char *ptr;

        int c[26] = {0}; /*數(shù)組c保存每個(gè)英文字母出現(xiàn)的次數(shù)*/

        /*c[0]記錄字母A或a的次數(shù),c[1] 記錄字母B或b的次數(shù),依此類推*/

        ptr = (1) ;/*ptr初始時(shí)指向字符串的首字符*/

        while (*ptr) {

        if ( isupper(*ptr) )

        c[*ptr - 'A']++;

        e1se

        if ( islower(*ptr) )

        c[*ptr - 'a'] ++;

        (2) ; /*指向下一個(gè)字符*/

        }

        for(i=0;i<26;i++)

        if (3) sum++;

        return sum;

        }

        【說(shuō)明2】

        將下面C代碼2中的空缺補(bǔ)全后運(yùn)行,使其產(chǎn)生以下輸出。

        f2:f2:f2:2

        f3:f3: 1

        【C代碼2】

        *include <stdio.h>

        int f1 (int (*f) (int)) ;

        int f2 (int) ;

        int f3 (int) ;

        int main __(3)__

        {

        printf("%d\n" ,f1( (4) ));

        printf("%d\n" ,f1( (5) ));

        return 0;

        }

        int f1 ( int (*f) (int) )

        {

        int n = 0;

        /*通過(guò)函數(shù)指針實(shí)現(xiàn)函數(shù)調(diào)用,以返回值作為循環(huán)條件*/

        while ( (6) ) n++;

        return n;

        }

        int f2(int n)

        {

        printf("f2: ");

        return n*n-4;

        }

        int f3 (int n)

        {

        printf("f3: ");

        return n-l;

        }

        ● 閱讀以下說(shuō)明和C程序,填充程序中的空缺,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
        【說(shuō)明】
        正整數(shù)n若是其平方數(shù)的尾部,則稱n為同構(gòu)數(shù)。例如,6是其平方數(shù)36的尾部,76是其平方數(shù)5776的尾部,6與76都是同構(gòu)數(shù)。下面的程序求解不超過(guò)10000的所有同構(gòu)數(shù)。
        己知一位的同構(gòu)數(shù)有三個(gè): 1,5,6,到此二位同構(gòu)數(shù)的個(gè)位數(shù)字只可能是1,5,6這三個(gè)數(shù)字。依此類推,更高位數(shù)同構(gòu)數(shù)的個(gè)位數(shù)字也只可能是1,5,6 這三個(gè)數(shù)字。
        下面程序的處理思路是:對(duì)不超過(guò)10000的每一個(gè)整數(shù)a,判斷其個(gè)位數(shù)字,若為1、5或6,則將a 轉(zhuǎn)換為字符串a(chǎn)s,然后對(duì)a進(jìn)行平方運(yùn)算,并截取其尾部與as長(zhǎng)度相等的若干字符形成字符串后與出比較,根據(jù)古們相等與否來(lái)斷定a是否為同構(gòu)數(shù)。

        【C 程序】

        #include<stdio.h>

        #include<stdlib.h>

        #include<string.h>

        int myitoa(int ,char *); /*將整數(shù)轉(zhuǎn)換為字符串*/

        /* right取得指定字符串尾部長(zhǎng)度為lergth的子串,返回所得子串的首字符指針*/

        char *right(char*, int length);

        int main __(4)__

        {

        int a ,t; int len;

        char as[10] ,rs[20];

        printf("[1 ,l0000]內(nèi)的同構(gòu)數(shù): \r");

        for(a=1;a<=10000;a++) {

        t = (1) ; /*取整數(shù)a的個(gè)位數(shù)字*/

        if (t!=1&& t!=5 && t!=6) continue;

        len = myitoa(a ,as); /*數(shù)a轉(zhuǎn)換為字符串,存入as */

        myitoa(a*a, rs); /*數(shù)a的平方轉(zhuǎn)換為字符串,存入rs */

        /*比較字符串a(chǎn)s與rs末尾長(zhǎng)度為len的子串是否相等*/

        if ( strcmp (as , (2) )==0 ) /*若相同則是同構(gòu)數(shù)并輸出*/

        printf("%s的平方為%s\n" ,as,rs);

        }

        return 0;

        }

        int myitoa(int num ,char *s) /*將整數(shù)num轉(zhuǎn)換為字符串存入s */

        {

        int i ,n = 0;

        char ch;

        /*從個(gè)位數(shù)開(kāi)始,取num的每一位數(shù)字轉(zhuǎn)換溝字符后放入s[] */

        while (num) {

        s[n++] = (3) + '0' ;

        num = num/10;

        }

        s[n]='\0';

        for(i=0; i<n/2; i++) { /*將s中的字符串逆置*/

        (4) ; s[i] = s[n-i-1]; 5 [n-i-1] = ch;

        }

        return n; /*返回輸入?yún)?shù)num的位數(shù)*/

        }

        char *right(char *.ms ,int length)

        /*取字符串ms尾部長(zhǎng)度為length的子串,返回所得子串的首字符指針*/

        {

        int i;

        for( ; *ms; ms++); /*使ms到達(dá)原字符串的尾部事*/

        for( i=0; i<length; (5) );/*使ms指向所得子串的首部字符*/

        return ms;

        }

        ● 閱讀以下說(shuō)明和C++代碼,填充程序中的空缺,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
        【說(shuō)明】
        某應(yīng)急交通控制系統(tǒng)(TraficControlSystem)在紅燈時(shí)控制各類車(chē)輛 (Vehicle)的通行,其類圖如圖5-1所示,在緊急狀態(tài)下應(yīng)急車(chē)輛在紅燈時(shí)可通行,其余車(chē)輛按正常規(guī)則通行。
        下面的C++代碼實(shí)現(xiàn)以上設(shè)計(jì),請(qǐng)完善其中的空缺。
        2.png

        【C++代碼】

        #include <typeinfo>

        #include <iostream>

        using namespace std;

        class Vehicle { /*抽象基類,車(chē)輛*/ public:virtual void run( ) = 0;};class Emergency { /*抽象基類,可在紅燈時(shí)通行的接口,函數(shù)均為純虛函數(shù)*/public:(1) = 0; // isEmergent ( )函數(shù)接口 (2) = 0; // runRedLight( ) 函數(shù)接口};class Car: public Vehicle {public:~Car ( ) { }void run ( ) { /*代碼略*/}};class Truck: public Vehicle {public:~Truck( ) { }void run ( ) { /*代碼略*/ }};class PoliceCar: (3) {private:bool isEmergency;public:PoliceCar( ) : Car( ) ,Emergency( ){ this->isEmergency = false;} PoliceCar(bool b) : Car( ) ,Emergency( ) { this->isEmergency = b;}~policeCar ( ) { }bool isEmergent ( ) { return (4) ; }void runRedLight( ) { /*代碼略*/ }};/*類Ambulance、 FireEngine 實(shí)現(xiàn)代碼略*/class TraficControlSystern { /*交通控制類*/private:Vehicle* v[24}; int nurnVeh:cles; /*在構(gòu)造函數(shù)中設(shè)置初始值為0*/public:void control__(5)__ { //控制在緊急情況下應(yīng)急車(chē)輛紅燈通行,其他情況按常規(guī)通行for (int i = 0; i < numVehicles ; i++) {Emergency * ev = dynamic_cast<Emergency*>(v[i]);if (ev != 0)(5) ->runRedLight __(6)__ ;else(6) ->run __(7)__ ;} }void add(Vehicle * vehicle) { v[numVehicles++] = vehicle;/ *添加車(chē)輛./void shutDown__(8)__ { for (int i = 0; i < numVehicles; i++) { deletev[i]; } }} ;int main( ) {TraficControlSystern. tcs = new TraficControlSystern;tcs->add(new Car( )); tcs->add(new PoliceCar( ));tcs->add(new Ambulance( ));tcs->add(new Ambulance(true));tcs->add(new FireEngine(true)); tcs->add(new FireEngine( )); tcs->add(new Truck( ));tcs->control( ); tcs->shutDown( );delete tcs; }

        ● 閱讀以下說(shuō)明和Java代碼,填充程序中的空缺,將解答填入答題紙的對(duì)應(yīng)欄內(nèi)。
        【說(shuō)明】
        某應(yīng)急交通控制系統(tǒng)(TraficControlSystem)在紅燈時(shí)控制各類車(chē)輛 (Vehicle)的通行,其類圖如圖6-1所示,在緊急狀態(tài)下應(yīng)急車(chē)輛在紅燈時(shí)可通行,其余車(chē)輛按正常規(guī)則通行。
        3.png

        下面的Java代碼實(shí)現(xiàn)以上設(shè)計(jì),請(qǐng)完善其中的空缺。
        【Java 代碼 】
        abstract class Vehicle {
        public Vehicle( ) { )
        abstract void run( );
        };
        interface Emergency {
        (1) ;
        (2) ;
        };
        class Car extends Vehicle {
        public Car( ) { )
        void run ( ) { /*代碼略*/
        };
        class Truck extends Vehicle {
        public Truck( ) { )
        void run ( ) { /*代碼略*/
        };

        class PoliceCar (3) {
        boolean isEmergency = false;
        public PoliceCar__(6)__ { )
        public PoliceCar(boolean b) { this.isEmergency=b; }
        public boolean isEmergent( ) { return ( 4 ) ; }
        public void runRedLight( ) { /*代碼略*/ }
        };
        /*類h由ulance 、 FireEngine 實(shí)現(xiàn)代碼略叫*/
        public class TraficControlSystem { /*交通控制類*/
        private Vehicle[ ] v = new Vehicle[24];
        int numVehicles;
        public void control( ) {
        for (int i = 0; i < numVehicles; i++) {
        if (v[i] instanceof EmErgency && ((Emergency)v[i]).
        isEmergent__(7)__) {
        ( 5 ) .runRedLigh ( );
        } else
        ( 6 ) .run ( ) ;
        }
        }
        void add(Vehicle vehicle) { v[numVehicles++] = vehiclei} /*添加車(chē)輛*/
        void shutDown__(8)__ { /*代碼略* /}
        public static void main (Str :.ng [ ] args) {
        TraficControlSystem tcs = new TraficControlSystem__(9)__;
        tcs.add(new Car__(10)__};
        tcs.add(new PoliceCar__(11)__;
        tcs.add(new Ambulance__(12)__;
        tcs.add(new Ambulance(t:ue));
        tcs.add(new FireEngine( :rue));
        tcs.add(new Truck__(13)__);
        tcs.add(new FireEngine( );
        tcs.control__(14)__;
        tcs.shutDown__(15)__;
        }
        }

        溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,本網(wǎng)站提供的以上信息僅供參考,如有異議,請(qǐng)考生以權(quán)威部門(mén)公布的內(nèi)容為準(zhǔn)!

        軟考備考資料免費(fèi)領(lǐng)取

        去領(lǐng)取

        !
        咨詢?cè)诰€老師!