六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦>創(chuàng)業(yè)指南>職場>筆試題>

c++軟件開發(fā)筆試題目

時間: 護(hù)托1061 分享

  C++代碼· C++設(shè)計成靜態(tài)類型、和C同樣高效且可移植的多用途程序設(shè)計語言。下面就由學(xué)習(xí)啦小編為大家介紹一下c++軟件開發(fā)筆試題目的文章,歡迎閱讀。

  c++軟件開發(fā)筆試題目篇1

  1、(4分)用變量a給出下面的定義

  a) 一個整型數(shù);

  b)一個指向整型數(shù)的指針;

  c)一個指向指針的指針,它指向的指針是指向一個整型數(shù);

  d)一個有10個整型的數(shù)組;

  e)一個有10個指針的數(shù)組,該指針是指向一個整型數(shù);

  f)一個指向有10個整型數(shù)數(shù)組的指針;

  g)一個指向函數(shù)的指針,該函數(shù)有一個整型參數(shù)并返回一個整型數(shù);

  h)一個有10個指針的數(shù)組,該指針指向一個函數(shù),該函數(shù)有一個整型參數(shù)并返回一個整型數(shù)

  答案:

  a)int a

  b)int *a;

  c)int **a;

  d)int a[10];

  e)int *a [10];

  f) int (*a)[10]

  g)int (*a)(int)

  h) int( *a[10])(int)

  2、(4分)請寫出以下語句的輸出結(jié)果:

  Int i=43;

  Int j=5;

  Double f=25.45181;

  a) printf(“i=%d,j=%d,f=%3.2f”,i,j,f);

  b) printf(“i=%x,j=%06d,i/j=%d”,i,j,i/j);

  答案:

  A)i=43,j=5,f=25.45

  (說明:本來應(yīng)該輸出最小3位有效數(shù)字,25.5,但是由于限定了2位小數(shù),所以強制有2位小數(shù),有效數(shù)字的個數(shù)就起不到強制作用了。如果是%3.1,則輸出為25.5)

  B)i=2B ,j=000005,i/j=8

  (%x顯示的是一個無符號的0x 16進(jìn)制的整數(shù),%06d輸出的是6位數(shù),不夠6位數(shù),前面補0,i/j兩個整數(shù)相除,只取商的整數(shù)值)

  3、(2分)請完成以下宏定義:

  a)用預(yù)處理指令#define 聲明一個常數(shù),用以表明1年中有多少個秒(忽略閏年問題) b)寫一個“標(biāo)準(zhǔn)”宏MIN,這個宏輸入兩個參數(shù)并返回較小的一個

  答案:

  a)#define SECONDS (365*24*60*60)UL

  b) #define MIN(a,b) ((A)<(B)?(A):(B))

  擴展:MAX宏 #define MAX ((A)>(B)?(A):(B))

  ABS宏 #define ABS (((X)>0)?(X):(-(X)))

  4、(6分)以下為32為windows下的c++程序,請計算:

  a)

  char str[]=”hello”;

  char *p=str;

  請計算:

  sizeof(str)=6

  sizeof(p)=4

  strlen(p)=5

  答案:6,字符串?dāng)?shù)組以

c++軟件開發(fā)筆試題目

時間: 護(hù)托1061 分享

  C++代碼· C++設(shè)計成靜態(tài)類型、和C同樣高效且可移植的多用途程序設(shè)計語言。下面就由學(xué)習(xí)啦小編為大家介紹一下c++軟件開發(fā)筆試題目的文章,歡迎閱讀。

  c++軟件開發(fā)筆試題目篇1

  1、(4分)用變量a給出下面的定義

  a) 一個整型數(shù);

  b)一個指向整型數(shù)的指針;

  c)一個指向指針的指針,它指向的指針是指向一個整型數(shù);

  d)一個有10個整型的數(shù)組;

  e)一個有10個指針的數(shù)組,該指針是指向一個整型數(shù);

  f)一個指向有10個整型數(shù)數(shù)組的指針;

  g)一個指向函數(shù)的指針,該函數(shù)有一個整型參數(shù)并返回一個整型數(shù);

  h)一個有10個指針的數(shù)組,該指針指向一個函數(shù),該函數(shù)有一個整型參數(shù)并返回一個整型數(shù)

  答案:

  a)int a

  b)int *a;

  c)int **a;

  d)int a[10];

  e)int *a [10];

  f) int (*a)[10]

  g)int (*a)(int)

  h) int( *a[10])(int)

  2、(4分)請寫出以下語句的輸出結(jié)果:

  Int i=43;

  Int j=5;

  Double f=25.45181;

  a) printf(“i=%d,j=%d,f=%3.2f”,i,j,f);

  b) printf(“i=%x,j=%06d,i/j=%d”,i,j,i/j);

  答案:

  A)i=43,j=5,f=25.45

  (說明:本來應(yīng)該輸出最小3位有效數(shù)字,25.5,但是由于限定了2位小數(shù),所以強制有2位小數(shù),有效數(shù)字的個數(shù)就起不到強制作用了。如果是%3.1,則輸出為25.5)

  B)i=2B ,j=000005,i/j=8

  (%x顯示的是一個無符號的0x 16進(jìn)制的整數(shù),%06d輸出的是6位數(shù),不夠6位數(shù),前面補0,i/j兩個整數(shù)相除,只取商的整數(shù)值)

  3、(2分)請完成以下宏定義:

  a)用預(yù)處理指令#define 聲明一個常數(shù),用以表明1年中有多少個秒(忽略閏年問題) b)寫一個“標(biāo)準(zhǔn)”宏MIN,這個宏輸入兩個參數(shù)并返回較小的一個

  答案:

  a)#define SECONDS (365*24*60*60)UL

  b) #define MIN(a,b) ((A)<(B)?(A):(B))

  擴展:MAX宏 #define MAX ((A)>(B)?(A):(B))

  ABS宏 #define ABS (((X)>0)?(X):(-(X)))

  4、(6分)以下為32為windows下的c++程序,請計算:

  a)

  char str[]=”hello”;

  char *p=str;

  請計算:

  sizeof(str)=6

  sizeof(p)=4

  strlen(p)=5

  答案:6,字符串?dāng)?shù)組以\0(空格為結(jié)尾,所以str數(shù)組空間大小為5+1)

  4,計算的是指針的長度。

  5,strlen函數(shù)區(qū)的字符指針str的長度,不包括空字符。

  b)

  void func(char str[100])

  {

  Void *p=malloc(100);

  }

  請計算:

  sizeof(str)=100,:表示在內(nèi)存中預(yù)分配的內(nèi)存大小。

  sizeof (p)=4

  c)

  int a[3]={1,2,3};

  int b=sizeof(a)/sizeof(a[0]); sizeof(a)求的是數(shù)組的大小。

  請計算:

  b=3,對的。

  5、(2分) 設(shè)有定義:int n=0,*p=&n,**q=&p; 則以下選項中,正確的賦值語句是(d) a)p=1; b)*q=2; c)q=p; d)*p=5;

  (c)改成q=&p; 才對。

  6、(2分)const關(guān)鍵字的用途?(至少說明兩種)

  答案:

  (1)可以定義 const 常量

  (2)const 可以修飾函數(shù)的參數(shù)、返回值,甚至函數(shù)的定義體。被const 修飾的東 西都受到強制保護(hù),可以預(yù)防意外的變動,能提高程序的健壯性。

  (3)const可以用來修飾指針變量,控制指針變量的存取規(guī)則。

  c++軟件開發(fā)筆試題目篇2

  1、(2分)typedef的c語言中頻繁用以聲明一個已經(jīng)存在的數(shù)據(jù)類型的同義詞。也可以用以預(yù)處理器做類似的事情。例如:

  #define dps struct s*

  Typedef struct s * tps;

  以上兩種情況的意圖都是要定義dps和tps作為一個指向結(jié)構(gòu)s指針。哪種方法更好一些呢?(如果有的話)為什么? 考慮安全性還是用typedef好,宏定義在編譯時是不檢查的,只是簡單替換,而typedef編譯時要檢查的 typedef,而且typedef,define并非等價,如#define string1 char *

  typedef char *string2;第二種才能達(dá)到預(yù)想效果, string1 a,b;

  得到的b是char

  define是做替換的,typedef 則是重新定義一種數(shù)據(jù)類型的。可以向int型一樣使用的。

  #define FIND(struct,e) (size_t) &(((struct*)0)->e)

  typedef是語句( 以';'結(jié)尾)

  Typedef。它在自己的作用域內(nèi)給一個已經(jīng)存在的類型一個別名

  2、(8分) 以下是一組有關(guān)內(nèi)存知識的問題,請仔細(xì)看題,回答:

  Void GetMemory(char *p)

  {

  P=(char *)malloc(100);

  }

  Void Test(void)

  {

  Char *str=Null;

  GetMemory(str);

  Strcpy(str,”hello world”);

  Printf(str);

  }

  請問運行Test函數(shù)會有什么樣的結(jié)果?

  a)__________程序崩潰,運行時錯誤___________________________

  char *GetMemory(void)

  {

  Char p[]=”hello world”);

  Return p;

  }

  Void Test(void)

  {

  Char *str=NULL;

  Str=GetMemory();

  Printf(str);

  }

  請問運行Test函數(shù)會有什么結(jié)果?

  b)_______________ hello world ________________________________

  void GetMemory2(char **p,int num)

  {

  *p=(char *)malloc(num);

  }

  Void Test(void)

  {

  Char *str=NULL;

  GetMemory(&str,100);

  Strcpy(str,”hello”);

  Printf(str);

  }

  請問運行Test函數(shù)會有什么結(jié)果?

  c)_______ hello __________________________________________

  void Test(void)

  {

  Char *str=(char *)malloc(100);

  Strcpy(str,”hello”);

  Free(str);

  If(str!=NULL)

  {

  Strcpy(str,”world”);

  Printf(str);

  }

  }、

  請問運行test函數(shù)會有什么樣的結(jié)果?

  d)_______程序崩潰:因為釋放str指針后,沒有將指針置為null,所以指針變?yōu)橐爸羔樍?。再?zhí)行cpy時會因為找不到指針的指向而導(dǎo)致程序崩潰,請編程時,注意這一點。 __________________________________________

  3、(6分)請寫出以下程序的輸出結(jié)果:

  Class A

  {

  Public:

  A()

  { Printf(“A constructed.\n”);}

  Virtual ~A()

  {printf(“A deconstructed.\n”);}

  Virtual void Fn()

  {printf(“A fn called.\n”);} };

  Class B:public A

  {

  Public:

  B()

  {printf(“B constructed.\n”);} Virtual ~B()

  {printf(“B deconstructed.\n”);} Virtual void Fn()

  {printf(“B fn called.\n”);} };

  Class C:public B

  {

  Public:

  C()

  {printf(“C constructed.\n”);} Virtual ~C()

  {printf(“C deconstructed.\n”);} Virtual void Fn()

  {printf(“C fn called.\n”);} };

  Void main(int argc,char* grgv[]) {

  A *pA=new B;

  If(pA!=NULL)

  pA->fn();

  B *pB=static_cast(pA);

  If(pB!=NULL)

  pB->fn();

  C * pC=static_cast(pA); If(pC!=NULL)

  pC->fn();

  delete pA;

  }

  Answer:

  A constructed

  B constructed

  B fn called

  B fn called

  B fn called

  B deconstructed

  A deconstructed

  c++軟件開發(fā)筆試題目篇3

  1.(2分)以下說法錯誤的是:()

  A)指針和引用作為函數(shù)參數(shù)都可以改變實參

  B)指針和引用都可以在定義后任意的改變指向,引用是不可以改變的。

  C)引用必須在創(chuàng)建的時候初始化,而指針則不需要

  D)不能空引用,但是可以有空指針

  2、(2分) 運算符的重載形式有兩種,重載為_重載為類的內(nèi)部成員函數(shù)____________和_重載為類的友元函數(shù)______________________

  3、(2分) main主函數(shù)執(zhí)行完畢后,是否可能會再執(zhí)行一段代碼?請說明理由? 可以使用注冊函數(shù)讓程序在推出main之后,程序終止之前執(zhí)行自定義的一些代碼!

  全局對象的構(gòu)造函數(shù)會在main 函數(shù)之前執(zhí)行

  利用atexit()函數(shù)可以在程序終止前完成一些“清理”工作——如果將指向一組函數(shù)的指針傳遞給atexit()函數(shù),那么在程序退出main()函數(shù)后(此時程序還未終止)就能自動調(diào)用這組函數(shù)。在使用atexit()函數(shù)時你要注意這樣兩點:

  main 之前:預(yù)編譯 全局變量的初始化等

  main 之后:全局變量的釋放

  main函數(shù)執(zhí)行之前,主要就是初始化系統(tǒng)相關(guān)資源

  mainCRTStartup中被調(diào)用的

  在main之前會調(diào)用一系列初始化函數(shù)來初始化這個進(jìn)程

  而在main之后會調(diào)用exit(int)來進(jìn)行進(jìn)程的清理工作??梢杂胈onexit 注冊一個函數(shù)

  ,可以用_onexit 注冊一個函數(shù),它會在main 之后執(zhí)行int fn1(void), fn2(void), fn3(void), fn4 (void);

  可能會執(zhí)行一些注冊過的Hook

  注意,atexit()以棧的方式注冊函數(shù),后注冊的函數(shù)會先執(zhí)行。

  _onexit和atexit()一樣是以占的方式注冊函數(shù)的,后注冊的函數(shù)會被先執(zhí)行。

  void main( void )

