C語言試題庫完整版講解_第1頁
C語言試題庫完整版講解_第2頁
C語言試題庫完整版講解_第3頁
C語言試題庫完整版講解_第4頁
C語言試題庫完整版講解_第5頁
已閱讀5頁,還剩26頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、c語言試題庫一、單項選擇第一章c語言概述(1) 一個c程序的執行是從 a、本程序的 main函數開始,到 main 函數結束。b、本程序文件的第一個函數開始,到本程序文件的最后一個函數結束。c、本程序的 main函數開始,到本程序的最后一個函數結束。d、本程序文件的第一個函數開始,到本程序的main函數結束(2)以下敘述正確的是 a、 在c程序中,main函數必須位于程序的最前面。b、 c程序的每行中只能寫一條語句。c、 c語言本身沒有輸入輸出語句。d、在對一個c程序進行編譯的過程中,可發現注釋中的拼寫錯誤。(3) c語言規定,在一個源程序中,main主函數的位置是在:a、 必須在最前面。b、

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

3、鍵字的選項是 a、define , 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 )若有代數式3ae/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

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

5、f | ,&x,&y,&z);當輸入數據的形式為:2 5, 13, 10回車時,以下程序的輸出結果為main()int x,y,z;scanf( %d%d%d ii ,&x,&y,&z);n ii ,x+y+z);printf( x+y+z=%da、 x+y+z=48b、x+y+z=35f、 x+z=35d、不確定值(4)以下能正確的定義整型變量a,b和c,并對它們賦初值為5的語句是 a、int a=b=c=5;b、int a, b, 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、

6、b+;c、a=b=5;d、b=int(x);第四章 選擇結構程序設計(1)能正確表示“當x的值在1 , 10和200, 210的范圍為真,否則為假”的表達式是a、(x=1)&(x=200)&(x=1)(x=200)(x=1) &(x=200) &(x=1)(x=200)(x5)printf( %dn ii ,m);else printf( %dn ii ,m);a) 4b) 5c) 6d) 7(5 )為了避免在嵌套的條件語句中if-else中產生二義性,c語言規定:else子句總是與相配對。a)縮排位置相同的ifb)其之前最近的if c)其之后最近的if d)同一行上的if第五章循環控制(1)

7、設有程序段int k=10while (k=0)k=k-1則下面描敘正確的是。a) while (k=0)k=k-1;b)循環是無限循環c)循環體語句一次也不執行d)循環體語句執行一次(2)下面程序段的運行結果是。int n=0;while(n+=2); printf( %d ii ,n);a) 2b) 3c) 4d)有語法錯(3) c語言中while和do-while循環的主要區別是。的循環體至少無條件執行一次do-while a).的循環控制條件比do-while的循環控制條件嚴格b) whiledo-while允許從外部轉到循環體內c) do-while允許從外部轉到循環體內d)。(4)

8、以下能正確計算1*2*3*10的程序段是 do i=1;s=1;a)s=s*i;i+;while(i=10);do i=1;s=0;b)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);第六章 數組(1)在c語言中,引用數組元素時,其數組下標的數據類型允許是 o 整型常量a)整型表達式 b)整型常量或整型表達式c)任何類型的表達式d)以下能對二維數組a進行正確初始化的語句是 o (22,3,; a)5,6;b);c)1; ) d)(3)若有說明:int a34=0

9、;則下面正確的敘述是。a)只有元素a00可得到初值0b)此說明語句不正確c)數組a中各元素都可得到初值,但其值不一定為 0d)數組a中每個元素均可得到初值0(4 )下面程序 (每行程序前面的數字表示行號)。1 main()2 float a10=0;34 int i5 for(i=0;i3;i+) scanf( %d i ,&ai;6 6r(i=1;i10;i+)a0=a0+ai;7 printf( %fn ii,a0);8 a)沒有錯誤b)第3行有錯誤c)第5行有錯誤d)第7行有錯誤(5)若二維數組a有m歹u,則計算機一元素aij在數組中位置的公式為。 (假設a00位于數組的第一個位置上。)

10、a) i*m+jb) j*m+ic) i*m+j -1d) i*m+j+1第七章函數(1)以下正確的函數定義形式是。a) double fun(int x,int y)c) double fun(intx;int y)d) double fun(int x,int y) e) double fun(int x,y);(2)以下正確的函數形式是。a) double fun(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) d

11、ouble fun(int x,int y) double z;z=x+y;return z;c語言規定,簡單變量做實參時,它和對應形參之間的數據傳遞方式是 a)地址傳遞b)單向值傳遞c)由實參傳給形參,再由形參傳回給實參 傳遞方式d).(4)c語言允許函數值型缺省定義,此時該函數值隱含的類型是 afloat 型b)int 型 c)10ng 型 d)double 型(5)下面函數調用語句含有實參的個數為。func(exp1,exp2),(exp3,exp4,exp5);a)1 b)2 c)4 d)5第八章編譯預處理命令 (1)請讀程序:#define add(x) x+x main() int

12、 m=1,n=2,k=3;int sum=add(m+n)*k;printf( sum=%d ii ,sum); 上面程序的運行結果是a) sum=9b) sum=10c) sum=12d) sum=18 (2)以下程序的運行結果是#define min(x,y) (x)a) p+5b) *a+1c) &a+1d) &a0(8)若有定義:int a23;則對a數組的第i行第j列(假設i, j已正確說明并賦值)元素值的正 確引用為.a)*(*(a+i)+j)b)(a+i)jc)*(a+i+j)d)*(a+i)+j(9)若有定義: int a23; 則對 a 數組的第 i 行第 j 列(假設 i,

13、 j 已正確說明并賦值)元素地址的正確引用為.a)*(ai+j)b)(a+i)c)*(a+j)e) ai+j(10)若有以下定義和語句,則對 a 數組元素地址的正確引用為 .int a23,(*p)3p=a;a)*(p+2)b) p2c) p1+1d) (p+1)+2第十章 結構體與共用體(1) 以下對結構體類型變量的定義中不正確的是a)#define student struct studentstudentint num;float age;std1;b)struct studentint num;float age;std1;c)structint num;float age;std1;

14、d)structint num;float age;student;struct student std1;(2) 設有以下語句(3) struct stuint a;float b;stutype;則下面敘述正確的是.a)struct 是結構體類型的關鍵字b)struct stu是用戶定義的結構體類型c)stutype是用戶定義的結構體類型名d)a和b都是結構體成員名(4)設有以下定義:struct skint n;float x;data,*p;若要使p指向data中的n域,正確的賦值語句是 a) p=&data.n;b) *p=data.n;c) p=(struct sk *)&data

15、.n;d) p=(struct sk *) data.n;(5)設有以下語句: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第十一章位運算以下運算符中優先級最低的是優先級最高的是a) &b) &c) |d) |(2)若有運算符,sixeof,a,&=則它們按優先級按由高到低的正確排列次序是a) sizeof,&=,ab) sizeof,a,&=c) a,sizeof,&=d) (4)在c語言中,要求

16、運算數必須是整型或字符型的運算符是a) &b) &c) !d) |sozeof(float)是。)一種函數調用a.b) 一種不合法的表示形式c) 一個整型表達式d) 一個浮點表達式第十二章文件系統的標準輸入文件是指。a)鍵盤b)顯示器c)軟盤d)硬盤(2)以下可作為函數fopen中第一個參數的正確格式是。a) cusertext.txtb) c:%usertext.txtc) 11 c:usertext.txt11d) 11 c:%usertext.txt 11(3)若執行fopen函數時發生錯誤,則函數的返回值是. a)地址值b) 0c) 1d) eof(4)若要用fopen函數打開一個新的

17、二進制文件,該文件要既能讀又能寫,則文件方式字符串 應是 。a) ab+b) wb+ c) rb+d) ab(5)當順利執行了文件關閉操作時,fclose函數的返回值是。a)-1b)turec)0d)1二、填空第一章 c語言概述(1) c源程序的基本單位是()(2) 一個c源程序至少應包括一個()(3)在一個c源程序中,注釋部分兩側的分界符分別為()和()(4)在c語言中,輸入操作是由庫函數()完成的,輸出操作是由庫函數()完成的第二章 數據類型、運算符與表達式(1)在c語言中(以16位機為例),一個char型數據在內存中所占的字節數為(),一個int型。)數據在內存中所占的字節數為(2)在c

18、語言中,實型變量分為兩種類型,它們是()和()。(3) 若 a 是 int 型變量,則計算表達式a=25/3%3 后, a 的值為( ) 。(4) c語言中的標識符只能由三種字符組成,它們是(),()和()(5) 表達式 8/4*(int)2.5/(int)(1.25*3.7+2.3) 值的數據類型為( ) 。第三章 簡單 c 程序設計( 1 )以下程序的輸出結果是( ) 。main()int x=1,y=2;printf( x=%d y=%d *sum*=%dn ii ,x,y,x+y);printf( 10 squared is :%dn ii ,10*10);( 2 )以下程序的輸出結果

19、是( ) 。#include main()int a=325;double x=3.1415926;printf( a=%+06d x=%+en ii ,a,x,);(3) 假設變量 a 和 b 均為整型,以下語句可以下借助任何變量把a、 b 中的值進行交換。請填空。a+=();b=a-();a-=();(4)設 x,y 和 z 都是 int 型變量, m 為 long 型變量,則在 16 位微型機上執行下面的賦值語句后,x 值為( ) , y 值為( ) , z 值為( ) 。y=(x=32767,x= -1);z=m=0xffff(5)若 x 為 int 型變量,則執行以下語句后 x 的值

20、是( )x=7;x+=x -=x+x;第四章 選擇結構程序設計( 1 )當 a=3,b=2,c=1 時,表達式f=abc 的值是( ) 。( 2 )在 c 語言中表示邏輯“真”值用( ) 。(3)設x,y,z均為int型變量,請寫出描述x或y中有一個小于z”的表達式().(4)當m=2,n=1,a=1,b=2,c=3 時,執行完 d=(m=a!=b)&(n=bc) 后; n 的值為( ) , m 的值為()。( 5 )有int a=3,b=4,c=5 ;則表達式a|b+c&b= =c 的值為( ) 。第五章 循環控制(1) 執行下面程序段后, k 值是( ) 。k=1;n=263;do k*=

21、n_x0010_ ;n/=10 while(n);(2) 下面程序段中循環體的執行次數是( ) 。a =10;b=0;while(a=0);a-=2+b; do b+=2;。) (3) 下面程序段的運行結果是(x=2 while (! x= =0);x-; do printf ( * ii);。)(4) 下面程序段的運行結果是(i=1; a=0; s=1;while(i=10) i+; do a=a+s*i; s=-s; a ii ); ( a=%d, printf只,腳共有90 個,下面程序段是計算雞兔各有多少只,請填空。 (5) 雞兔共有30for(x=1;x=29;x+)y=30 -x;

22、printf (%d, %dn ii , x , y) ;) if(第六章 數組 ; )( 1)在 c 語言中,二維數組的定義方式為:類型說明符 數組名() 。語言中, 二維數組元素在內存中的存放順序是( ( 2 )在 c 。列下標的上限為( ) ) )若有定義: double x35; 則 x 數組中行下標的下限為( ,3( a00 假設 ) .(則計算機任一元素有 m 列, a ij 在數組中位置的公式為: ( (4)若二維數組 a)位于數組的第一個位置上。 6,8,10; 則初始化后, a12 得到的初值是(若有定義: ) , a21 ( 5 )得到初值是( ) 。第七章 函數(1)c

23、語言規定,可執行程序的開始執行點是( ) 。(2)在 c 語言中,一個函數一般由兩個部分組成,它們是()和 () 。(3)下面 add 函數的功能是求兩個參數的和,并將和值返回調用函數。函數中錯誤的部分是( );改正后為 () 。void add(float a,float b)float c;c=a+b;return c (4) 以下程序的運行結果是( ) 。 main()increment();increment();increment();increment();int x=0;x+=1;printf( %d ii ,x);(5)以下check函數的功能是對 value中的值進行四舍五入

24、計算,若計算后的值與 ponse值相 等,則顯示“ well done! ”,否則顯示計算后的值。已有函數調用語句 check (ponse,value);請填空。void check (int ponse,value)int val;val=( );printf(一計算后的值:%d ii ,val);if( ) printf( nwell dnoe! n | );else printf) ii nsorry the correct answer is %dn ii ,val);第八章 編譯預處理命令( 1 )設有以下宏定義: #define width 80#define length wi

