<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            C語言

            C語言試題

            時間:2025-01-23 02:02:06 C語言 我要投稿

            C語言試題

              1.函數指針申明時可以不用確定參數類型,只需要在定義和使用時帶上參數類型即可。參考《func1.c》

            C語言試題

              main()

              {

              int f();

              int i,a,b;

              int (*p)();

              scanf("%d",&a);

              p=f;

              for(i=1;i<9;i++)

              {

              printf("Please Input The %d Number:",i);

              scanf("%d",&b);

              a=(*p)(a,b);

              }

              printf("The Max Number is:%d",a);

              }

              f(int x,int y)

              {

              int z;

              z=(x>y)?x:y;

              return z;

              }

              2.數組指針與指針數組:數組指針int (*a)[10],指向數組的指針,指針數組int *a[10],包含10個指針的數組。

              3.char *p1="I love you";和char p2[]="I love you";區別:字符串存放的位置不同,讀寫屬性不同。指針p1指向的字符串位于內存的只讀區,不可改變,數組p2的字符串位于堆棧中,可讀可寫,可以改變。

              4.C語言的extern和static是對立的關鍵字。

              5.strcpy,memcpy,strcat等str函數返回值都是char *.

              6.一般的,如果想讓if判斷一個變量的“真”、“假”,應直接使用if(var)、if(!var),表明其為“邏輯”判斷;如果用if判斷一個數值型變量(short、int、long等),應該用if(var==0),表明是與0進行“數值”上的比較;而判斷指針則適宜用if(var==NULL),這是一種很好的編程習慣。

              7.結構體數組和鏈表很相似,如果不需要中間插入元素,可以優先考慮用結構體數組。

              8.extern "C"作用:實現在C++中調用C函數。

              例如:

              /*C語言頭文件example.h*/

              #ifndef EXAMPLE_H

              #define EXAMPLE_H

              extern int add(int x,int y);

              /*C語言實現文件example.c*/

              int add(int x,int y)

              {

              return (x)+(y);

              }

              /*C++實現文件,調用add(),example.cpp*/

              9.宏實現函數功能在參數有自增自減操作時有副作用

              代碼:

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

              test10()

              {

              int x=3;

              int y=8;

              printf("MIN:%d\n",MIN(x++,y));

              }

              輸出: MIN:4

              extern "C"

              {

              #include "example.h"

              }

              int main(int argc,char *argv[])

              {

              add(2,3);

              return 0;

              }

              實際上extern "C"是表明下面的申明編譯時按照C語言的方式處理,不要做優化,如果沒有extern "C",在C++中將會對申明的函數名處理,上例中就會是add_int_int類似的函數名。

              9.static 在函數內部,表示該變量的值在各個調用間一直保持延續性;

              在函數這一級,表示該函數只對本文件可見

              10.文件存在判斷 -access

              access函數用于判斷文件權限,用F_OK模式可以判斷文件是否存在。

              If(0 == access(*filename,F_OK))

              文件存在時的操作

              11.位寬可變的printf輸出

              int i;

              printf("12345678901234567890\n");

              for(i=10;i>0;i--)

              pirntf("%*s",i,"*\n");

              12.程序在內存中的分段

              存儲態:

              代碼段:存放可執行代碼,變量和申明是不可執行的。字符串常量也存放在此。

              數據段:包含靜態初始化的數據,有初值的全局變量和static變量存放在此。

              BSS段:存放未初始化的全局變量和靜態變量。

              運行態還有stack和heap段。stack段存放局部變量、函數形參和返回值,heap段用于內存的動態分配。

              13.C語言中,僅有4種基本數據類型-整型,浮點型,指針和聚合類型(如數組和指針等).

              整型:字符,短整型,整型和長整型.每一種都有有符號和無符號兩種.

              14.指針和指針變量區別?

              變量存儲于計算機的內存中,每個變量都占據一個特定的位置.每個內存位置都由地址唯一確定并引用,就像一條街道的房子由他們的門牌號碼標識一樣.指針只是地址的另一個名字罷了.指針變量就是一個其值為另外一個(一些)內存地址的變量.

              15.指針和數組區別?

              指針使用必須賦初值,數組使用可以不用賦初值;指針的地址可以輕易改變,數組的首地址不會改變。

            【C語言試題】相關文章:

            C語言試題08-02

            C語言試題11-01

            C語言程序試題04-26

            C語言試題大全08-06

            C語言試題及答案07-26

            C語言練習試題07-01

            c語言經典筆試題10-06

            C語言試題訓練08-07

            C語言考點試題08-19

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看