溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言經典面試題目有哪些

發(fā)布時間:2021-11-22 15:07:26 來源:億速云 閱讀:142 作者:iii 欄目:編程語言

本篇內容介紹了“c語言經典面試題目有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

  1.在下面程序的底畫線處填上適當的字句,使該程序執(zhí)行結果為60。

  # include

  class base{int X;

  public∶

  void int (int initX){X=initX; }

  int Getnum() {return X+7; }

  void main()

  {_______

  _______

  cout<<1test.getnum();<1 p="">

  }

  2.下列程序的輸出結果是。

  #include

  void SB(char ch) {

  switch(ch) {

  case 'A': case 'a':

  cout<<"well !"; break;

  case 'B': case 'b'

  cout<<"good !"; break;

  case 'C': case 'c':

  cout<<"pass ! "; break

  default:

  cout<<"bad! "; break;

  )

  cout<<1endl;<1 p="">

  }

  void main() {

  char a[6] ="Abcaf'

  for(int i=0; a[i]; i++) SB(a[i]);}

  3.在下列程序的空格處填上適當的字句,使輸出為:0,8,5。

  # include

  # include

  class Magic{

  double x;

  public∶

  Magic(double d=0.00)∶x(fabs(d)){}

  Magic _______{return Magic(sqrt(x*x+c.x*c.x));}

  _______<<(ostream & os,Magic c){return os<<1c.x;}<1 p="">

  };

  void main()

  {Magic ma;

  cout<<1ma<1<1’,’<1<1magic(-8)<1<1’,’<1<1ma+magic(-3)+magic(-4);<1 p="">

  }

  關鍵字

  問題一:static關鍵字的作用?

  答:

  Static的用途主要有兩個,一是用于修飾存儲類型使之成為靜態(tài)存儲類型,二是用于修飾鏈接屬性使之成為內部鏈接屬性。

  1.靜態(tài)存儲類型:

  在函數內定義的靜態(tài)局部變量,該變量存在內存的靜態(tài)區(qū),所以即使該函數運行結束,靜態(tài)變量的值不會被銷毀,函數下次運行時能仍用到這個值。

  在函數外定義的靜態(tài)變量——靜態(tài)全局變量,該變量的作用域只能在定義該變量的文件中,不能被其他文件通過extern引用。

  2. 內部鏈接屬性

  靜態(tài)函數只能在聲明它的源文件中使用。

  問題二:const關鍵字的作用?

  答:

  1.聲明常變量,使得指定的變量不能被修改。

  const int a = 5;/*a的值一直為5,不能被改變*/

  const int b; b = 10;/*b的值被賦值為10后,不能被改變*/

  const int *ptr; /*ptr為指向整型常量的指針,ptr的值可以修改,但不能修改其所指向的值*/

  int *const ptr;/*ptr為指向整型的常量指針,ptr的值不能修改,但可以修改其所指向的值*/

  const int *const ptr;/*ptr為指向整型常量的常量指針,ptr及其指向的值都不能修改*/

  2.修飾函數形參,使得形參在函數內不能被修改,表示輸入參數。

  如int fun(const int a);或int fun(const char *str);

  3.修飾函數返回值,使得函數的返回值不能被修改。

  const char *getstr(void);使用:const *str= getstr();

  const int getint(void); 使用:const int a =getint();

  問題三:volatile關鍵字的作用?

  答:

  volatile指定的關鍵字可能被系統(tǒng)、硬件、進程/線程改變,強制編譯器每次從內存中取得該變量的值,而不是從被優(yōu)化后的寄存器中讀取。例子:硬件時鐘;多線程中被多個任務共享的變量等。

  問題四:extern關鍵字的作用?

  答:

  1.用于修飾變量或函數,表明該變量或函數都是在別的文件中定義的,提示編譯器在其他文件中尋找定義。

  extern int a;

  extern int *p;

  extern int array[];

  extern void fun(void);

  其中,在函數的聲明帶有關鍵字extern,僅僅是暗示這個函數可能在別的源文件中定義,沒有其他作用。如:

  頭文件A:A_MODULE.h中包含

  extern int func(int a, int b);

  源文件A: A_MODULE.c中

  #include “A_MODULE.h”

  int func(int a, int b)

  {

  returna+b;

  }

  此時,展開頭文件A_MODULE.h后,為

  extern int func(int a, int b);/*雖然暗示可能在別的源文件中定義,但又在本文件中定義,所以extern并沒有起到什么作用,但也不會產生錯誤*/

  int func(int a, int b)

  {

  returna+b;

  }

  而源文件B:B_MODULE.c中,

  #include “A_MODULE.h”

  int ret = func(10,5);/

  展開頭文件A_MODULE.h后,為

  extern int func(int a, int b);/*暗示在別的源文件中定義,所以在下面使用func(5,10)時,在鏈接的時候到別的目標文件中尋找定義*/

  int ret = func(10,5);

“c語言經典面試題目有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI