C語言精彩試題庫(完整版)_第1頁
C語言精彩試題庫(完整版)_第2頁
C語言精彩試題庫(完整版)_第3頁
C語言精彩試題庫(完整版)_第4頁
C語言精彩試題庫(完整版)_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、實用文檔C語百試題庫文案大全單項選擇第一章C語言概述(1) 一個C程序的執(zhí)行是從A、本程序的 MAIN函數(shù)開始,到 MAIN 函數(shù)結(jié)束。B、本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束。C、本程序的MAIN函數(shù)開始,到本程序的最后一個函數(shù)結(jié)束。D、本程序文件的第一個函數(shù)開始,到本程序的MAIN函數(shù)結(jié)束。(2)以下敘述正確的是A、在C程序中,MAIN函數(shù)必須位于程序的最前面。B、C程序的每行中只能寫一條語句。C、C語言本身沒有輸入輸出語句。D、在對一個C程序進行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤。(3) C語言規(guī)定,在一個源程序中,MAIN主函數(shù)的位置是在:A、必須在最前面。B、

2、必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C、可以在任意位置。D、必須在最后面(4) 一個C程序是由:A、 一個主程序和若干子程序組成B、函數(shù)組成C、若干過程組成D、若干子程序組成(5)以下敘述不正確的是:A、一個C源程序可由一個或多個函數(shù)組成B、一個C源程序必須包含一個 MAIN函數(shù)C、C程序的基本組成單位是函數(shù)D、在C程序中,注釋說明只能位于一條語句的后面第二章數(shù)據(jù)類型、運算符與表達式(1 )若x, i, j, k都是int型變量,則計算下面表達式后,x的值為x= ( i=4, j=16 , k=3 2)A、 4實用文檔B、1 6C、3 2D、5 2(2)下列四組選項中,均不是C語言鍵字的選項是 A、d

3、efine , IF, typeB、getc, char, printfC、include, scanf, caseE、if, struct, type(3 )下面四個選項中,均是不合法的用戶標識符的選項是 A、A, P 0 , doB、float,1a0, _AC、b-a, goto, intD、_123, temp, INT(4)若有代數(shù)式3 ae/bc,則正確的C語言表達式是 A、a/b/c*e*3B、3*a*e/bcC、 3*a*e/b*cD、a*e/c/b*3(5)已知各變量的類型說明如下:int k, a, b;unsinged long w=5;double x=1.42;則以下

4、不符合C語言語法的表達式是 A、x%(-3)B、w+=-2;C、k=(a=2,b=3,a+b)D、a+=a-=(b=4)*(a=3)第三章簡單C程序設(shè)計(1) putchar函數(shù)可以向終端輸出一個 A、整型變量表達式值B、實型變量值C、字符串D、字符或字符型變量值(2)若x,y均定義為int型,z定義為double型,以下合法的scanf函數(shù)調(diào)用語句是A、scanf( "%d%lx,%le',&x,&y,&z);B、scanf( "2d*%d%lf ,&x,&y,&z);C、scanf( "%x%*d%o,&

5、amp;x,&y,&z);D、scanf( "x%o%6.2f ,&x,&y,&z);文案大全實用文檔當輸入數(shù)據(jù)的形式為:2 5, 13, 10<回車時,以下程序的輸出結(jié)果為 main()int x,y,z;scanf( "d%d%:d ,&x,&y,&z);printf("x+y+z=%d ,x+y+z);)A、 x+y+z=48B、x+y+z=35C、x+z=35D、不確定值(4)以下能正確的定義整型變量a,b和c,并對它們賦初值為5的語句是 A、int a=b=c=5;B、int a, b

6、, c=5;C、a=5, b=5, c=5;D、a=b=c=5;(5)若有以下定義,則正確的賦值語句是 int a,b; float x;A、a=1, b=2;B、b+;C、a=b=5;D、b=int(x);第四章選擇結(jié)構(gòu)程序設(shè)計(1)能正確表示“當 x的值在1, 10和200, 210的范圍為真,否則為假”的表達式是A、(x>=1)&&(x<=10)&&(x.>=200)&&(x<=210)B、(x>=1)(x<=10)(x.>=200)(x<=210)C、(x>=1) &&

7、(x<=10)(x.>=200) &&(x<=210)D、(x>=1)(x<=10)&& (x.>=200)(x<=210)(2)以下程序的運行結(jié)果是一#include “stdio.h "main()int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%cT ,a,b);)A、6, 1B、2, 1C、6, 0文案大全D、2, 0(3)請閱讀以下程序:main()int a=5 , b=0 , c=0;if (a+b+c) printf( n

8、 *)* * else printf("$謠'$);以上程序。A)有語法錯誤不能通過編譯B)可以通過編譯但不能直接通過連接C)輸出* * *D)輸出$ $ $(4)以下程序的運行結(jié)果是 。main()int m=5;if(m+>5)printf(n°%dm);else printf("r% d,m-);A) 4B) 5C) 6D) 7(5)為了避免在嵌套的條件語句中if-else中產(chǎn)生二義性,c語言規(guī)定:else子句總是與相配對。A)縮排位置相同的ifB)其之前最近的ifC)其之后最近的ifD)同一行上的if第五章循環(huán)控制(1)設(shè)有程序段int k=

9、10while (k=0)k=k-1則下面描敘正確的是。A) while (k=0)k=k-1;B)循環(huán)是無限循環(huán)C)循環(huán)體語句一次也不執(zhí)行D)循環(huán)體語句執(zhí)行一次文案大全實用文檔(2)下面程序段的運行結(jié)果是 。int n=0;while(n+<=2); printf(" %d' ,n);A) 2B) 3C) 4D)有語法錯(3) C語言中while和do-while循環(huán)的主要區(qū)別是 。A) do-while的循環(huán)體至少無條件執(zhí)行一次B) while的循環(huán)控制條件比do-while的循環(huán)控制條件嚴格C) do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)D) do-while允許從外

10、部轉(zhuǎn)到循環(huán)體內(nèi)(4)以下能正確計算1*2*3*10的程序段是 。A) do i=1;s=1;s=s*i;i+;while(I<=10);B) do i=1;s=0;s=s*i;i+;while(I<=10);C) i=1;s=1;do s=s*i;i+;while(I<=10);D) i=1;s=0;do s=s*i;i+;while(I<=10);第六章數(shù)組(1)在c語言中,引用數(shù)組元素時,其數(shù)組下標的數(shù)據(jù)類型允許是A)整型常量B)整型表達式C)整型常量或整型表達式D)任何類型的表達式(2)以下能對二維數(shù)組a進行正確初始化的語句是。A) int a2 =1,0,1,5

11、,2,3,;B) int a 3=1,2,3,4,5,6;文案大全實用文檔C) int a24=1,2,3,4,5,6;D) int a 3=1,0,1,1,1;)(3)若有說明:int a34=0;則下面正確的敘述是。A)只有元素a00可得到初值0B)此說明語句不正確C)數(shù)組a中各元素都可得到初值,但其值不一定為0D)數(shù)組a中每個元素均可得到初值0(4)下面程序 (每行程序前面的數(shù)字表示行號)。1 main()2 3 float a10=0;4int i5for(i=0;i<3;i+) scanf("%d' ,&ai;6for(i=1;i<10;i+)

12、a0=a0+ai;7printf( % f,a0);8A)沒有錯誤B)第3行有錯誤C)第5行有錯誤D)第7行有錯誤(5)若二維數(shù)組a有m歹U,則計算機一元素 aij在數(shù)組中位置的公式為。 (假設(shè)a00 位于數(shù)組的第一個位置上。)A) i*m+jB) j*m+iC) i*m+j-1D) i*m+j+1第七章函數(shù)(1)以下正確的函數(shù)定義形式是 。A) double fun(int x,int y)C) double fun(int x;int y)D) double fun(int x,int y)E) double fun(int x,y);(2)以下正確的函數(shù)形式是 。A) double fu

13、n(int x,int y)z=x+y; return z;B) fun(int x,y)int z;文案大全實用文檔return z;C) fun(x,y)int x,y; double z;z=x+y;return z;D) double fun(int x,int y)double z;z=x+y;return z;(3) C語言規(guī)定,簡單變量做實參時,它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式是A)地址傳遞B)單向值傳遞C)由實參傳給形參,再由形參傳回給實參D)傳遞方式(4)C語言允許函數(shù)值型缺省定義,此時該函數(shù)值隱含的類型是 Afloat 型B)int 型C)long 型D)double 型(5

14、)下面函數(shù)調(diào)用語句含有實參的個數(shù)為 。func(exp1,exp2),(exp3,exp4,exp5);A)1B)2C)4D)5第八章編譯預處理命令(1)請讀程序:#define ADD(x) x+xmain()int m=1,n=2,k=3;int sum=ADD(m+n)*k;printf(" sum=%d ,sum);上面程序的運行結(jié)果是 。A) sum=9B) sum=10文案大全C) sum=12D) sum=18(2)以下程序的運行結(jié)果是 。#define MIN(x,y) (x)<(y)? (x)+(y)main()int I=10,j=15,k;k=10*MIN

15、(I,j);printf("n% d,k);A)10B)15C)100D)150(3)在宏定義#define PI 3.14159中,用宏名 PI代替一個 A)常量B)單精度數(shù)C)雙精度數(shù)D)字符串(4)若有宏定義如下:# defineX5# defineYX+1# defineZY*x/2則執(zhí)行以下printf語句后,輸出結(jié)果是。int a; a=Y;printf("1%d ,Z);printf(a%)d-a);A)7B)12C)12D)76655(5)若有以下宏定義:#define N 2#define Y(n) (N+1)*n)則執(zhí)行語句z=2*(N+Y(5);后的結(jié)

16、果是。A)語句有錯誤B) z=34C) z=70文案大全實用文檔D) z無定值第九章指針(1)以下程有錯誤,錯誤原因是 main()int *p,I; char *q,ch;p=&I;q=&ch;*p=40;*p=*q;A) p和q的類型不一致,不能執(zhí)行 *P=*Q ;語句B) P中存放的是地址值,因此不能執(zhí)行 *P=40 ;語句C) Q沒有指向具體的存儲單元,所以*Q沒有實際意義D) Q雖然指向了具體的存儲單元,但該單元中沒有確定值,所以不能執(zhí)行*P=*Q ;語句(2)已有定義int k=2; int *ptr1, *ptr2;且ptr1和ptr2均已指向變量 K,下面不能正

17、確執(zhí) 行的賦值語句是.A)k=*ptr1+*ptr2;B)ptr2=K;C)ptr1=ptr2;D)k=*ptr1*(*ptr2);(3)變量的指針,其含義是指該變量的 .A)值 B)地址 C)名 D) 一個標志(4)若有語句int*point,a=4;和ponit=&a;下面均代表地址的一組選項是 .A) a,point,*&aB)&*a,&a,*pointC)*&point,*point,&aD)&a,&*point,point卜面能正確進行字符串賦值操作的是(6)A) B) C)D)char s5= char s5= cha

18、r *S; s= char *S; scanf(若有以下定義,則對A)*&a5B)*a+2C)*(P+5)D)*(a+2)若有以下定義,則對“ABCDE ;'A' J B,J C J D,J E,;ABCDE ;"%s" ,s);A數(shù)組元素的正確引用是 .a數(shù)組元素地址的正確引用是文案大全實用文檔A) p+5B) *a+1C) &a+1D) &a0(8)若有定義:int a23;則對a數(shù)組白勺第I行第J列(假設(shè)I, J已正確說明并賦值)元素值的正 確引用為.A)*(*(a+I)+J)B)(a+I)jC)*(a+I+j)D)*(a+I)

19、+j(9)若有定義:int a23;則對a數(shù)組白第i行第j歹U (假設(shè)i, j已正確說明并賦值)元素地址的正確引用為.A)*(ai+j)B)(a+i)C)*(a+j)E) ai+j(10)若有以下定義和語句,則對a數(shù)組元素地址的正確引用為 .Int a23,(*p)3P=a;A)*(p+2)B) p2C) p1+1D) (p+1)+2第十章 結(jié)構(gòu)體與共用體(1) 以下對結(jié)構(gòu)體類型變量的定義中不正確的是.A)#define STUDENT struct studentSTUDENTint num;float age;std1;B)struct studentint num;float age;s

20、td1;C)structint num;float age;std1;D)struct int num; float age;student;struct student std1;(2) 設(shè)有以下語句(3) struct stu int a;float b;stutype; 則下面敘述正確的是.A)struct 是結(jié)構(gòu)體類型的關(guān)鍵字 B)struct stu 是用戶定義的結(jié)構(gòu)體類型 C)stutype 是用戶定義的結(jié)構(gòu)體類型名 D)a 和 b 都是結(jié)構(gòu)體成員名 (4) 設(shè)有以下定義:struct skint n; float x;data,*p;若要使 p 指向 data 中的 n 域,正確

21、的賦值語句是A) p=&data.n;B) *p=data.n;C) p=(struct sk *)&data.n;D) p=(struct sk *) data.n;(5) 設(shè)有以下語句:struct stint n;struct st *next;static struct st a3=5,&a1,7,&a2,9,0 ,*p;p=&a0;則以下表達式的值為6 的是 .A) p+->nB) p->n+C) (*p).n+D) +p->n文案大全實用文檔第十一章位運算(1)以下運算符中優(yōu)先級最低的是 優(yōu)先級最高的是 。A) &&

