日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言e怎么表示_如何一个月学完c语言

發布時間:2023/12/20 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言e怎么表示_如何一个月学完c语言 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

大一的時候,一點都不自律,什么科目都是去那點名后,然后坐在最角落初自個玩手機,特別是程序課,我一個都不懂,有聽一兩節課還是聽不懂,反正就是不懂就對了。課后也沒復習。到了期中考,考了才知道我確實廢了。不如意以為認真就行,離期末考還有1個月,我當時心態炸了,天啊!期末考咋整,學分怎么辦。

我調整了心態好好學,在b站看看關于c語言入門教學視頻,其中有個感覺還不錯的up主:小甲魚,內容不全面,只能大概了解下內容。然后針對性的復習,整理筆記。我覺得最重要的是循環程序,過程基礎重要,還有那個標識符。編程題真的不能自學出來的,特別復雜,在此建議你們有機會好好學吧,或者多參考些參考書說不定就歐克了。

給你們整理了一些較為重要的知識點:

1.標識符:只能以字母、下劃線開頭。

2.循環:看if if.......else while do.........while for 等循環語句,注意看他們循環的圖形原理。

3.位運算:<< >> ^ ~這些符號的意思

4.指針:說白了就是取地址,就是要你找到地址的。

5.數組:就是讓你知道第一維表示行,第二維表示豎。他特喜歡和指針和循環體結合在一起。

6.共同體:具體看書吧,我到現在也不了解。

7.文件:就是了解foropen forclose 等等的結構運行原理。

我其他的也忘了差不多,我在期末考時為了能過,硬是寫了37頁的選擇題,其中也有這個作用吧。這個文件我可以分享給你們,你們也可以去試著做,每個選擇題的答案在每個題目前面

C 0101、C語言源程序中,以下敘述正確的是()

A.main函數必須位于文件的開頭

B.每行只能寫一條語句

C.程序中的一個語句可以寫成多行

D.每個語句的最后必須有點號

C 0102、關于C語言的源程序的敘述中,錯誤的是( )。

A.C語言的源程序由函數構成

B.main函數可以書寫在自定義函數之后

C.必須包含有輸入語句

D.一行可以書寫多個語句 

C 0103、關于C語言數據類型的敘述,正確的是()

A.枚舉類型不是基本類型

B.數組不是構造類型

C.變量必須先定義后使用

D.不允許使用空類型

C 0104、C程序中main函數的位置( )

A.必須在最開始

B.必須在系統庫函數后面

C.可以在自定義函數后面

D.必須在最后

B 0105、C語言的函數體由( )括起來

A.( ) B. { } C. [ ] D)/* */

D 0106、關于C語言的敘述中,不正確的是( )。

A.C程序可由一個或多個函數組成

B.C程序必須包含一個main()函數

C.C程序的基本組成單位是函數

D.注釋說明只能位于一條語句的后面

D 0107、以下敘述不正確的是()。

A.C程序的執行總是從main函數開始

B.一個C源程序必須包含一個main函數

C.C語言程序的基本組成單位是函數

D.在編譯C程序源程序時,可發現注釋中的拼寫錯誤

C 0108、結構化程序設計的三種基本結構是()。

A.函數結構、分支結構、判斷結構

B.函數結構、嵌套結構、平行結構

C.順序結構、分支結構、循環結構

D.分支結構、循環結構、嵌套結構

C 0109、對于C語言源程序,以下敘述錯誤的是( )。

A.可以有空語句

B.函數之間是平等的,在一個函數內部不能定義其它函數

C.程序調試時如果沒有提示錯誤,就能得到正確結果

D.注釋可以出現在語句的前面

C 0110、C語言中,復合語句的構成是將一系列語句置于()。

A.begin與end之間

B.一對圓括號 “( )”之間

C.一對圓括號 “{ }”之間

D.一對圓括號 “[ ]”之間

D 0201、下面關于C語言用戶標識符的描述,正確的是()

A.不區分大小寫

B.用戶標識符不能描述常量

C.類型名也是用戶標識符

D.用戶標識符可以作為變量名

D 0202、以下( )是正確的變量名。

A.5f

B.if

C.f.5

D._f5

D 0203、以下( )是正確的常量。

A.E–5

B.1E5.1

C.'a12'

D.32766L

D 0204、以下( )是正確的變量名。

A.a.bee

B.–p11

http://C.int

D.p_11

C 0205、以下( )是正確的字符常量。

A."c"