(空格為結(jié)尾,所以str數(shù)組空間大小為5+1)

  4,計算的是指針的長度。

  5,strlen函數(shù)區(qū)的字符指針str的長度,不包括空字符。

  b)

  void func(char str[100])

  {

  Void *p=malloc(100);

  }

  請計算:

  sizeof(str)=100,:表示在內(nèi)存中預(yù)分配的內(nèi)存大小。

  sizeof (p)=4

  c)

  int a[3]={1,2,3};

  int b=sizeof(a)/sizeof(a[0]); sizeof(a)求的是數(shù)組的大小。

  請計算:

  b=3,對的。

  5、(2分) 設(shè)有定義:int n=0,*p=&n,**q=&p; 則以下選項中,正確的賦值語句是(d) a)p=1; b)*q=2; c)q=p; d)*p=5;

  (c)改成q=&p; 才對。

  6、(2分)const關(guān)鍵字的用途?(至少說明兩種)

  答案:

  (1)可以定義 const 常量

  (2)const 可以修飾函數(shù)的參數(shù)、返回值,甚至函數(shù)的定義體。被const 修飾的東 西都受到強制保護(hù),可以預(yù)防意外的變動,能提高程序的健壯性。

  (3)const可以用來修飾指針變量,控制指針變量的存取規(guī)則。

  c++軟件開發(fā)筆試題目篇2

  1、(2分)typedef的c語言中頻繁用以聲明一個已經(jīng)存在的數(shù)據(jù)類型的同義詞。也可以用以預(yù)處理器做類似的事情。例如:

  #define dps struct s*

  Typedef struct s * tps;

  以上兩種情況的意圖都是要定義dps和tps作為一個指向結(jié)構(gòu)s指針。哪種方法更好一些呢?(如果有的話)為什么? 考慮安全性還是用typedef好,宏定義在編譯時是不檢查的,只是簡單替換,而typedef編譯時要檢查的 typedef,而且typedef,define并非等價,如#define string1 char *

  typedef char *string2;第二種才能達(dá)到預(yù)想效果, string1 a,b;

  得到的b是char

  define是做替換的,typedef 則是重新定義一種數(shù)據(jù)類型的??梢韵騣nt型一樣使用的。

  #define FIND(struct,e) (size_t) &(((struct*)0)->e)

  typedef是語句( 以';'結(jié)尾)

  Typedef。它在自己的作用域內(nèi)給一個已經(jīng)存在的類型一個別名

  2、(8分) 以下是一組有關(guān)內(nèi)存知識的問題,請仔細(xì)看題,回答:

  Void GetMemory(char *p)

  {

  P=(char *)malloc(100);

  }

  Void Test(void)

  {

  Char *str=Null;

  GetMemory(str);

  Strcpy(str,”hello world”);

  Printf(str);

  }

  請問運行Test函數(shù)會有什么樣的結(jié)果?

  a)__________程序崩潰,運行時錯誤___________________________

  char *GetMemory(void)

  {

  Char p[]=”hello world”);

  Return p;

  }

  Void Test(void)

  {

  Char *str=NULL;

  Str=GetMemory();

  Printf(str);

  }

  請問運行Test函數(shù)會有什么結(jié)果?

  b)_______________ hello world ________________________________

  void GetMemory2(char **p,int num)

  {

  *p=(char *)malloc(num);

  }

  Void Test(void)

  {

  Char *str=NULL;

  GetMemory(&str,100);

  Strcpy(str,”hello”);

  Printf(str);

  }

  請問運行Test函數(shù)會有什么結(jié)果?

  c)_______ hello __________________________________________

  void Test(void)

  {

  Char *str=(char *)malloc(100);

  Strcpy(str,”hello”);

  Free(str);

  If(str!=NULL)

  {

  Strcpy(str,”world”);

  Printf(str);

  }

  }、

  請問運行test函數(shù)會有什么樣的結(jié)果?

  d)_______程序崩潰:因為釋放str指針后,沒有將指針置為null,所以指針變?yōu)橐爸羔樍?。再?zhí)行cpy時會因為找不到指針的指向而導(dǎo)致程序崩潰,請編程時,注意這一點。 __________________________________________

  3、(6分)請寫出以下程序的輸出結(jié)果:

  Class A

  {

  Public:

  A()

  { Printf(“A constructed.\n”);}

  Virtual ~A()

  {printf(“A deconstructed.\n”);}

  Virtual void Fn()

  {printf(“A fn called.\n”);} };

  Class B:public A

  {

  Public:

  B()

  {printf(“B constructed.\n”);} Virtual ~B()

  {printf(“B deconstructed.\n”);} Virtual void Fn()

  {printf(“B fn called.\n”);} };

  Class C:public B

  {

  Public:

  C()

  {printf(“C constructed.\n”);} Virtual ~C()

  {printf(“C deconstructed.\n”);} Virtual void Fn()

  {printf(“C fn called.\n”);} };

  Void main(int argc,char* grgv[]) {

  A *pA=new B;

  If(pA!=NULL)

  pA->fn();

  B *pB=static_cast(pA);

  If(pB!=NULL)

  pB->fn();

  C * pC=static_cast(pA); If(pC!=NULL)

  pC->fn();

  delete pA;

  }

  Answer:

  A constructed

  B constructed

  B fn called

  B fn called

  B fn called

  B deconstructed

  A deconstructed

  c++軟件開發(fā)筆試題目篇3

  1.(2分)以下說法錯誤的是:()

  A)指針和引用作為函數(shù)參數(shù)都可以改變實參

  B)指針和引用都可以在定義后任意的改變指向,引用是不可以改變的。

  C)引用必須在創(chuàng)建的時候初始化,而指針則不需要

  D)不能空引用,但是可以有空指針

  2、(2分) 運算符的重載形式有兩種,重載為_重載為類的內(nèi)部成員函數(shù)____________和_重載為類的友元函數(shù)______________________

  3、(2分) main主函數(shù)執(zhí)行完畢后,是否可能會再執(zhí)行一段代碼?請說明理由? 可以使用注冊函數(shù)讓程序在推出main之后,程序終止之前執(zhí)行自定義的一些代碼!

  全局對象的構(gòu)造函數(shù)會在main 函數(shù)之前執(zhí)行

  利用atexit()函數(shù)可以在程序終止前完成一些“清理”工作——如果將指向一組函數(shù)的指針傳遞給atexit()函數(shù),那么在程序退出main()函數(shù)后(此時程序還未終止)就能自動調(diào)用這組函數(shù)。在使用atexit()函數(shù)時你要注意這樣兩點:

  main 之前:預(yù)編譯 全局變量的初始化等

  main 之后:全局變量的釋放

  main函數(shù)執(zhí)行之前,主要就是初始化系統(tǒng)相關(guān)資源

  mainCRTStartup中被調(diào)用的

  在main之前會調(diào)用一系列初始化函數(shù)來初始化這個進(jìn)程

  而在main之后會調(diào)用exit(int)來進(jìn)行進(jìn)程的清理工作??梢杂胈onexit 注冊一個函數(shù)

  ,可以用_onexit 注冊一個函數(shù),它會在main 之后執(zhí)行int fn1(void), fn2(void), fn3(void), fn4 (void);

  可能會執(zhí)行一些注冊過的Hook

  注意,atexit()以棧的方式注冊函數(shù),后注冊的函數(shù)會先執(zhí)行。

  _onexit和atexit()一樣是以占的方式注冊函數(shù)的,后注冊的函數(shù)會被先執(zhí)行。

  void main( void )

3168676