22、amp;B) &C) IID) I(2)若有運算符<<,sixeo¥,&二則它們按優(yōu)先級按由高到低的正確排列次序是 A)sizeof,&=,<<FB) sizeof,<<,A,&=C) A,<<,sizeof,&=D)<<F,&=,sizeof(3)在C語言中,要求運算數(shù)必須是整型的運算符是 。A) AB) %C) !D) >(4)在C語言中,要求運算數(shù)必須是整型或字符型的運算符是 。A) &&B) &C) !D) |(5)sozeof(float

23、)是。A) 一種函數(shù)調(diào)用B) 一種不合法的表示形式C) 一個整型表達式D) 一個浮點表達式第十二章文件(!)系統(tǒng)的標準輸入文件是指 。A)鍵盤B)顯示器C)軟盤D)硬盤(2)以下可作為函數(shù)fopen中第一個參數(shù)的正確格式是 。A) c:usertext.txtB) c:usertext.txtC) " c: usertext.txt"D) " c:usertext.txt"(3)若執(zhí)行fopen函數(shù)時發(fā)生錯誤,則函數(shù)的返回值是 .文案大全實用文檔 A)地址值 B) 0 C) 1 D) E O F(4)若要用fopen函數(shù)打開一個新的二進制文件,該文件要既

24、能讀又能寫,則文件方式字符串 應(yīng)是。A) " ab+" B) " wb+" C) " rb+" D) " ab"(5)當順利執(zhí)行了文件關(guān)閉操作時,fclose函數(shù)的返回值是。A)-1 B)TURE C)0 D)1二、 填空第一章 C語言概述(1) C源程序的基本單位是()(2) 一個C源程序至少應(yīng)包括一個()(3)在一個C源程序中,注釋部分兩側(cè)的分界符分別為()和()(4)在C語言中,輸入操作是由庫函數(shù)()完成的,輸出操作是由庫函數(shù)()完成的。第二章數(shù)據(jù)類型、運算符與表達式在C語言中(以1 6位機為例),一個cha

25、r型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為(),一個int型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為()。(2)在C語言中,實型變量分為兩種類型,它們是()和()。若a是int型變量,則計算表達式a=25/3%3后,a的值為()。(4) C語言中的標識符只能由三種字符組成,它們是(),()和()表達式 8/4*(int)2.5/(int)(1.25*3.7+2.3) 值的數(shù)據(jù)類型為()。第三章簡單C程序設(shè)計(1)以下程序的輸出結(jié)果是()。main()int x=1,y=2;printf( "x=%d y=%d *sum*=%d ,x,y,x+y);printf( "10 squared is r%

26、d ,10*10); (2)以下程序的輸出結(jié)果是()。#include <studo.h> main()文案大全實用文檔int a=325;double x=3.1415926;printf( “ a=%+06d x=%n+” e ,a,x,);(3)假設(shè)變量a 和 b 均為整型,以下語句可以下借助任何變量把a、 b 中的值進行交換。請?zhí)羁?。a+=();b=a-();a-=();(4)設(shè)x,y和z都是int型變量,m為long型變量,則在16位微型機上執(zhí)行下面的賦值語句后,x值為() , y 值為() , z 值為() 。y=(x=32767,x=-1);z=m=0xFFFF(5)

27、若 x 為 int 型變量,則執(zhí)行以下語句后x 的值是()x=7;x+=x-=x+x;第四章 選擇結(jié)構(gòu)程序設(shè)計( 1)當 a=3,b=2,c=1 時,表達式f=a>b>c 的值是() 。( 2)在C 語言中表示邏輯“真”值用( ) 。(3)設(shè)x,y,z 土勻為int型變量,請寫出描述“x或y中有一個小于z”的表達式().( 4)當m=2,n=1,a=1,b=2,c=3 時,執(zhí)行完d=(m=a!=b)&&(n=b>c) 后; n 的值為() , m 的值為()。( 5)有int a=3,b=4,c=5 ;則表達式a|b+c&&b= =c 的值為(

28、) 。第五章 循環(huán)控制(1) 執(zhí)行下面程序段后,K 值是() 。K=1; n=263;Do k*=n%10 ;n/=10 while(n);(2)下面程序段中循環(huán)體的執(zhí)行次數(shù)是() 。A =10;B=0;Do b+=2;a-=2+b; while(a>=0);(3) 下面程序段的運行結(jié)果是() 。X=2Do printf ( “ * ” ); x-;while (! x= =0);(4) 下面程序段的運行結(jié)果是() 。I=1; a=0; s=1;Do a=a+s*i; s=-s; i+; while(i<=10)Printf ( “ a=%d, a” );(5)雞兔共有30只,腳共

29、有90 個,下面程序段是計算雞兔各有多少只,請?zhí)羁铡or(x=1;x<=29;x+)y=30-x;if( ) printf (“ %d,n% ”d , x , y) ;第六章 數(shù)組(1)在C 語言中,二維數(shù)組的定義方式為:類型說明符數(shù)組名()() ;( 2)在C 語言中,二維數(shù)組元素在內(nèi)存中的存放順序是() 。( 3)若有定義:double x35; 則 x 數(shù)組中行下標的下限為() ,列下標的上限為() 。( 4) 若二維數(shù)組a 有 m 列, 則計算機任一元素a ij 在數(shù)組中位置的公式為:() .(假設(shè)a00位于數(shù)組的第一個位置上。)( 5) 若有定義:int a34=1,2,0,

30、4,6,8,10; 則初始化后,a12 得到的初值是() , a21得到初值是() 。第七章 函數(shù)(1)C 語言規(guī)定,可執(zhí)行程序的開始執(zhí)行點是() 。(2)在 C 語言中,一個函數(shù)一般由兩個部分組成,它們是()和 ()。(3)下面add 函數(shù)的功能是求兩個參數(shù)的和,并將和值返回調(diào)用函數(shù)。函數(shù)中錯誤的部分是( );改正后為()。Void add(float a,float b)float c;c=a+b;return c (4)以下程序的運行結(jié)果是() 。main()increment();increment();increment();increment();int x=0;x+=1;prin

31、tf( “ %d” ,x);(5)以下Check函數(shù)的功能是對 value中的值進行四舍五入計算,若計算后的值與ponse值相等,則顯示“WELL DONE! ",否則顯示計算后的值。已有函數(shù)調(diào)用語句Check (ponse,value);請?zhí)羁铡oid Check (int ponse,value)int val;val=( );printf( 計算后的值 “:%d” ,val);if( ) printf( “n” );else printf) ”n” ,val);第八章 編譯預處理命令( 1)設(shè)有以下宏定義:#define WIDTH 80#define LENGTH WIDT

32、H+40則執(zhí)行賦值語句:v=LENGTH*20;(V 為 int 型變量 )后, v 的值是() 。( 2)設(shè)有以下宏定義:#define WIDTH 80#define LENGTH (WIDTH+40)則執(zhí)行賦值語句:k=LENGTH*20;(K 為 int 型變量 )后, k 的值是() 。( 3)下面程序的運行結(jié)果是() 。#define DOUBLE(r) r*r main()int x=1,y=2, t;t=DOBLE(x+y);printf( “ n%”d ,t);(4)下面程序的運行結(jié)果是() 。#define MUL(z) (z)*(z)main() printf( “ n%

33、”d ,MUL(1+2)+3);(5) 下面程序的運行結(jié)果是() 。#define POWER(x) (x)*(x)main()int I=1;while (I<=4) printf( t ”“ ,P%OdWER(I+); printf( n”“ );第九章 指針( 1)下面程序段的運行結(jié)果是()char s80,*sp=” HELLO!”;sp=strcpy(s,sp);s0= h ;puts(sp);( 2)下面程序段的運行結(jié)果是()chara= ” 123456789 ” ,*p;int I=0;p=a;while(*p)if(I%2=0) p= * ;p+;I+;puts(a);

