• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            HUUYUU

            華為另外筆試題

            1. 找錯(cuò)

            void test1()
            {
            ??? char string[10];
            ??? char* str1="0123456789";
            ??? strcpy(string, str1);
            }

            答:表面上并且編譯都不會(huì)錯(cuò)誤。但如果string數(shù)組原意表示的是字符串的話,那這個(gè)賦值就沒有達(dá)到意圖。最好定義為char string[11],這樣最后一個(gè)元素可以存儲(chǔ)字符串結(jié)尾符'\0';


            void test2()
            {
            ??? char string[10], str1[10];
            ? for(int I=0; I<10;I++)
            ? {
            ??? str1[I] ='a';
            ? }
            ? strcpy(string, str1);
            }

            答:strcpy使用錯(cuò)誤,strcpy只有遇到字符串末尾的'\0'才會(huì)結(jié)束,而str1并沒有結(jié)尾標(biāo)志,導(dǎo)致strcpy函數(shù)越界訪問,不妨讓str1[9]='\0',這樣就正常了。


            void test3(char* str1)
            {
            ??? char string[10];
            ??? if(strlen(str1)<=10)
            {
            ??? strcpy(string, str1);
            }
            }

            答:這又會(huì)出現(xiàn)第一道改錯(cuò)題的錯(cuò)誤了。strlen(str1)算出來的值是不包含結(jié)尾符'\0'的,如果str1剛好為10個(gè)字符+1結(jié)尾符,string就得不到結(jié)尾符了??蓪trlen(str1)<=10改為strlen(str1)<10。

            2. 找錯(cuò)

            #define MAX_SRM 256

            DSN get_SRM_no()
            {
            ??? static int SRM_no;
            ??? int I;
            ??? for(I=0;I<MAX_SRM;I++,SRM_no++)
            ? {
            ??? SRM_no %= MAX_SRM;
            ??? if(MY_SRM.state==IDLE)
            ??? {
            ????? break;
            ??? }
            ? }
            ? if(I>=MAX_SRM)
            ??? return (NULL_SRM);
            ? else
            ??? return SRM_no;
            }

            答:我不知道這段代碼的具體功能,但明顯有兩個(gè)錯(cuò)誤
            1,SRM_no沒有賦初值
            2,由于static的聲明,使該函數(shù)成為不可重入(即不可預(yù)測結(jié)果)函數(shù),因?yàn)镾RM_no變量放在程序的全局存儲(chǔ)區(qū)中,每次調(diào)用的時(shí)候還可以保持原來的賦值。這里應(yīng)該去掉static聲明。

            3. 寫出程序運(yùn)行結(jié)果

            int sum(int a)
            {
            ??? auto int c=0;
            ??? static int b=3;
            ? c+=1;
            ? b+=2;
            ? return(a+b+c);
            }
            ?void main()
            {
            ??? int I;
            ? int a=2;
            ? for(I=0;I<5;I++)
            ? {
            ??? printf("%d,", sum(a));
            ? }
            }

            答:8,10,12,14,16
            該題比較簡單。只要注意b聲明為static靜態(tài)全局變量,其值在下次調(diào)用時(shí)是可以保持住原來的賦值的就可以。
            ----------------------------------------------
            插播廣告啦:版權(quán)所有:朱科 歡迎光臨我的網(wǎng)站:www.goodsoft.cn,各位轉(zhuǎn)貼別刪,勞動(dòng)成果啊
            ----------------------------------------------
            4.

            int func(int a)
            {
            ??? int b;
            ??? switch(a)
            ??? {
            ??????? case 1: b=30;
            ??????? case 2: b=20;
            ??????? case 3: b=16;
            ??????? default: b=0;
            ?? }
            ?? return b;
            }

            則func(1)=?
            答:func(1)=0,因?yàn)闆]有break語句,switch中會(huì)一直計(jì)算到b=0。這是提醒我們不要忘了break。呵呵。

            5:

            ? int a[3];
            ? a[0]=0; a[1]=1; a[2]=2;
            ? int *p, *q;
            ? p=a;
            ? q=&a[2];

            則a[q-p]=?
            答:a[q-p]=a[2]=2;這題是要告訴我們指針的運(yùn)算特點(diǎn)

            6.
            定義 int **a[3][4], 則變量占有的內(nèi)存空間為:_____
            答:此處定義的是指向指針的指針數(shù)組,對(duì)于32位系統(tǒng),指針占內(nèi)存空間4字節(jié),因此總空間為3×4×4=48。

            7.
            編寫一個(gè)函數(shù),要求輸入年月日時(shí)分秒,輸出該年月日時(shí)分秒的下一秒。如輸入2004年12月31日23時(shí)59分59秒,則輸出2005年1月1日0時(shí)0分0秒。
            答:

            /*輸入年月日時(shí)分秒,輸出年月日時(shí)分秒的下一秒,輸出仍然在原內(nèi)存空間*/
            void NextMinute(int *nYear,int *nMonth,int *nDate,int *nHour,int *nMinute,int *nSecond)
            {
            ? int nDays;
            ? (*nSecond)++;? // 秒加1
            ? if(*nSecond>=60)? // 秒滿60,做出特殊處理,下面時(shí),日,月等類同
            ? {
            ??? *nSecond=0;
            ??? (*nMinute)++;
            ??? if(*nMinute>=60)
            ??? {
            ????? *nMinute=0;
            ????? (*nHour)++;
            ????? if(*nHour>=24)
            ????? {
            ??????? *nHour=0;
            ??????? (*nDate)++;
            ??????? switch(*nMonth)
            ??????? {
            ????????? case 1:
            ????????? case 3:
            ????????? case 5:
            ????????? case 7:
            ????????? case 8:
            ????????? case 10:
            ????????? case 12:
            ??????????? nDays=31;
            ????????? break;
            ????????? case 2:// 判斷閏年
            ??????????? if(*nYear%400==0||*nYear%100!=0&&*nYear%4==0)
            ??????????? {
            ??????????? nDays=29;
            ??????????? }
            ??????????? else
            ??????????? {
            ??????????? nDays=28;
            ??????????? }
            ????????? break;
            ????????? default:
            ??????????? nDays=30;
            ????????? break;
            ??????? }
            ??????? if(*nDate>nDays)
            ??????? {
            ????????? *nDate=1;
            ????????? (*nMonth)++;
            ????????? if(*nMonth>12)
            ????????? {
            ????????? *nMonth=1;
            ????????? (*nYear)++;
            ????????? }
            ??????? }
            ????? }
            ??? }
            ? }
            }
            /*示例可運(yùn)行代碼*/
            void main()
            {
            ? int nYear=2004,nMonth=12,nDate=31,nHour=59,nMinute=59,nSecond=59;
            ? NextMinute(&nYear,&nMonth,&nDate,&nHour,&nMinute,&nSecond);
            ? printf("The result:%d-%d-%d %d:%d:%d",nYear,nMonth,nDate,nHour,nMinute,nSecond);
            }

            posted on 2006-07-28 15:46 HUYU 閱讀(800) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            天天影视色香欲综合久久| 久久AV高清无码| 色婷婷综合久久久久中文一区二区| 一本久久知道综合久久| 久久99精品国产99久久6男男| 国产成人香蕉久久久久| 少妇内射兰兰久久| 久久久久久久久久免免费精品| 日韩人妻无码一区二区三区久久 | 2021国内久久精品| 国产精品久久久久久久| 99精品国产免费久久久久久下载| AV无码久久久久不卡蜜桃 | 无码任你躁久久久久久老妇App| 狠狠久久亚洲欧美专区| 久久婷婷五月综合97色| 亚洲国产视频久久| 久久国产福利免费| 久久国产精品99久久久久久老狼 | 久久狠狠一本精品综合网| 漂亮人妻被黑人久久精品| 久久久午夜精品| 伊人久久大香线蕉无码麻豆| 国产精自产拍久久久久久蜜| 久久99国产精品久久久| 久久w5ww成w人免费| 久久久亚洲欧洲日产国码二区| 久久久亚洲AV波多野结衣| 一级做a爰片久久毛片毛片| 久久一本综合| 综合久久给合久久狠狠狠97色| 久久婷婷五月综合色99啪ak| 国产高潮国产高潮久久久91 | AV无码久久久久不卡蜜桃| 免费精品久久天干天干| 久久精品国产亚洲αv忘忧草| 亚洲国产婷婷香蕉久久久久久| 亚洲欧美日韩久久精品| 久久天天躁狠狠躁夜夜躁2014| 亚洲狠狠婷婷综合久久久久| 久久精品亚洲一区二区三区浴池 |