B.'''

C.'W'

D."32a"

A 0206、以下( )是不正確的字符串常量。

A.'abc'

B."12'12"

C."0"

D." "

B 0207、下列錯誤的整型常量是()。

A.–0xcdf

B.018

C.0xe

D.011

B 0208、以下是正確的浮點數是()。

A.e3

B..62

C.2e4.5

D.123

A 0209、若有說明語句:char c=’95’;則變量c包含()個字符。

A.1

B.2

C.3

D.語法錯誤

D 0210、以下( )是正確變量名。

A.a.bee B.-p11 http://C.int D.p_11

A 0301、若有定義:int x=2;則正確的賦值表達式是()

A.a–=(a*3)

B.double(–A.

C.a*3

D.a*4=3

C 0302、語句x=(a=3,b=++a);運行后,x、a、b的值依次為()。

A.3,3,4

B.4,4,3

C.4,4,4

D.3,4,3

B 0303、語句a=(3/4)+3%2;運行后,a的值為( )。

A.0

B.1

C.2

D.3

A 0304、char型變量存放的是( )。

A.ASCII代碼值

B.字符本身

C.十進制代碼值

D.十六進制代碼值

C 0305、若有定義:int x,a;則語句x=(a=3,a+1);運行后,x、a的值依次為()。

A.3,3

B.4,4

C.4,3

D.3,4

B 0306、若有定義:int a;則語句a=(3*4)+2%3;運行后,a的值為()。

A.12

B.14

C.11

D.17

A 0307、若有定義:int a,b;double x;,則以下不符合C語言語法的表達式是()。

A.x%(–3)

B.a+=–2

C.a=b=2

D.x=a+b

B 0308、若有定義:int x=2,y=3; float i; 則以下符合C語言語法的表達式是()。

A.x=x*3=2

B.x=(y==1)

C.i=float(x)

D.i%(–3)

C 0309、設double型變量a,b,c均有值;對代數式(3ae)/(bc)不正確的C語言表達式是( )。

A.a/b/c*e*3

B.3*a*e/b/c

C.3*a*e/b*c

D.a*e/c/b*3

C 0310、以下四項中,符合C語言語法的語句是()。

http://A.int a+b=c;

http://B.int a=12:b=12:c=12;

http://C.int a=12,b=12,c=12;

http://D.int a,b=12, float c=21;

B 0401、下面敘述正確的是( )。

A.2/3 與 2.0/3.0 等價

B.(int)2.0/3 與 2/3 等價

C.++5 與 6 等價

D.'A'與"A"等價

A 0402、下面關于算術運算符的敘述,錯誤的是( )。

A.其算術運算對象不包含函數

B.%(模運算符)的運算對象只能為整型量

C.算術運算符的結合方向是"自左至右"

D.自加和自減運算符的結合方向是"自右至左"

A 0403、下面敘述正確的是( )。

A.強制類型轉換運算的優先級高于算術運算

B.若a和b是整型變量,(a+b)++是合法的

C.'A'*'B' 是不合法的

D."A"+"B"是合法的

B 0404、若有定義:int k,i=2,j=4;則表達式k=(++i)*(j--) 的值是( ).

A.8

B.12

C.6

D.9

C 0405、設整型變量a為5,使b不為2的表達式是( )。

A.b=(++a)/3

B.b=6–(––a)

C.b=a%2

D.b=a/2

C 0406、若有定義:int a=1,b=2,c=3;則語句++a||++b&&++c;運行后b的值為( )。

A.1 B.0 C.2 D.3

B 0407、int i,j;則表達式(i=2,j=5,i++,i+j++)的值是()

A.7 B.8 C. 9 D.10

B 0408、int a,b;則表達式(a=2,b=5,a*2,b++,a+b)的值是().

A.7 B.8 C.9 D.10

B 0409、若有定義:int m=5,n=3;則表達式(m+1,n+1,(--m)+(n--))的值是()。

A.6 B.7 C.8 D.9

C 0410、若已定義:int i=3,k;則語句k=(i--)+(i--);運行后k的值為()。

A.4 B.5 C.6 D.7

B 0501、已知int a;使用scanf()函數輸入一個整數給變量a,正確的函數調用是( )。

A.scanf("%d",a);

B.scanf("%d",&a);

C.scanf("%f",&a);

D.scanf("%lf",&a);

D 0502、已知double a ; 使用scanf()函數輸入一個整數給變量a,正確的函數調用是( )。

A.scanf("%ld",&a);

B.scanf("%d",&a);

C.scanf("%7.2f",&a);

D.scanf("%lf",&a);

B 0503、已知char a;使用scanf()函數輸入一個字符給變量a ,不正確的函數調用是( )

A.scanf("%d",&a);

B.scanf("%lf",&a);

C.scanf("%c",&a);

D.scanf("%u",&a);

B 0504、putchar()函數的功能是向終端輸出( )。

A.多個字符

B.一個字符

C.一個實型變量值

D.一個整型變量表達式

D 0505、getchar()函數的功能是從終端輸入( )。

A.一個整型變量值

B.一個實型變量值

C.多個字符

D.一個字符

0506 D 若有定義:int x=1234,y=123,z=12;則語句printf(“%4d+%3d+%2d”,x,y,z);運行后的輸出結果為()。

A.123412312

B.12341234123412341231231231212

C.1234+1234+1234

D.1234+123+12

0507 A 已有如下定義和輸入語句,

int a;char c1,c2;

scanf("%d%c%c",&a,&c1,&c2);

若要求a、c1、c2的值分別為10、A和B,正確的數據輸入是()。

A.10AB

B.10 A B

C.10A B

D.10 AB

0508 B 已知如下定義和輸入語句:int a,b;

scanf((“%d,%d”,&a,&b);若要求a和b的值分別為10和20,則正確的數據輸入是()。

A.10 20

B.10,20

C.a=10,b=20

D.10;20

0509 D 下列程序運行結果為()。

void main()

{ int a=65; char c=’A’;

printf(“%x,%d”,a,c);

}

A.65,a

B.41,a

C.65,65

D.41,65

0510 B 若已定義:int a=5;float b=63.72; 以下語句中能輸出正確值的是( )。

A.printf(“%d %d”,a,b);

B.printf(“%d %.2f”,a,b);

C.printf(“%.2f %.2f”,a,b);

D.printf(“%.2f %d”,a,b);

A 0601、下面敘述中,( )不是結構化程序設計中的三種基本結構之一。

A.數據結構

B.選擇結構

C.循環結構

D.順序結構

A 0602、下面敘述中,( )不是結構化程序設計三種基本結構的共同特點。

A.先判斷后執行

B.單入口,單出口

C.程序中沒有執行不到的語句

D.無死循環

A 0603、結構化程序設計不包括( )。

A.最優化

B.自頂而下,逐步細化

C.模塊化設計

D.結構化編碼

D 0604、以下運算符中優先級最高的是()。

A.>

B.||

C.&&

D.+

A 0605、若有定義:int x=3,y=4;則表達式!x||y的值為()。

  • 1
  • O
  • 3
  • 4
  • A 0606、若有定義:int i=7,j=8;則表達式i>=j||i<j的值為()。

  • 1
  • 變量i的值
  • 0
  • 變量j的值
  • C 0607、若希望當a的值為奇數時,表達式的值為“真”,a的值為偶數時,表達式的值為“假”,則不能滿足要求的表達式是()。

  • a%2==1
  • !(a%2==0)
  • !(a%2)
  • a%2
  • D 0608、若有定義:int x=3,y=4,z=5;則值為0的表達式是()。

  • 'x'&&'y'
  • x<=y
  • x||y+z&&y–z
  • !((x<y)&&!z||1)
  • A 0609、若有定義: int a=5,b=2,c=1;則表達式a-b<c||b==c的值是()。

  • 0
  • 1
  • 2
  • –1
  • C 0610、在下列運算符中,優先級最高的是()。

  • <=
  • !=
  • !
  • ||
  • A 0701、已知 double a=5.2; 則正確的賦值表達式是( )。

  • a+=a–=(a=4)*(a=3)
  • a=a*3=2
  • a%3
  • a=double(–3)
  • A 0702、已知char a=’R’; 則正確的賦值表達式是()

  • a=(a++)%4
  • a+2=3
  • a+=256––
  • a='078'
  • A 0703、已知int a=’R’; 則正確的表達式是( )

  • a%10
  • a=int(3e2)
  • 2*a=a++
  • a=a+a=a+3
  • A 0704、設單精度型變量f、g的值均為2.0,使f為4.0的表達式是()。

  • f+=g
  • f–=g+2
  • f*=g–6
  • f/=g*10
  • B 0705、若有定義:float x=3.5;int z=8;則表達式x+z%3/4的值為()。

  • 3.75
  • 3.5
  • 3
  • 4
  • A 0706、若有定義:int a=1,b=2,c=3,d=4,x=5,y=6;則表達式(x=a>b)&&(y=c>d)的值為( )。

  • 0
  • 1
  • 5
  • 6
  • A 0707、若有定義:int a=2,b=3;float x=3.5,y=2.5;則表達式(float)(a+b)/2+(int)x%(int)y的值是()。

  • 3.5
  • 3.0
  • 2.5
  • 2.0
  • C 0708、若有定義:int b=7;float a=2.5,c=4.7;則表達式a+(b/2*(int)(a+c)/2)%4的值是()。

  • 2.5
  • 3.5
  • 4.5
  • 5.5
  • C 0709、若定義:int a=6,b=2;char c1=’a’,c2=’b’;則表達式a+b%5+c2-c1的值是()。

  • 7
  • 8
  • 9
  • 表達式錯誤
  • B 0710、若已定義: int a=10;float b=2.5; 語句printf("%f",a+b*10/3);的輸出結果為( )。

    A.18 B.18.333333 C.41 D.41.666667

    B 0801、以下的語句中,無內嵌的if語句是( )。

  • if(x==y) x+=y;
  • if(x>y && x!=y );
  • x+=y;
  • if(x!=y)
  • scanf("%d",&x);
  • else
  • scanf("%d",&y);
  • if(x<y)
  • { x++;y++; }
  • B 0802、C語言對if嵌套語句的規定:else總是與( )配對。

  • 第一個if
  • 之前最近的且尚未配對的if
  • 縮進位置相同的if
  • 之前最近的if
  • B 0803、對于整型變量x,下述if語句( )與賦值語句:x=x%2= =0?1:0; 不等價。

  • if (x%2!=0) x=0; else x=1;
  • if (x%2) x=1; else x=0;
  • if (x%2==0) x=1; else x=0;
  • if (x%2==1) x=0; else x=1;
  • B 0804、若有定義:int x=1,y=2,z=4;則以下程序段運行后z的值為()。

    if(x>y)z=x+y;

    else z=x-y;

  • 3
  • –1
  • 4
  • 不確定
  • D 0805、若有定義:inta=1,b=2,c=3;則以下程序段運行后a,b,c的值分別為()。

    if(a<b){c=a;a=b;b=c;}

  • a=1,b=2,c=3
  • a=2,b=3,c=1
  • a=2,b=3,c=3
  • a=2,b=1,c=1
  • D 0806、以下程序段運行后a的值為()。

    int x=6,y=5;

    int a;

    a=(--x==y++)?x:y+1;

  • 0
  • 1
  • 6
  • 5
  • C 0807、以下程序的運行結果()。

    void main()

    { int n=’e’;

    switch(n--)

    { default: printf(“error”);

    case ‘a’:

    case ‘b’: printf(“good”);break;

    case ‘c’: printf(“pass”);

    case ‘d’: printf(“warn”);

    }

    }

  • error
  • good
  • error good
  • warn
  • C 0808、 以下程序的運行結果是()

    void main()

    { int n='c';

    switch(n++)

    { default:printf("error");break;

    case 'a':

    case 'b':printf("good");break;

    case 'c':printf("pass");

    case 'd':printf("warn");

    }

    }

  • pass
  • warn
  • pass warn
  • error
  • D 0809、以下程序的運行結果是()。

    voin main()

    int n=5;

    if(n++>=6)

    printf(“%dn”, n);

    else

    printf(“%dn”, ++n;)

  • 4
  • 5
  • 6
  • 7
  • A 0810、 下面關于switch語句的敘述中,錯誤的是()。

  • case后面的表達式可以是關系表達式
  • switch語句是多分支選擇語句
  • 每一個case后面的值必須互不相同,否則會出現互相相矛盾的現象
  • 在執行一個case分支后,可用一個break語句使流程跳出switch語句
  • B 0901、設有整型變量x,下述語句( )不會出現死循環。

  • for(;;x+=1);
  • for(;(x=getchar())!='n';);
  • while(1) {x++;}
  • for(x=10;;x––);
  • B 0902、對于整型變量x,與while(!x) 等價的是( )。

  • while(x!=0)
  • while(x==0)
  • while(x!=1)
  • while(~x)
  • A 0903、對于整型變量x和y,語句for(x=0,y=0;(y!=123)&&(x<4);x++) y++;中的“y++;”被執行( )。

  • 4次
  • 0次
  • 123次
  • 3次
  • B 0904、在C語言中while循環和do—while循環的主要區別是()。

  • do––while循環體內可以使用break語句,while循環體內不能使用break語句
  • do––while的循環體至少無條件執行一次,while的循環體不是
  • do––while循環體內可以使用continue語句,while循環體內不能使用continue語句
  • while的循環體至少無條件執行一次,do––while的循環體不是
  • B 0905、以下程序段運行后,循環體運行的次數為()。 int i=10, x;

    for( ; i<10; i++) x=x+ i;

  • 10
  • 0
  • 1
  • 無限
  • D 0906、以下程序段運行后變量n的值為()。

    int i=1,n=1;

    for( ; i<3; i++) {continue;n=n+i;}

  • 4
  • 3
  • 2
  • 1
  • B 0907、以下程序的運行結果是()

    void main()

    {int sum=0,item=0;

    while(item<5)

    { item++;

    sum+=item;

    if(sum==5)

    break;

    }

    printf("%dn",sum);

    }

  • 10
  • 15
  • 5
  • 6
  • C 0908、下列程序的運行結果為()。

    void main()

    { int sum=0,item=0;

    while(item<5)

    {item++;

    sum+=item;

    if(sum>=6)

    break;}

    printf(“%dn”,sum);

    }

  • 10
  • 15
  • 6
  • 7
  • B 0909、下列程序的運行結果為()。

    void main()

    { int sum=0,item=0;

    while(item<5)

    {item++;

    if(item==2)

    continue;

    sum+=item;

    }

    printf(“%dn”,sum);

    }

  • 10
  • 13
  • 15
  • 1
  • B 0910、以下程序運行后,循環體中的”count+=2;”語句運行的次數為()。

    int i,j,count=0;

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

    { for( j=1;j<=i;j++)

    {count+=2;

    printf(“%d”,count);}

    }

    A. 8次 B. 10次 C)16次 D)20次

    A1001、下列數組聲明中,正確的是( )。

  • int a[5]={0};
  • int a[]={0 1 2};
  • int a[5]=0;
  • int a[];
  • A1002、下列數組聲明中,正確的是( )。

  • int a[10];
  • int n=10,a[n];
  • int N=10;int a[N];
  • int n;scanf("%d",&n); int a[n];
  • C1003、已知 int a[13]; 則不能正確引用a數組元素的是( )。

  • a[0]
  • a[10]
  • a[10+3]
  • a[13-5]
  • B1004、若有定義:int a[3]={0,1,2};則a[1]的值為()。

  • 0
  • 1
  • 2
  • 3
  • A1005、若有定義:int a[5]={1,2,3,4,5}; 則語句a[1]=a[3]+a[2+2]-a[3-1];運行后a[1]的值為()。

  • 6
  • 5
  • 1
  • 2
  • D1006、以下能對一維數組a進行正確初始化的語句是()。

  • int a[5]=(0,0,0,0,0);
  • int a[5]=[0];
  • int a[5]={1,2,3,4,5,6,7};
  • int a[]={0};
  • D1007、下面程序段的運行結果是()。

    int i=0,a[]={3,4,5,4,3};

    do{ a[i]++;

    }while(a[++i]<5)

    for(i=0;i<5;i++)

    printf(“%d”,a[i]);

  • 4 5 6 5 4
  • 3 4 5 4 3
  • 4 5 5 5 4
  • 4 5 5 4 3
  • C1008、下列程序段的運行結果為()。

    int i=0,a[]={7,5,7,3,8,3};

    do{ a[i]+=2;

    }while (a[++i]>5);

    for(i=0;i<6;i++)

    printf(“%d ”,a[i]);

  • 9 7 9 5 10 5
  • 9 5 9 3 10 3
  • 9 5 7 3 8 3
  • 7 5 7 3 8 3
  • A1009、下列程序的運行結果是()。

    int i=0,a[]={1,2,3,4,5};

    do{ a[i]++10;

    }while(a[++i]>2);

    for(i=0;i<5;i++)

    printf(“%d”,a[i]);

    A. 11 2 3 4 5

    B. 1 2 3 4 5

    C. 11 12 13 14 15

    D. 11 12 3 4 5

    B1010、C語言中數組元素下標的數據類型是()。

  • 實型常量
  • 整型常量或整型表達式
  • 任何類型的表達式
  • 字符型變量
  • C1101、設有如下程序段:

    int a[3][3]={1,0,2,1,0,2,1,0,1}, i , j, s=0;

    for(i=0;i<3;i++)

    for(j=0;j<i;j++)

    s=s+a[i][j];

    則執行該程序段后,s的值是( )。

  • 0
  • 1
  • 2
  • 3
  • B1102、有如下定義int a[][3]={1,2,3,4,5,6,7,8};

    則數組a的行數是( )。

  • 2
  • 3
  • 4
  • 無法確定的
  • D1103、以下數組定義中,正確的是( )。

  • int a[2][3]={1,2,3,4,5,6,7};
  • int a[][]={{1,2,3},{4,5,6},{7,8,9}};
  • int a[2][]= {1,2,3,4,5,6};
  • int a[][4]= {6};
  • A1104、若有定義:int a[3][4]={{1,2},{0},{1,2,3}};則a[1][1]的值為()。

  • 0
  • {1,2}
  • 1
  • 3
  • A1105、若有定義:int a[3][3];則&a[2][1]-a的值為()。

  • 7
  • 8
  • 6
  • 9
  • D1106、若有定義:int i=0,x=0;int a[3][4]={1,2,3,4,5,6,7,8,9};則以下程序段運行后x的值為()。

    for ( ; i<3; i++) x+=a[i][2-i];

  • 0
  • 12
  • 15
  • 18
  • D1107、int a[2][3];對數組非法引用的是()。

  • a[0][1/2]
  • a[1][1]
  • a[4–4][0]
  • a[0][3]
  • C1108、以下數組定義中,正確的是()。

  • int a[2][]={1,2,3,4,5};
  • int a[][2]={{0},{}};
  • int a[2][2]={{1,2},{3}};
  • int a[][]={1,2,3,4};
  • A 1109、若有定義int a[][3]={1,2,3,4,5,6,7,8,9}; 則表達式sizeof(a)/sizeof(a[0])的值為()。

  • 3
  • 4
  • 5
  • 9
  • B1110、以下程序段運行后s的值是()。

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

    int i,j,s=1;

    for(i=0;i<3;i++)

    for(j=i;j<3;j++)

    s*=a[i][j];

    A. 18 B. 108 C. 2 D. 12

    A 1201、設有以下變量定義:char str1[]=”string”, str2[8],*str3, *str4=”string”;( )是正確的。

  • strcpy(str1,"China");
  • str2="China";
  • strcpy(*str3,"China");
  • strcpy(str4[0],"China");
  • D1202、有如下定義:

    char str[6]={‘a’,’b’,’0’,’d’,’e’,’f’};

    則語句:printf(“%s”,str);的輸出結果是( )。

  • ab
  • abdef
  • ab0
  • ab
  • C1203 、設有如下數組定義:char str[8]={“FuJian”}; 則分配給數組str的存儲空間是( )字節。

  • 6
  • 7
  • 8
  • 9
  • B1204、若有定義:char a[ ]=”abcdef”;char b[]=”xyz”;則以下程序運行后屏幕輸出為()。

    strcpy(a,b); printf(“%c”,a[2]);

  • c
  • z
  • 0
  • d
  • C1205、以下程序段運行后屏幕輸出為()。

    char a[ ]= “abc0mis”; printf(“%d”,strlen(a));

  • 5
  • 8
  • 3
  • 4
  • B1206、若有定義:int a=2;則語句

    a=strcmp(“miss”, “miss”);運行后a的值為( )。

  • 1
  • 0
  • –1
  • 2
  • B1207、下列程序運行后輸出( ).

    char str[ ]=”abcd”; printf(“%d”,strlen(str));

  • 4
  • 5
  • 6
  • 7
  • A1208、以下程序運行后屏幕輸出為()。

    char str[60]; strcpy(str,”hello”);

    printf(“%d”,strlen(str));

  • 5
  • 6
  • 7
  • 80
  • B1209、char str1[6]= “abcdm”,*ps,*str2= “abcdef”;( )是正確的。

  • strcpy(str1,str2);
  • 表達式strcmp(str1,str2)的值大于0
  • str1=str2;
  • 表達式strlen(str1)的值為6
  • D1210、有如下定義:

    char str[3][2]={‘a’,’b’,’c’,’0’,’e’,’f’};

    則語句:printf(“%s”,str[0]);的輸出結果是( )。

  • ab
  • abcef
  • abc0
  • abc
  • A1301、設有如下函數定義:

    int fun(char *str)

    { char *p=str;

    while (*p!=’0’) p++;

    return (p-str);

    }則以下語句執行后的輸出結果是( )

    printf(“%dn”,fun(“Student”))

  • 7
  • 8
  • 9
  • 10
  • A1302、以下程序的運行結果是( )。

    int fun(int array[4][4])

    {int j;

    for(j=0;j<4;j++) printf(“%2d”,array[2][j]);

    printf(“n”);

    }

    main()

    {int a[4][4]={0,1,2,0,1,0,0,4,2,0,0,5,0,4,5,0};

    fun(a);

    }

  • 2005
  • 1004
  • 0120
  • 0450
  • C1303、如下fun函數的類型是( )。

    fun(float x)

    {double y; int z;

    y=x*x;

    z=(int)y;

    return(z);

    }

  • void
  • double
  • int
  • float
  • B1304、以下程序運行后屏幕輸出為()。

    #include<stdio.h>

    int f(int x, int y)

    { return (x+y); }

    main()

    { int a=2,b=3,c;

    c=f(a, b);

    printf(“%d+%d=%d”,a,b,c);

    }

  • 0
  • 2+3=5
  • 2+3=0
  • 3+2=5
  • D1305、以下程序運行后屏幕輸出為()。

    #include<stdio.h>

    int a=2,b=3;

    int max (int a, int b)

    { int c;

    c=a>b?a:b;

    return (c);

    }

    main()

    { int a=4;

    printf(“%d”,max(a,b));

    }

  • 2,3 B. 2 C. 3 D.4
  • B1306、以下程序運行后屏幕輸出為()。

    #include <stdio.h>

    void f(int i)

    { int a=2;

    a=i++;

    printf(“%d,” ,a ); }

    main( )

    { int a=1,c=3;

    f(c);

    a=c++;

    printf(“%d”,a);

    }

  • 4,3
  • 3,3
  • 4,5
  • 3,5
  • D1307、int fun()

    {static int k=0;

    return ++k;

    }

    以下程序段運行后輸出()。

    int i;

    for(i=1;i<=5;i++) fun();

    printf(“%d”,fun());

  • 0 B. 1 C. 5 D. 6
  • D1308、以下程序運行后屏幕輸出為()。

    #include <stdio.h>

    int global=100;

    fun ( )

    { int global=5;

    return ++global; }

    void main( )

    { printf(“%dn”,fun( ));

    }

  • 100
  • 101
  • 5
  • 6
  • B1309、下列關于C語言函數的描述中正確的是()。

  • 函數的定義可以嵌套,但函數的調用不可以嵌套
  • 函數的定義不可以嵌套,但函數的調用可以嵌套
  • 函數的定義和函數的調用都可以嵌套
  • 函數的定義和函數的調用都不可以嵌套
  • B1310、以下程序運行結果是()。

    fun (int i )

    { int a=2;

    a=i++;

    printf(“%d,” ,a ); }

    main( )

    { int a=5,c=3;

    fun(c);

    printf(“%d”,a);

    }

    A. 4 5 B. 3 5 C.4 4 D. 3 3

    C 1401、以下程序的運行結果是( )。

    #include<stdio.h>

    int fun()

    { static int k=0;

    k++;

    return k;

    }

    int main()

    { int i,n;

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

    n=fun();

    printf("%dn",n);

    return 0;

    }

    A.0 B.1 C.10 D.9

    C 1402、以下程序的運行結果是( )。

    #include<stdio.h>

    int fun(int x,int y)

    { return x>y?x:y; }

    int main()

    { int m=1,n=2;

    printf("%dn",fun(m,n));

    return 0;

    }

    A.0 B.1 C.2 D.3

    A 1403、函數定義時,返回值類型定義為( ),則表示該函數無返回值。

    A.void B.float C.empty D.double

    C 1404、以下程序的運行結果是( )。

    #include<stdio.h>

    int k=0;

    void fun1(){ k=10; }

    int fun2(){ k++; return k; }

    int main()

    { fun1();

    printf("%dn",fun2() );

    return 0;

    }

    A.0 B.10 C.11 D.12

    C 1405、以下程序的運行結果是( )。

    #include<stdio.h>

    void fun() { int k=10; printf("%d",k); }

    int main()

    { int k=0; printf("%d,",k);

    fun();

    return 0;

    }

    A.0,0 B.10,10 C.0,10 D.10,0

    B 1406、以下程序的運行結果是( )。

    #include<stdio.h>

    void fun(int x, int *py)

    { x++;

    (*py)--;

    }

    int main( )

    { int a=5,b=10;

    fun(a,&b);

    printf("a=%d,b=%dn",a,b);

    return 0;

    }

    A.a=5,b=10 B.a=5,b=9 C.a=6,b=9 D.a=6,b=10

    B 1407、以下程序的運行結果是( )。

    #include<stdio.h>

    void fun(int x)

    { x++;

    printf("%d ",x);

    }

    int main( )

    { int a=5;

    fun(a);

    printf("%dn",a);

    return 0;

    }

    A.5 6 B.6 5 C.5 5 D.6 6

    B 1408、以下程序的運行結果是( )。

    #include<stdio.h>

    int fun(int x)

    { if(x==1) return 1;

    return x*fun(x/2);

    }

    int main( )

    { int a=5;

    printf("%dn",fun(a));

    return 0;

    }

    A.5 B.10 C.50 D.15

    B 1409、以下程序的運行結果是( )。

    #include<stdio.h>

    int fun(int x)

    { if(x==0) return 1;

    return fun(x/2);

    }

    int main( )

    { int a=5;

    printf("%dn",fun(a));

    return 0;

    }

    A.5 B.1 C.0 D.2

    B 1410、以下程序的運行結果是( )。

    #include<stdio.h>

    int fun(int a[],int n)

    { if(n==1) return a[0];

    return fun(a,n-1)+a[n-1];

    }

    int main( )

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

    printf("%dn",fun(a,5));

    return 0;

    }

    A.5 B.15 C.10 D.1

    D1501、若有以下宏定義,#define MOD(x,y) x%y

    則執行以下程序段后,z的值是( )。

    int z,a=15,b=100;

    z=MOD(b,a);

  • 100
  • 15
  • 11
  • 10
  • B1502、以下敘述中,正確的是( )。

  • “#define PRICE=30”定義了與30等價的符號常量PRICE
  • 預編譯處理命令行都必須以“#”開頭
  • 程序中使用帶參數的宏時,參數類型要與宏定義時一致
  • 宏名只能包含大寫字母和數字字符
  • A1503、以下敘述中,正確的是( )。

  • 宏展開不占用運行時間,只占用編譯時間
  • 預編譯處理命令行必須以分號結束
  • 一個源程序只能有一個預編譯處理命令行
  • 使用帶參數的宏定義時,應該說明每個參數的數據類型
  • C1504、以下敘述中不正確的是( )。

  • 宏展開不占用運行時間,只占用編譯時間
  • 宏名無類型
  • 宏名必須用大寫字母表示
  • 預處理命令行都必須以#號開始
  • A1505、若有定義: #define PI 3, 則表達式PI*2*2的值為()。

  • 12
  • 4
  • 3
  • 不確定
  • C1506、以下程序運行后,屏幕輸出為()。

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

    main()

    { int x=2,y=3,z;

    z=2*MIN(x,y);

    printf(“%d”,z);

    }

  • 2 B.3 C. 4 D. 6
  • A1507、下面程序的輸出結果是()。

    #include <stdio.h>

    #define SQR(x) (x*x)

    void main()

    { int a,b=3;

    a=SQR(b+2);

    printf(“n%d”,a); }

  • 11
  • 25
  • 不定值
  • 產生錯誤
  • C1508、下面程序的輸出結果是()。

    #include <stdio.h>

    #define ONE 1

    #define TWO ONE+1

    #define THREE TWO+1

    void main()

    { printf(“%dn”,THREE-ONE)

    }

  • 產生錯誤
  • 1
  • 2
  • 3
  • B1509、以下敘述正確的是()。

  • 預處理命令行必須位于C源程序的起始位置
  • 在C語言中,預處理命令行都以"#"開頭
  • 每個C程序必須在開頭包含預處理命令行:#include<stdio.h>
  • C語言的預處理不能實現宏定義和條件編譯的功能
  • A1510、以下敘述錯誤的是( )。

    A.宏定義不占用程序運行時間,但與程序中的語句一樣需要編譯

    B.宏定義必須放置在它所在的源程序文件的最前面

    C.一個C語言源程序可以有多條預處理命令

    D.宏定義中的宏名一般用大寫字母表示

    D1601、設有以下語句,則( )是對a數組元素的不正確引用,其中0≤i<10。

    int a[10]={0,1,2,3,4,5,6,7,8,9}, *p=a ;

  • a[p–a]
  • *(&a[i])
  • p[i]
  • *(*(a+i))
  • C1602、若有定義int *p1,*p2;,則指針變量p1、p2不能進行的運算是( )。

  • <
  • =
  • +
  • B1603、執行以下程序段的輸出結果是( )。

    int a=10,*p=&a;

    printf(“%d”,++*p);

  • 10
  • 11
  • 變量a的地址
  • 變量a的地址 + 1
  • A1604、以下程序段運行后*(p+3)的值為()。

    char a[]=”good”;

    char *p;

    p=a;

  • 'd'
  • '0'
  • 存放'd'的地址
  • 'o'
  • C1605、以下程序段運行后*(++p)的值為()。

    char a[5]=”work”;

    char *p;

    p=a;

  • 'w'
  • 存放'w'的地址
  • 'o'
  • 存放'o'的地址
  • B1606、若有定義:int *p,a=4; p=&a;則以下均代表地址的是()。

  • a,p
  • &a,p
  • &a,*p
  • a,*p
  • D1607、若有說明語句:double *p,a; 則能通過scanf語句正確輸入項讀入數據的程序段是()。

  • *p=&a;scanf("%lf",p);
  • *p=&a;scanf("%lf",*p);
  • p=&a;scanf("%lf",*p);
  • p=&a;scanf("%lf",p);
  • A1608、在16位編譯系統上,定義int a[]={10,20,30} , *p=&a; 當執行p++;后下列錯誤的是()。

  • p向高地址移了一個字節
  • p與a+1等價
  • 語句printf("%d",*p);輸出20
  • p指向數組元素a[1]
  • B1609、下面語句正確的是()。

  • int *p; *p=20;
  • char *s="abcdef"; printf("%sn",s);
  • char str[]="abcd"; str++;
  • char str[]={'a','b','c'};printf("%s",str);
  • A 1610、以下程序的運行結果是( )。

    #include<stdio.h>

    int main()

    { int a=1,b=2,*pa=&a,*pb=&b;

    (*pa)++;

    printf("%dn",a+b);

    return 0;

    }

    A.4 B.3 C.1 D.2

    D1701、若有以下程序段,且0≤i<4,0≤j<3,則不能正確訪問a數組元素的是( )。

    int i,j,(*p)[3];

    int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12};

    p=a;

  • *(*(a+i)+j)
  • p[i][j]
  • (*(p+i))[j]
  • p[i]+j
  • B1702、若函數fun的函數頭為:int fun(int i,int j)

    且函數指針變量p定義如下:

    int (*p)(int i,int j);

    則要使指針p指向函數fun的賦值語句是( )。

  • p=*fun;
  • p=fun;
  • p=fun(i,j);
  • p=&fun;
  • D1703、設有如下變量定義:

    char aa[ ][3]={‘a’,’b’,’c’,’d’,’e’,’f’};

    char (*p)[3]=aa;

    則以下程序段的運行結果是(D)。

    p++;

    printf(“%c”,**p);

  • a
  • b
  • c
  • d
  • D1704、 以下程序段運行后x的值為()。

    int a[]={1,2,3,4,5,6,7,8}; int i,x,*p;

    x=1; p=&a[2];

    for(i=0;i<3;i++)

    x*=*(p+i);

  • 不確定
  • 24
  • 120
  • 60
  • B1705、以下程序段運行后x的值為()。

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

    int *p,*q; int i ,x;

    p=a; q=b;

    for(i=0;i<3;i++)

    if(*(p+i)==*(q+i))

    x=*(p+i)*2;

  • 2
  • 4
  • 6
  • 不確定
  • C1706、以下程序段運行后x的值為()。

    int a[9]={1,2,3,4,5,6,3,8,9};

    int *p,*q; int i ,x;

    p=&a[0]; q=&a[8];

    for(i=0;i<3;i++)

    if(*(p+i)==*(q-i))

    x=*(p+i)*2;

  • 2
  • 4
  • 6
  • 不確定
  • A1707、下面程序輸出結果是()。

    #include <stdio.h>

    void main()

    { int i ; char *s="abc";

    for(i=0;i<3;i++)

    printf("%sn",s+i);

    }

  • abc
  • bc

    c

  • c
  • bc

    abc

  • abc
  • c

    bc

  • a
  • ab

    abc

    A1708、下面程序輸出是()。

    #include <stdio.h>

    void main()

    { char *str=“12345”,*ps=str+4;

    printf(“%cn”,ps[-4]); }

  • 1
  • 2
  • 3
  • 錯誤
  • A1709、從鍵盤輸入1 2 3 4 5<回車>,輸出為()。

    #include <stdio.h>

    #define N 5

    void main()

    { int a[N]; int *p=a;

    while(p<a+N)

    scanf(“%d”,p++);

    while(p>a)

    printf(“%d”,*(- -p));

    }

  • 5 4 3 2 1
  • 1 2 3 4 5
  • 2 3 4 5 1
  • 4 3 2 1 5
  • B1710、以下程序的運行結果是()。

    int x[]={2,3,4,5,6,7},*p=x;

    int i,s=0;

    for(i=1;i<6;i++) s+=p[i++];

    printf(“%d”,s);

    A. 12 B. 15 C. 25 D. 27

    1801 C 設有以下定義語句:

    struct student

    {int num;

    char name[10];

    float score;

    }wang,zhang;

    則不正確的敘述是( )。

  • struct是結構體類型的關鍵字
  • zhang是結構體變量名
  • wang是結構體類型名
  • num,name,score都是結構體類型student的成員名
  • B1802、設有以下定義語句:

    struct student

    {int num;

    char name[10];

    float score;

    }wang,zhang;

    則變量wang所占的內存字節數是( )。

  • 14
  • 16
  • 18
  • 20
  • B1803、設有如下定義語句:

    union u_type

    {int i;

    double x;

    float f;

    };

    struct str_type

    {char str[100];

    union u_type u[2];

    }

    則語句 printf(“%d”,sizeof(struct str_type)); 的輸出結果是( )。

  • 100
  • 116
  • 120
  • 200
  • C1804、若有定義:

    struct teacher

    { int nun;

    char name[10];

    char sex;

    int age;

    float score;

    }teacher1;

    則變量teacher1所占用的內存字節數是()。

  • 5
  • 14
  • 19
  • 20
  • C1805、下列對結構體類型變量定義不正確的是()。

  • Struct teacher
  • {int num;
  • int age;
  • }teach1;
  • struct
  • {int num;
  • int age;
  • }teach1,teach2;
  • struct
  • {int num;
  • int age;
  • }teacher;
  • struct teacherteach1;
  • struct teacher
  • {int num;
  • int age;
  • };
  • struct teacher teach1;
  • D1806、若有定義:

    struct teacher

    {int num;

    char sex;

    int age;

    }teacher1;

    則下列敘述不正確的是()。

  • struct是結構體類型的關鍵字
  • struct teacher是用戶定義的結構體類型
  • num,sex,age都是結構體變量teacher1的成員
  • teacher1是結構體類型名
  • D1807、以下程序的運行結果是()。

    #include<stdio.h>

    union Utype{

    int i;

    float f;

    }u[2];

    void main()

    {printf("sizeof(u):%dn",sizeof(u));

    }

  • 2
  • 4
  • 6
  • 8
  • D1808、以下程序運行結果為()。

    #include <stdio.h>

    union utype

    {int i; float f;

    };

    struct

    { char ch[2];

    int i;

    union utype u;

    }a;

    void main()

    { printf(“sizeof(a):%dn”,sizeof(a))

    }

  • 5
  • 6
  • 7
  • 8
  • D1809、以下C語言共用體類型數據的描述中,不正確的是()。

  • 共用體變量占的內存大小等于所需內存最大的成員所占的內存
  • 共用體類型可以出現在結構體類型定義中
  • 在定義共用體變量的同時允許對第一個成員的值進行初始化
  • 同一共用體中各成員的首地址不相同
  • B1810、若有以下類型說明,則( )是正確的敘述。

    typedef union

    { char str[2];

    int i;

    }sp;

  • sp是一個共用體變量名
  • sp是一個共用體類型名
  • union sp是共用體類型名
  • typedef union是共用體類型名
  • A1901、對枚舉類型進行定義,不正確的是( )。

  • enum b{1, 2, 3};
  • enum a{A, B, C};
  • enum c{D=3, E, F};
  • enum d{X=0, Y=5, Z=9};
  • C1902、假定已有如下變量說明和枚舉定義:

    char ch;

    int j,k;

    enum day{sun,mon,tue,wed,thu,fri,sat};

    int a[sat]

    判斷下列語句是否符合語法規則,結果是()。

    char a; /*語句1 */

    j+k=j; /*語句2 */

    if(a[mon]>0) j++; /*語句 3 */

  • 語句2錯誤,其它正確
  • 語句1正確,其它錯誤
  • 語句3正確,其它錯誤
  • 語句1錯誤,其它正確
  • C1903、設有如下定義:

    typedef int *INTEGER;

    INTEGER p,*q; 則( )是正確的敘述。

  • p是int型變量
  • q是基類型為int的指針變量
  • p是基類型為int的指針變量
  • 程序中可用INTEGER代替int類型名
  • A1904、以下程序段運行后,a,b,c的值分別是( )。

    int a=3,b=5,c;c=a&b;

    A.3,5,1 B.3,5,3 C.5,3,1 D.5,1,3

    C1905、若有定義:int a=20,b=28,c; 則執行語句c=(a^b)<<2;后c的值為( )。

  • 2
  • 5
  • 32
  • 92
  • A1906、若有定義:int a=20,b=28,c; 則執行語句c=(a&b)>>2;后c的值為( )。

  • 5
  • 7
  • 80
  • 112
  • C 1907、在無符號數的位運算中,操作數右移一位相當于將該操作數( )。

    A.除以4 B.乘以4 C.除以2 D.乘以2

    C 1908、若已定義:int a=8,b=7,c; 語句c=a|b; 執行后c的值為( )。

    A.0 B.8 C.15 D.7

    B1909、下面程序輸出結果是()。

    # include <stdio.h>

    void main()

    {enum weekday{sum=7,mon=1,tue,wed,thu,fr,sat};

    enum weekday day=sat;

    printf(“%dn”,day);

    }

  • 7
  • 6
  • 5
  • 4
  • C1910、若有以下類型說明,敘述正確的事()。

    typedef struct

    { int num;

    char *name;

    int score;

    }STU,*PSTU;

  • STU是變量名
  • PSTU是變量名
  • PSTU是指向結構體類型STU的指針類型名
  • 類型說明語句有錯誤
  • 總結

    以上是生活随笔為你收集整理的c语言e怎么表示_如何一个月学完c语言的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。