34、( 3)若有以下語句和定義:int a4=0,1,2,3,*p;p=&a1;則 +(*p) 的值是()( 4) 若有定義:int a23=2,4,6,8,10,12; 則 (&a00+282+1 的值是 (),*(a1+2) 的值是 ()。第十章 結(jié)構(gòu)體與共用體(1)以下程序用以輸出結(jié)構(gòu)體變量bt所占內(nèi)存單元的字節(jié)數(shù),請在()內(nèi)填上適當?shù)膬?nèi)容。Struct psdouble I;char arr20;main()struct psbt;ptintf( “ bt size :%nd:,();(2)設(shè)有三人的姓名和年齡存在結(jié)構(gòu)數(shù)組中,以下程序輸出三人中年齡居中者的姓名和年齡,請在(

35、)內(nèi)填上正確的內(nèi)容。Static struct manchar name20int age;person “ li ming ” ,18,“ wang hua” ,19,“ zhang ping ” ,20 ;main()int i, j, max, min;max=min=person0.age;for( i=1; i<3; i+););)personi.age!=min)if (personi.age>max) (else if (personi.age<min) ( for(i=0;i<3;i+)if(personi.age!=max(%sn%”d ,person

36、,personi.age)printf(break;(3)若以定義:struct numint a;int b;float f;n=1, 3, 5.0;struct num*pn=&n;則表達式pn->b/n.a*+pn->b 的值是() ,表達式(*pn).a+pn->f 的值是()。(4)以下程序的功能是計算并打印復數(shù)的差。請在()內(nèi)填入正確的內(nèi)容。Struct compfloat re;float im;struct comp *m(x,y)struct comp *x,*y;();z=(struct comp *)malloc(sizeof(str

37、uct comp);z->re=x->re-y->re;z->im=x->im-y->im;return( () );main()struct comp *t;struct xomp a,b;a.re=1;a.im=2;b.re=3;b.im=4;t=m();printf( “ z.re=%f, z.im=%f->re,t”->i,mt);(5)以下程序的運行結(jié)果是()struct ksint a;int *b;s4,*p;文案大全main()int n=1, i;printf(n“” );for(i=0; i<4;i+) si.a=n;s

38、i.b=&si.a;n=n+2;p=&s0;p+;printf( “ %d, n%”d , (+p)>a, (p+)->a);第十一章位運算在C語言中,&運算符作為單目運算符時表示的是( 的是()運算。(2 )與表達式 a&=b等價的另一書寫形式是()運算;作為雙目運算符時表示設(shè)有char a, b;若要通過a&b運算屏蔽掉a中的其它位, 則 b 的二進制數(shù)是().只保留第2和第8位(右起為第1位)(4)測試char 型變量 a 第六位是否為1 的表達式是() (設(shè)最右位是第一位)設(shè)二進制數(shù)x的值是11001101,若想通過x&y運算

39、使x中的低4位不變,高4位清零,則y的二進制數(shù)為() 。第十二章文件(1 )在C程序中,文件可以用()方式存取,也可以用()方式存取。(2)在C程序中,數(shù)據(jù)可以用()和()兩種代碼形式存放。(3)在C程序中,文件的存取是以()為單位的,這種文件被稱作()文件。(4)函數(shù)調(diào)用語句:fgets(buf,n,fp);從fp指向的文件中讀入 ()個字符放到buf字符數(shù)組中。函數(shù)值為() 。(5) feof(fp)函數(shù)用來判斷文件是否結(jié)束,如果遇到文件結(jié)束,函數(shù)值為(),否則為()。三、 判斷第一章 C 語言概述第二章 數(shù)據(jù)類型、運算符與表達式(1) C 語言所提供的基本數(shù)據(jù)類型包括:整型、實型和字符型

40、。(2) 在 C 程序中,逗號運算符的優(yōu)先級最低。(3) 當 從鍵盤輸入數(shù)據(jù)時,對整型變量只能輸入整型數(shù)據(jù),對實型變量只能輸入實型數(shù)據(jù)。(4) C 語言中的標識符只能由字母、數(shù)字和下劃線三種字符組成。(5) 在 C 語言中,char 型的數(shù)據(jù)在內(nèi)存中的存儲形式是原碼形式。第三章 簡單 C 程序設(shè)計(1 )當輸入一個實型數(shù)據(jù)時,格式控制部分應(yīng)規(guī)定小數(shù)點后的位數(shù),如 scanf( "4.2f”,&f)(2 )整型變量的輸出格式控制符只有d 一種。(3 ) putchar函數(shù)可以向終端輸出一個字符串。(4) pirntf函數(shù)中用到格式符 5s,其中數(shù)字5表示輸出的字符串占5歹U,如

41、果字符串長度大于 5,則輸出按原字符長度從左向右全部輸出。(5) 輸入項可以是一個實型常量,如scanf( "f',2.3)第四章 選擇結(jié)構(gòu)程序設(shè)計(6) )邏輯運算符兩側(cè)的運算對象可以是任何基本類型的數(shù)據(jù)。(7) C語言中只提供了三種邏輯運算符:&& , |,和!。(8) 若 a=6,b=4,c=3 則表達式 a&&b+c|b-c 的值是 0。(4 )關(guān)系運算式的結(jié)果都是邏輯值。(5)若a=1,b=2,則表達式a>b?a:b+1的值是3。第五章 循環(huán)控制(1) 設(shè)有以下程序段:int x=0,s=0;while(!x!=0) s+=+x

42、;printf( “ %d” ,s);則運行該程序段后輸出為:0(2) for循環(huán)只能應(yīng)用于循環(huán)次數(shù)已經(jīng)確定的情況。(3 )goto語句只能用于退出多層循環(huán)。(4 ) switch語句中不能出現(xiàn) continue語句。(5 )只能用continue語句終止本次循環(huán)。第六章 數(shù)組(1 )兩個字符串中所包含的字符個數(shù)相同時,才能比較字符串。(2 )字符數(shù)組可以存放字符串。(3 )不能用關(guān)系運算符對字符數(shù)組中的字符串進行比較。(4) 如果定義了一個指向數(shù)組的指針,則該指針可以相當于數(shù)組名使用。(5) 如果沒有給一個整型數(shù)組的元素賦初值,則其元素的缺省初值全部為0。第七章 函數(shù)(1) C語言中,用戶若

43、需調(diào)用標準庫函數(shù),在調(diào)用前必須重新定義。(2) C語言中不允許用戶重新定義標準庫函數(shù)。(3) 在C程序中,函數(shù)的定義和調(diào)用都不允許嵌套。(4) 如果用數(shù)組名作為函數(shù)調(diào)用的實際參數(shù),則傳遞給形參的是數(shù)組的首地址。(5 )形式能參數(shù)也是一種局部變量。第八章 編譯預處理命令(1) 預處理命令行都必須以#號開始。(2) 宏替換不占用運行時間,只占編譯時間。(3) ) C程序在執(zhí)行過程中對預處理命令進行處理。(4) 宏名必須用大寫字母表示。(5) 在文件包含預處理命令的使用形式中,當# include后的文件名用 <>括起來時,表示在當前目錄搜索被包含文件。第九章 指針(1)若有定義:int

44、 (*p)4,則標識符p表示的是一個指向整型變量的指針。(2)若有定義:int *p4,則標識符p表示的是一個指針數(shù)組名。(3 )指針值就是地址值。(4)若有定義int (*p)(),指針p可以表示函數(shù)返回值的類型。(5) C語言允許 main函數(shù)帶形參,但形參名只能是argv和arvc。第十章 結(jié)構(gòu)體與共用體(1 )當定義一個結(jié)構(gòu)體變量時,系統(tǒng)分配給它的內(nèi)存是各成員所需內(nèi)存量的總和。(2) C語言中,結(jié)構(gòu)體變量在程序執(zhí)行期間只有部分成員駐留在內(nèi)存中。(3 ) 一個共用體類型定義中不能出現(xiàn)結(jié)構(gòu)體類型的成員。(4)用typedef只是將已存在的類型用一個新的標識符來代表,而不能增加新類型。(5)

45、用typedef可以定義各種類型名,但不能用來定義變量。第十一章位運算第十二章文件(1)利用fseek函數(shù)可以實現(xiàn)文件的隨機讀寫的操作。(2 ) 函數(shù)rewind的作用是使位置指針重新返回文件的開頭。(3) 在C程序中,文件可以用隨機讀寫的方式存取,也可以用順序讀寫的方式存取。(4) 函數(shù)ftell(fp)的作用是得到流式文件中的當前位置。(5 ) fgetc函數(shù)的作用是從指定文件讀入一個字符,該文件的打開方式必須是只讀的。四、 程序設(shè)計第一章 C 語言概述第二章數(shù)據(jù)類型、運算符與表達式第三章簡單C 程序設(shè)計第四章選擇結(jié)構(gòu)程序設(shè)計( 1)編程實現(xiàn):輸入一個整數(shù),判斷它能否被子3, 5, 7 整

46、除,并輸出以下信息之一:1)能同時被3, 5, 7 整除;2)能被其中兩數(shù)(要指出哪兩個)整除;3)能被其中一個數(shù)(要指出哪一個)整除;4)不能被3, 5, 7 任一個整除。實用文檔(2)用switch編程實現(xiàn):-1(x<0)y= - 0(x=0)1(x.0)第五章循環(huán)控制(1)每個蘋果0.8元,第一天買2個蘋果,第二天開始,每天買前一天的倍,直至購買的蘋果個數(shù)達到不超過100的最大值。編寫程序求每天平均花多少錢?(2)編寫程序,從鍵盤輸入6名學生的5門成績,分別統(tǒng)計出每個學生的平均成績。第六章數(shù)組(1)從鍵盤輸入若干整數(shù)(數(shù)據(jù)個數(shù)應(yīng)少于50),其值在0至4的范圍內(nèi),用1作為輸入結(jié)束的標

47、志。統(tǒng)計每個整數(shù)的個數(shù)。試編程。(2)若有說明:int a23=1,2,3,4,5,6; 現(xiàn)要將a的行和列的元素互換后存到另一個二維數(shù)組b中。試編程。第七章函數(shù)(1)已有變量定義和函數(shù)調(diào)用語句int a,b; b=sum(a);函數(shù)sum()用以求k,和數(shù)作為函數(shù)值返回。若a值為10,經(jīng)函數(shù)sum的計算后,b的值是55。請編寫sum函數(shù)。Sum(int n)(2) a是一個2*4的整型數(shù)組,且各元素均已賦值,函數(shù) max_value可求出其中的最大元素值 max,并將此值返回主調(diào)函數(shù)。今有函數(shù)調(diào)用語句max=max_value(a);請編寫 max_value函數(shù)。Max_value(int

48、arr 4) 第八章編譯預處理命令(1)輸入兩個整數(shù),求它相除的余數(shù)。用帶參的宏來編程實現(xiàn)。(2)試用義一個帶參的宏swap(x,y),以實現(xiàn)兩個整數(shù)之間的交換,并利用它將一維數(shù)組a和b的值進行交換。第九章指針(1)編一程序,將字符串 computer賦給一個字符數(shù)組,然后從第一個字母開始間隔地輸出該串。 請用指針完成。(2)設(shè)有一數(shù)列,包含 10個數(shù),已按升序排好。現(xiàn)要求編一程序,它能夠把從指定位置開始的N個數(shù)按逆序重新排列并輸出新的完整數(shù)列。進行逆序處理時要赤使用指針方法。試編程。(例如:原數(shù)列為2, 4, 6, 8, 10, 12, 14, 16, 18, 20,若要求把從第4個數(shù)開始的

49、5個數(shù)按逆序重新 排列,則得到新數(shù)列為2, 4, 6, 16, 14, 12, 10, 8, 18, 20。)第十章結(jié)構(gòu)體與共用體(1)試利用指向結(jié)構(gòu)體的指針編制一程序,實現(xiàn)輸入三個學生的學號、數(shù)學期中和期末成績, 然后計算其平均成績并輸出成績表。(2)請定義枚舉類型,用枚舉元素代表人民幣的面值。包括 1, 2, 5分;1, 2, 5角;1, 2,5, 10, 50, 100 元。文案大全實用文檔第十一章位運算( 1)請編程序:從終端讀入16 進制無符號整數(shù)M ,調(diào)用函數(shù)rightrot 將 M 中的原始數(shù)據(jù)循環(huán)右移N 位。并輸出移位前后的內(nèi)容。( 2)請編寫函數(shù)getbits 從一個 16位

50、的單元中取出以n1 開始至 n2 結(jié)束的某幾位,起始位和結(jié)束位都從左向右計算。同時編寫主函數(shù)調(diào)用getbits 進行驗證。第十二章文件(1)請編寫程序:從鍵盤輸入一個字符串,將其中的小寫字母全部轉(zhuǎn)換成大寫字母,輸出到磁盤文彳“ upper.txt”中保存。輸入的字符串以“!”結(jié)束。然后再將文件 upper.txt中的內(nèi)容讀出顯示在屏幕上。(2)設(shè)文件student.dat中存放著一年級學生的基本情況,這些情況由以下結(jié)構(gòu)體來描述:struc studentlong int num; *學號*char name10; * 姓名*int age; * 年齡 * char sex; * 性別*char

51、 speciality20; *專業(yè) * char addr40; *地址*;請編寫程序,輸出學號在970101 971035 之間的學生學號、姓名、年齡和性別。五、 參考答案一、名詞解釋 二、單項選擇題 第一章C 語言概述( 1) A( 2) C( 3) D( 4) C( 5) B 第二章數(shù)據(jù)類型、運算符與表達式( 1) C( 2) A( 3) C( 4) C( 5) A第三章簡單C 程序設(shè)計( 1) D( 2) D( 3) D 文案大全實用文檔( 4) A( 5) B第四章選擇結(jié)構(gòu)程序設(shè)計( 1) C( 2) B( 3) D( 4) C( 5) B第五章循環(huán)控制(1) C(2) C(3)

52、A(4) C(5) C第六章數(shù)組(1) C(2) B(3) D(4) C(5) D第七章函數(shù)(1) A(2) D(3) B(4) B(5) B第八章編譯預處理(1) B(2) B(3) D(4) D(5) B第九章指針(1) D(2) B(3) B(4) D(5) C(6) D(7) D(8) A(9) D(10) C第十章結(jié)構(gòu)體與共用體(1) D(2) C(3) D(4) C(5) D第十一章位運算(1) <1>C<2>B(2) B(3)B(4)B(5)C第十二章文件(1) A(2) B(3) C(4) D(5) C三、填空題第一章C 語言概述(1) 函數(shù)(2) 主函

53、數(shù)(或:main 函數(shù))(3) <1>/*<2>*/(4) <1>scanf <2>printf第二章數(shù)據(jù)類型、運算符與表達式(1)<1>1<2>2(2)<1> 單精度型(或 :float 型 ) <2>雙精度型(或 double 型 )(3)<1>10<2>6(4)<1> 字母 <2>數(shù)字 <3>下劃線(5)整型(或 :int 型 )第三章簡單 C 程序設(shè)計(1)x=1y=2*sum*=310 Squared is :100文案大全實用文檔(2)a=+00325- - x=+3.14159e+00 (此處:'”代表空格)<1>b<2>b<3>b(4)<1>32766<2>-1<3>65535(5)-14第四章選擇結(jié)構(gòu)程序設(shè)計(1) 0(2)非0的數(shù)字 x<z|y<z(4) <1>0 <2>1(5) 1第五章循環(huán)控制(1) 36(2) 3(3) *(4) a=-5 2*i+4*y=90第六章數(shù)組<1>常量表達式<2>常量

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論