25、dth+40則執行賦值語句: v=length*20;(v 為 int 型變量 )后, v 的值是 (。 ) #define width 80( 2 )設有以下宏定義: #define length (width+40) 型變量 )后, k 的值是( 。為 則執行賦值語句: k=length*20;(kint ) 。 3()下面程序的運行結果是(double(r) r*r #definemain() int x=1,y=2, t;t=doble(x+y);n ii ,t); printf( %d) 。(4) 下面程序的運行結果是(z)*(z) #define mul(z)main()n | ,

26、mul(1+2)+3);printf( %d(5) 下面程序的運行結果是(。 ) (x)*(x) power(x)#definemain()int i=1;t ii ,power(i+);while (i=4) printf( %d printf( n ii );指針 第九章( 1 )下面程序段的運行結果是()char s80,*sp= | hello! | ;sp=strcpy(s,sp);s0= h ; puts(sp); ( 2 )下面程序段的運行結果是()chara= ii 123456789 | ,*p;int i=0;p=a;while(*p)if(i%2=0) p= * ;p+;

27、i+; puts(a); ( 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)的值是()第十章 結構體與共用體(1)以下程序用以輸出結構體變量bt 所占內存單元的字節數,請在()內填上適當的內容。struct ps double i; char arr20; main() struct ps bt; ptintf( bt size :%dn:,();(2)設有三人的姓名和年齡存在結構數組中,以下程序輸出三人中年齡居中者的姓名和年齡

28、,請在()內填上正確的內容。 static struct man char name20 int age;person li ming ii ,18, wang hua ii ,19, zhang ping ii ,20 ;main()int i, j, max, min;max=min=person0.age;for( i=1; imax) ();else if (personi.agemin) ();for(i=0;ib/n.a*+pn -b 的值是( ) ,表達式 (*pn).a+pn -f 的值是)。()內填入正確的內容。 (4) 以下程序的功能是計算并打印復數的差。請在(struct

29、 compfloat re;im; float* m(x,y) struct comp* y; comp *x, struct);(z=(struct comp *)malloc(sizeof(struct comp);z-re=x-re-y-re;z-im=x -im -y-im;) ); return( (main()* t; struct compstruct xomp a,b;a.im=2; a.re=1;b.im=4;b.re=3;);t=m(* re,t-im); printf( z.re=%f, z.im=%f ii , t以下程序的運行結果是( (5) struct ksint

30、 a;int *b;s4,*p;main() int n=1, i;printf( n ii );for(i=0; ia, (p+) -a);第十一章位運算在c語言中,&運算符作為單目運算符時表示的是()運算;作為雙目運算符時表示的是( )運算。(2)與表達式 a&=b等價的另一書寫形式是()。設有char a, b;若要通過a&b運算屏蔽掉a中的其它位,只保留第2和第8位(右起為第1位), 則 b 的二進制數是().測試char型變量a第六位是否為1的表達式是()(設最右位是第一位)。(5)設二進制數x 的值是 11001101,若想通過 x&y 運算使 x 中的低 4 位不變,高 4 位清

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

32、號運算符的優先級最低。從鍵盤輸入數據時,對整型變量只能輸入整型數據,對實型變量只能輸入實型數據。當 (3) (4) c 語言中的標識符只能由字母、數字和下劃線三種字符組成。(5) 在 c 語言中, char 型的數據在內存中的存儲形式是原碼形式。第三章 簡單 c 程序設計(1 )當輸入一個實型數據時,格式控制部分應規定小數點后的位數,如scanf( %4.2f | ,&f)(2 )整型變量的輸出格式控制符只有%d 一種。(3 ) putchar函數可以向終端輸出一個字符串。(4) pirntf函數中用到格式符 5s,其中數字5表示輸出的字符串占5歹u,如果字符串長度大于 5,則輸出按原字符長度

33、從左向右全部輸出。(5) 輸入項可以是一個實型常量,如 scanf( %f ii ,2.3)第四章 選擇結構程序設計(1 )邏輯運算符兩側的運算對象可以是任何基本類型的數據。(2) c語言中只提供了三種邏輯運算符:& ,|,和!。(3) 若 a=6,b=4,c=3 則表達式 a&b+c|b -c 的值是 0。(4 )關系運算式的結果都是邏輯值。(5) 若a=1,b=2,則表達式 ab?a:b+1的值是3。第五章 循環控制(1 )設有以下程序段:int x=0,s=0;while(!x!=0) s+=+x;printf( %d ii ,s);則運行該程序段后輸出為: 0(2) for循環只能應用

34、于循環次數已經確定的情況。(3 ) goto語句只能用于退出多層循環。(4) switch語句中不能出現 continue語句。(5 ) 只能用continue語句終止本次循環。第六章 數組(1) 兩個字符串中所包含的字符個數相同時,才能比較字符串。(2) 字符數組可以存放字符串。(3 )不能用關系運算符對字符數組中的字符串進行比較。(4)如果定義了一個指向數組的指針,則該指針可以相當于數組名使用。(5 )如果沒有給一個整型數組的元素賦初值,則其元素的缺省初值全部為0第七章 函數(1 ) c語言中,用戶若需調用標準庫函數,在調用前必須重新定義。(2) c語言中不允許用戶重新定義標準庫函數。(3

35、) 在c程序中,函數的定義和調用都不允許嵌套。(4) 如果用數組名作為函數調用的實際參數,則傳遞給形參的是數組的首地址。形式能參數也是一種局部變量。(5).編譯預處理命令第八章#號開始。(1)預處理命令行都必須以宏替換不占用運行時間,只占編譯時間。(2)程序在執行過程中對預處理命令進行處理。(3) c宏名必須用大寫字母表示。(4)括起來時,表示在 在文件包含預處理命令的使用形式中,當# include后的文件名用(5)當前目錄搜索被包含文件。指針第九章表示的是一個指向整型變量的指針。(*p)4,則標識符p (1)若有定義:int表示的是一個指針數組名。,則標識符p (2)若有定義:int *p

36、4(3)指針值就是地址值。可以表示函數返回值的類型。,指針p (4)若有定義int (*p)()。和arvc (5) c語言允許 main函數帶形參,但形參名只能是argv 結構體與共用體第十章(1)當定義一個結構體變量時,系統分配給它的內存是各成員所需內存量的總和。(2) c語言中,結構體變量在程序執行期間只有部分成員駐留在內存中。(3) 一個共用體類型定義中不能出現結構體類型的成員。 typedef 只是將已存在的類型用一個新的標識符來代表,而不能增加新類型。(4 )用typedef可以定義各種類型名,但不能用來定義變量。(5 )用位運算第十一章文件第十二章fseek函數可以實現文件的隨機

37、讀寫的操作。(1)利用rewind的作用是使位置指針重新返回文件的開頭。(2) 函數 在c程序中,文件可以用隨機讀寫的方式存取,也可以用順序讀寫的方式存取。(3)的作用是得到流式文件中的當前位置。函數ftell(fp) (4)函數的作用是從指定文件讀入一個字符,該文件的打開方式必須是只讀的。(5) fgetc 程序設計四、語言概述 c 第一章 數據類型、運算符與表達式第二章程序設計簡單c 第三章選擇結構程序設計第四章 以下信息之一: , 7 整除, 并輸出 3( 1 ) 編程實現: 輸入一個整數,判斷它能否被子, 5 整除; 5, 71 )能同時被 3, )能被其中兩數(要指出哪兩個)整除;

38、2 )能被其中一個數(要指出哪一個)整除; 3 7 任一個整除。 3, 5, 4)不能被 編程實現: 2)用switch ( (x0)-1(x=0)0 y=(x.0)1循環控制第五章直至購買的蘋果個數達,第二天開始,每天買前一天的倍元,第一天買2 個蘋果( 1 )每個蘋果0.8的最大值。編寫程序求每天平均花多少錢?到不超過100 門成績,分別統計出每個學生的平均成績。名學生的 5 ( 2)編寫程序,從鍵盤輸入6 數組第六章作為輸入結束14 的范圍內,用) ,其值在 0 至( 1 )從鍵盤輸入若干整數(數據個數應少于50的標志。統計每個整數的個數。試編程。 5,6; 現要將 a 的行和列的元素互

39、換后存到另一個二維數( 2 )若有說明: int 組 b 中。試編程。第七章 函數已有變量定義和函數調用語句int a,b; b=sum(a);函數sum()用以求 k ,和數作為函數值返回。若 a 值為10 ,經函數sum 的計算后, b 的值是55。請編寫sum 函數。sum(int n) (2) a 是一個 2*4 的整型數組,且各元素均已賦值,函數max_value 可求出其中的最大元素值max , 并將此值返回主調函數。 今有函數調用語句 max=max_value(a) ; 請編寫 max_value 函數。max_value(int arr 4)第八章 編譯預處理命令( 1 )輸

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

41、列,則得到新數列為 2, 4, 6 , 16, 14, 12, 10, 8, 18 , 20。)第十章 結構體與共用體( 1 )試利用指向結構體的指針編制一程序,實現輸入三個學生的學號、數學期中和期末成績,然后計算其平均成績并輸出成績表。(2)請定義枚舉類型,用枚舉元素代表人民幣的面值。包括 1, 2, 5 分; 1, 2, 5 角; 1,2, 5, 10, 50, 100 元。第十一章位運算( 1 )請編程序:從終端讀入 16 進制無符號整數 m ,調用函數rightrot 將 m 中的原始數據循環右移 n 位。并輸出 移位前后的內容。結束的某幾位,起始位和n2開始至n1位的單元中取出以16

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

