黄色国产视频,男女啪啪18禁无遮挡激烈,久草热8精品视频在线观看,四虎国产精品永久在线下载

            華為面試題C語言軟件工程師

            時間:2022-07-11 15:49:50 計算機軟件 我要投稿
            • 相關推薦

            華為面試題C語言軟件工程師

            華為面試題C語言軟件工程師

            那就是變量i沒有定義,這在代碼編譯階段編譯器可以幫你發現,很容易搞定。然而很多問題是自己造成的漏洞,編譯器是幫不上什么忙的。這里最大的問題還是str1沒有結束符,因為strcpy的第二個參數應該是一個字符串常量。該函數就是利用判斷第二個參數的結束符來得到是否拷貝完畢。所以在for循環后面應加上str1p[9] = ‘\0’;

            pS:字符數組和字符串的最明顯的區別就是字符串會被默認的加上結束符’\0’。

            void test3(char* str1)

            {

            char string[10];

            if(strlen(str1)<=10)

            {

            strcpy(string, str1);

            }

            }

            這里的問題仍是越界問題。strlen函數得到字符串除結束符外的長度。如果這里是<=10話,就很明顯越界了。

            小結:上面的三個找錯的函數,主要是考查對字符串和字符數組的概念的掌握以及對strcpy函數和strlen函數的理解。

            2、找錯

            DSN get_SRM_no()

            {

            static int SRM_no;

            int I;

            ">  for(I=0;I

            {

            SRM_no %= MAX_SRM;

            if(MY_SRM.state==IDLE)

            {

            break;

            }

            }

            if(I>=MAX_SRM)

            return (NULL_SRM);

            else

            return SRM_no;

            }

            這里for循環的判斷語句是后來我加上的,估計在網上流傳的時候被人給弄丟了,根據對程序的分析,給補上了。估計錯誤應該不是這兒。

            簡單的閱讀一下這個函數,可以大概的可以猜測出這個函數的功能是分配一個空閑的SRAM塊。方法:從上次分配的RAM塊后的RAM塊開始檢測SRAM每個RAM塊,看是否是IDLE狀態,如果是IDLE則返回當前的RAM塊的號SRM_no。如果所有的RAM塊都不是IDLE狀態,則意味著無法分配一個RAM給函數調用者,返回一個表示沒有RAM可分配的標志(NULL_SRM)。

            經過上面的分析,則這里可以知道,這個函數的錯誤是for循環里面沒有給SRM_no這個變量累加1。

            3、寫出程序運行結果

            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,

            在求和函數sum里面c是auto變量,根據auto變量特性知每次調用sum函數時變量c都會自動賦值為0。b是static變量,根據static變量特性知每次調用sum函數時變量b都會使用上次調用sum函數時b保存的值。

            簡單的分析一下函數,可以知道,若傳入的參數不變,則每次調用sum函數返回的結果,都比上次多2。所以答案是:8,10,12,14,16,

            4、func(1) = ?

            int func(int a)

            {

            int b;

            switch(a)

            {

            case 1: 30;

            case 2: 20;

            case 3: 16;

            default: 0;

            }

            return b;

            }

            在 case 語句中可能忘記了對變量b賦值。如果改為下面的代碼:

            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;

            }

            因為case語句中漏掉了break語句,所以無論傳給函數的參數是多少,運行結果均為0。

            5、a[q - p] = ?

            int a[3];

            a[0]=0; a[1]=1; a[2]=2;

            int *p, *q;

            p=a;

            q=&a[2];

            很明顯:a[q - p] = a[2] = 2;

            6、內存空間占用問題

            定義 int **a[3][4], 則變量占有的內存空間為:16位系統24,32位編譯系統中是48。

            pS:公式:3 * 4* sizeof(int **) 。

            7、程序編寫

            編寫一個函數,要求輸入年月日時分秒,輸出該年月日時分秒的下一秒。如輸入2004年12月31日23時59分59秒,則輸出2005年1月1日0時0分0秒。

            void ResetTheTime(int *year,int *month,int *date,int *hour,int *minute,int*second)

            {

            int dayOfMonth[12]={31,28,31,30,31,30,31,31,30,31,30,31};

            if( *year < 0 || *month < 1 || *month > 12 ||

            *date < 1 || *date > 31 || *hour < 0 || *hour > 23 ||

            *minute < 0 ||*minute > 59|| *second<0|| second="">60 )

            return;

            if( *year%400 == 0 || *year%100 != 0 && *year%4 == 0 )

            dayOfMonth[1] = 29;

            if(*second >= 60)

            {

            *second = 0;

            *minute += 1;

            if(*minute >= 60)

            {

            *minute = 0;

            *hour += 1;

            if(*hour >= 24)

            {

            *hour = 0;

            *date += 1;

            if(*date > dayOfMonth[*month-1])

            {

            *date = 1;

            *month += 1;

            if(*month > 12)

            {

            *month=1;

            *year += 1;

            }

            }

            }

            }

            }

            return;

            }


            【華為面試題C語言軟件工程師】相關文章:

            c面試題08-04

            華為c8812配置08-04

            華為c8812解鎖方法08-01

            華為C8812ROOT詳細教程08-01

            華為C8810刷機包08-01

            華為C8500刷機包08-04

            華為C8812刷機教程08-01

            華為 C8500刷機分享05-15

            華為c8650root權限獲取08-01

            華為C8650刷機教程方法08-01

            主站蜘蛛池模板: 国产精品无码2021在线观看| 一本久久综合亚洲鲁鲁五月天,| 国产高清不卡一区二区| 久久精品国产久精国产69| 国产一及毛片| 亚洲三级黄| 18涩涩午夜精品.www| 成人无码无遮挡很h在线播放| 精品久久久无码人妻字幂| 久久国产网站| 影音先锋中文在线| 国产偷窥网| 亚洲国产av无码男人的天堂| 96国产精品久久久久aⅴ四区 | 欧美淫欲视频| 污片视频在线观看| 三级特黄60分钟在线播放| 人人婷婷人人澡人人爽| 国产91在线视频观看| 新黄色网址| 亚洲毛片不卡AV在线播放一区| 中文字幕制服丝袜人妻动态图 | 亚洲国产精品色婷婷| 日本高清在线一区至六区不卡视频 | 中文字幕第56页| 欧美裸体精品| 老司机无码精品a| 亚洲多毛妓女毛茸茸的| 免费视频久久久久久久| 精品国产乱码aaa一区二区 | 综合自拍亚洲综合图区高清| 精品日本一区二区| 亚洲天堂午夜| yy6080午夜八戒国产亚洲| 国产av明星换脸精品网站| 亚洲精品一区| 精品国产一区二区三区蜜殿| 夜夜春亚洲嫩草一区二区| 国产精品毛片一区视频播| 久久精品无码鲁网中文电影| 97人妻人人揉人人躁人人|