43、y20; * 專業 * char addr40;*地址 *;請編寫程序,輸出學號在970101 971035 之間的學生學號、姓名、年齡和性別。五、 參考答案一、名詞解釋 二、單項選擇題第一章 c 語言概述(1) a(2) c(3) d(4) c(5) b第二章 數據類型、運算符與表達式1)c2)a3)c4)c5)a第三章 簡單 c 程序設計(1 d(2 d(3 d(4 a(5 b第四章 選擇結構程序設計(1 c(2 bd3 (4 c(5 b第五章 循環控制(1)c(2) c(3) a(4) c(5) c第六章 數組(1)c(2) b(3) d(4) c(5) d第七章 函數(1)a(2) d

44、(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(7) d(8) a(9) d(10) c第十章 結構體與共用體(1)d(2) cd(3)(4) c(5) d第十一章位運算(1) cb(2) b(3)b(4)b(5)c第十二章文件(1)a(3) b(4) c(5) d(6) c三、填空題第一章 c 語言概述(1) 函數(2) 主函數(或: main 函數)(3) /*/(4) scanf printf第二章 數據類型、運算符與表達式(1)12(2)單精度型(或:float型)雙精度型(或

45、double型)(3)106(4) 字母數字下劃線(5) 整型 (或 :int 型)第三章 簡單 c 程序設計(1)x=1y=2*sum*=310 squared is :100(2)a=+00325 - - - x=+3.14159e+00 ( 此處- 代表空格 )(3)bbb(4)32766 -165535(5) -14第四章 選擇結構程序設計(1)0(2) 非 0 的數字(3) xz|yz(4) 0 11(5)第五章 循環控制(1) 36(2) 3(3) *(4) a=-5(5) 2*i+4*y=90第六章 數組(1) 常量表達式常量表達式(2) 按行主順序存放(3) 04(4) i*m+j+1(5) 06第七章 函數(1) 程序中的 main() 函數(2) 函數說明部分 函數體(3) void add(float a,float b) float add(float a,float b)(4) 111(5) (int)(value*10+5)/10)

溫馨提示

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

評論

0/150

提交評論