C語言選擇題題庫2講解_第1頁
C語言選擇題題庫2講解_第2頁
C語言選擇題題庫2講解_第3頁
C語言選擇題題庫2講解_第4頁
C語言選擇題題庫2講解_第5頁
免費預覽已結束,剩余29頁可下載查看

下載本文檔

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

文檔簡介

第1章C語言程序設計概述一.選擇題1.以下敘述中正確的是(A)A.C語言程序中注釋部分可以出現在程序中任意合適的地方B.花括號“{”和“}”只能作為函數體的定界符C.構成C語言程序的基本單位是函數,所有函數名都可以由用戶命名D.分號是C語言語句之間的分隔符,不是語句的一部分.以下敘述中錯誤的是(A)A.用戶所定義的標識符允許使用關鍵字B.用戶所定義的標識符應盡量做到“見名知意”C.用戶所定義的標識符必須以字母或下劃線開頭D.用戶所定義的標識符中,大,小寫字母代表不同標識.下列關于C語言用戶標識符的敘述中正確的是(B)A.用戶標識符中可以出現下劃線和中劃線(減號)B.用戶標識符中不可以出現中劃線,但可以出現下劃線C.用戶標識符中可以出現下劃線,但不可以放在用戶標識符的開頭D.用戶標識符中可以出現下劃線和數字,它們都可以放在用戶標識符的開頭.以下關于C語言標識符的描述中,正確的是(D)A.標識符可以由漢子組成 B.標識符只能以字母開頭C.關鍵字可以作為用戶標識符 D.Area與area是不同的標識符.以下正確敘述是(C)A.在C語言中,main函數必須位于文件的開頭B.C語言每行只能寫一條語句C.C語言本身沒有輸入,輸出語句D.對一個C語言進行編譯預處理時,可檢查宏定義的語法錯誤.下面說法正確的是(C)A.C程序由符號構成 B.C程序由標識符構成C.C程序由函數構成 D.C程序由C語句構成.以下敘述不正確的是(D)A.一個C源程序可以由一個或多個函數組成.一個C源程序必須包含一個main函數C.C程序的基本組成單位是函數D.在C程序中,注釋說明只能位于一條語句后面.C語言規定:在一個源程序中, main函數的位置可以任意.以下不能定義為用戶標識符的是(D)A.scanfB.VoidC._3com D.int.以下不合法的用戶標識符是( C)Aoj2_KEYB.DoubleC.4dD._8_.下列四組選項中,均不是 C語言關鍵字的是(A)A.defineIFtypeB.getccharprintfC.includescanfcaseD.whilegopow.以下不能定義為用戶標識符的是(D)A.MainB._0C._intD.sizeof.以下不合法的用戶標識符是( C)Aoj2_KEYB.DoubleC.4d_8_D.main.以下選項中合法的用戶標識符是(B)A.longB._2TestC.3DmaxD.A.dat.以下選項中不合法的用戶標識符是( A)A.abc.cB.fileC.MainD.Printf.以下選項中不合法的用戶標識符是( C)A._12AbB.includeC.3abcD.Int.以下敘述正確的是(B)A.可以把define和if定義為用戶標識符B.可以把define定義為用戶標識符,但不能把 if定義為用戶標識符C.可以把if定義為用戶標識符,但不能 de巾ne定義為用戶標識符D.define和if都不能定義為用戶標識符.一個C語言的執行是從(A)A.本程序的main函數開始,至Umain函數結束B.本程序文件中的第一個函數開始,到本程序文件的最后一個函數結束C.本程序的main函數開始,到本程序文件的最后一個函數結束D.本程序文件的第一個函數開始,到本程序main函數結束.C語言程序的基本單位是語句.以下敘述中正確的是(C)A.程序應盡可能短B.為了編程的方便,應當根據編程人員的意圖使程序的流程隨意轉移C.雖然注釋會占用較大篇幅,但程序中還是應盡可能詳細地注釋D.在VC環境下,運行的程序就是源程序二填空題.C語言程序是由函數構成的,其中并且只有一個主函數。 C語言程序的執行總是由主函數開始,并且在主函數中結束。.C語言源程序文件的擴展名是 .C經過編譯后,生成的擴展名是 .OBJ,經過連接后,生成的擴展名是.EXE。.C語言的函數體由“{”開始,用符號“}”結束;函數體的前面是變量說明部分,其后是執行語句部分。.一個C源程序中至少應包括一個主函數.C語言程序的注釋是以/*開頭,以*/結束的。注釋對程序運行不起任何作用。第2章數據類型與表達式一選擇題.以下選項中不屬于 C語言的類型的是(D)A.signedshortintB.unsignedlongintC.ungnedintD.longshort.以下選項中可作為 C語言合法整數的是(C)A.10110B B.0386C.0xffaD.x2a2.以下選項中合法的實型常數是(C)A.5E2.0B.E-3C.2E0D.1.3E.以下選項中屬于C語言的數據類型是(A)A.復數型 B.邏輯數C.雙精度型 D.集合型.以下選項中合法的字符常量是(B)A."B"B.'\010'C.68D.D.下面正確的字符常量是(C)A."c" B.'\\'C.'W1D.''.下面不正確的字符串常量是(A)A.'abc'B."12'12"C.“0" D..在C語言中,char型數據在內存中的存儲形式是(D)A.補碼B.反碼 C.原碼 D.ASCII碼.以下所列的C語言常量中,錯誤的是(B)A.0xFFB.1.2e0.5 C.2L D.''72'.表達式3.6-5/2+1.2+5%2的值是(D)A.4.3B.4.8C.3.3 D.3.8.有以下定義語句:doublea,b;intw;longc;若各變量已正確賦值,則以下選項中在的表達式是(C)A.a=a+b=b++B.w%((int)a+BC.(c+w)%(int)aD.w=a%b.有以下程序#include<stdio.h>main(){intm=12,n=34;printf("%d%d,m++,n++);printf( "%d%d\n"n++,++m);)程序運行后的結果是(C)A.12353514 B.12353513C.12343514D.1234351313有以下程序:#include<stdio.h>main(){inta1=3,a2=9;printf("%d\n",(a1,a2));}以下敘述中正確的是(B)A.格式^^出3B.程序車^出9 C.格式說明符不足,編譯出錯 D.程序運行時產生錯誤信息14..有以下程序#include<stdio.h>main(){intx,y,z;x=y=1;z=x++,y++,++y;printf( "%d,%d,%d\n”,n,y,z);}程序運行后的結果是(C)A.2,3,3B.2,3,2 C.2,3,1D.2,2,1.若有定義:inta=8,b=5,c;執行語句"c=a/b+0.4;”后,c的值為1.若變量a是int類型,并執行了語句: a='A'+1.6;則正確的敘述是(D)A.a的值是字符CB.a的值是浮點型C.不允許字符型和浮點型相加 D.a的值是字符‘A'的ASCII值加上1.下列語句中,正確的語句是(C)A.intx=y=Z==0B.intZ=(x+y)++C.x=+3==2D.x%=2.5.以下能正確地定義整型變量 a,b和c,并為它們賦初值5的語句是(C)A.inta=b=c=5B.inta,b,c=5C.inta=5,b=5,c=5D.a=b=c=5.已知各變量的類型說明如下 :intk,a,b;unsignedlongw=5;doublex=1.42;則以下不符合C語言的表達式是(A)A.x%(-3) B.w+=-2C.k=(a=2,b=3,a+B D.a+=a-=(b=4)*(a=2).若有說明語句:char='\72';則變量c(A)A.包含1個字符 B.包含2個字符C.包含3個字符 D.說法不合法,c的值不確定.假定w,x,y,z,m均為int型變量,有如下程序段:w=1;x=2;y=3;Z=4;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<Z)?m:Z;則該程序運行后,m的值是(C)A.4B.3C.1 D.2.若x,i,j和k都是int型變量,則計算下面表達式 x=(i=4,j=16,k=32)后,x的值為(C)A.4B.16C.32D.52.假設所有變量均為整型,則表達式 (a=2,b=5,b++,a+b)的值是(B)A.7B.8 C.6 D.2.設以下變量均為int類型,則值不等于7的表達式是(C)A.(x=y,x+y,x+1) B.(x=y=6,x+y,y+1)C.(x=6,x+1,y=6,x+y) D.(y=6,y+1,x=y,x+1).下列關于運算符優先順序的描述中正確的是賦值運算符〈邏輯運算符〈關系運算符〈算術運算符.若有代數式bc/3ac,則不正確的C語言表達式是(C)A.a/b/c*e*3 B.3*a*e/b/c C.3*a*e/b*c D.a*e/c/b*327.已知字母A的ASCII碼為十進制數65,且c2為字型符,則執行語句 c2='A'+'6'-'3'后,c2中的值為68.若以下變量均是整型, 且num=sum=7;則計算表達式sum=num++,sum++,++num;后sum的值為8.設a,b,c,d,m,n均為int型變量,且a=5,b=6,c=7,d=8,m=2,n=2,則邏輯表達式 (m=a>b)&&(n=c<d)運算后,n的值為2.若有定義:inta=7;floatx=2.5,y=4.7,則表達式x+a%3*(int)(x+y)%2/4的值是2.50000031.設x,y,z和k都是int型變量,則執行表達式:x=(y=4,z=16,k=32)后,x的值為32.表達關系X<=Y<=Z的C語言表達式為(X<=Y)&&(Y<=Z).運行結果為4的表達式是C.inti=1,j=1;i+=j+=2.表達式(a=3*5,a*5),a+5的值是A.20.設有整型變量a,b,c,它們的初值是1,運行表達式++a||++b&&++c后,a,b,c的值分別是A.2,1,1.若有條件表達式(exp)?a++:b--,則以下表達式中能完全等價于表達式 (exp)的是B.(exp!=0).當c的值不為0時,在下列選項中能正確將 c的值賦給變量a,b的是C.(a=c)&&(b=c).若a為int類型,且其值為3,則執行完表達式a+=a-=a*a后,a的值是C.-12二填空題.在C語言中,整數有三種表達方式 :十進制數,八進制數,十六進制數。.C語言中,用關鍵字int定義整型變量,用關鍵字float定義單精度型變量,用關鍵字double定義雙精度型變量。3.執行以下語句后m的值為3 intw,x,y,z,m;w=3;x=4;y=5;z=6;m=(w<x)w:x;m=(m<y)m:y;m=(m<Z)m:z;4.有以下定義:intm=5,y=2;則計算表達式y+=y-=m*=y后的y值是-165.s是int型變量,且S=6,則下面表達式:s%2+(s+1)%2的值為1.若a是int型變量,則計算表達式:a=25/3%3后a的值為2.若x和n均是int型變量,且x和n的初值均為5,則計算表達式:x+=n++后x的值為10,n的值為6。.假設所有變量均為整型,則表達式 :(a=2,b=5,a++,b++,a+b)的值為9。.已知字母a的ASCII碼為十進制數97,且設ch為字符型變量,則表達式 ch='a'+'8'-'3'的值為f.假設m是一個三位數,從左到右用a,b,c表示各位的數字,則從左到右各個數字是 bac的三位數的表達式是(m/10%10)*100+m/100*10+m%10.若有定義:inta=2,b=3;floatx=3.5,y=2.5;則下面表達式:(float)(a+b)/2+(int)x%(int)y的值為3.500000.執行語句“printf(“%d”,(a=2)&&(b=-2))后的輸出結果是1。.已知inty=4,x=6,=2,d;執行語句d=(++x,y++),z+2后d的值為4。.定義:doublex=3.5,y=3.2;則表達式(int)x*0.5的值是1.500000表達式y+=x++的值是6.7000000.定義;intm=5,n=3;則表達式m=(m=1,n=2,n-m)的值1,不知道m+=m-=(m=1)*(n=2)的值是-2。若再進行下述賦值; m=1,2,n++;則m的值是1,n的值是4。。第3章C語言程序的控制結構序結構程序設計一、選擇題.下列語句中,符合語法的賦值語句是(B)A.a=10 B.x=y==20 C.i++ D.m=2,n=5.下列語句中,正確的語句是(C)A.intx=y=z=0B.intz=(x+y)++C.x=+3==2 D.x%=2.53以下敘述中錯誤的是(C)A.C語句必須是以分號結束B.復合語句在語法上被看作一條語句C.空語句出現在任何位置都不會影響程序運行D.賦值表達式末尾加分號就構成賦值語句.下列程序的輸出是(C)#include<stdio.h>voidmain(){inta=011,b=101;printf("\n%x,%o”,++a,b++)}TOC\o"1-5"\h\zA.12,145 B.9,145C.a,145 D.a,5.以下選項中不是C語句的是(C)A.{inti;i++;printf( "%d\n",i);} B.;C.a=5,c=10 D.{;}.以下程序的功能是:給 r輸入數據后計算半徑為 r的圓面積so程序編譯時出錯。main(){intr;float;scanf("%d",&r);$=圓周率*r*r;printf("s=%f\n”,s);程序出錯的原因是 (D)A.注釋語句書寫位置錯誤B.存放圓半徑的變量r不應該定義為整型C.輸出語句中格式描述符非法D.計算圓面積的賦值語句中使用了非法變量.若變量已正確定義,要將 a和b中的數進行交換,下面不正確的語言組是 (C)A.a=a+b,b=a-b,a=a-b B.t=a,a=b,b=tC.a=t;t=b;b=a D.t=b;b=a;a=t.設有如下程序段:intx=2002,y=2003;printf("%d\n",(x,y));則以下敘述中正確的是輸出值為20039.已知字符‘a'白ASCII碼為97,則下述程序段(C)charch='a';intk=12;printf("%x,%o”,ch,k);printf("k=%%d”,k);答案:C.輸出為61,14,k=%d10.下述程序的輸出結果是(B)#include<Stdio.h>main(){intx=023;printf("%d”,--x);}A.17 B.18 C.23 D.2411.下述程序的輸出結果是(D)#include<Stdio.h>main(){intk=11;printf("k=%d,k=%o,k=%x\n”,k,k,k);}答案:D.k=11,k=13,k=b12.有如下定義:floatx;unsigned;則(B)是合法的輸入語句。答案:B.scanf("%f3o”,&x,&y)13.對于下述語句,若將10賦給變量k1和k3,將20賦給變量k2和k4,則應按方式(D)輸入數據intk1,k2,k3,k4;scanf("%d%d”,&k1,&k2);scanf("%d%d”,&k3,k4);A.1020B.102010201020C.10,20D.102010,20,10,2014.有以下程序:main(){inta=666,b=888;printf( "%d\n",a,b);}A.錯誤信息 B.666 C.888 D.666,888.已知字符A的ASCII碼值是65,以下程序(C)#include<stdio.h>main(){chara='A';intb=20;printf("%d,%o",(a=a+1,a+b,b),a+'a'-'A',b);}A.表達式非法,輸出零或不定值B.因輸出項過多,無輸出或輸出不定值C.輸出結果為20,142D.輸出結果為20,1541,20.對于條件表達式(M)?(a++):(a--),其中的表達式M等價于(C)A.M==0 B.M==1 C.M!=0 D.M!=1.若變量c定義為float類型,當從終端輸入283.1900后按回車鍵,能給變量 c賦以283.19的輸入語句是(D)A.scanf("%f",c) B.scanf("%8.4f”,&c)C.scanf("%6.2f”,&c)D.scanf("%8f”,&c).設有定義:longx=-23456789L;則以下能夠正確輸出變量 x值的語句是(B)A.printf("x=%d\n",x)B.printf("x=%1d\n”,x)C.printf("x=%8d1\n”,x)D.printf("x=%LD\n”,x).輸入一個華氏溫度,要求輸出攝氏溫度。 計算公式為:c=5/9(F-32),以下程序正確的是(B)答案:main(){floatc,F;scanf("%f",&F);c=5*(F-32)/9;printf( “攝氏溫度: %f\n",n);}.以下程序的輸出結果是(D)#include<stdio.h>main(){intk=17;printf("%d,%o,%x\\n"k,k,k);}A.17,021,0x11 B.17,17,17 C.17,0x11,021 D.17,21,11.下列程序執行后的輸出結果是( A)#include<stdio.h>main(){intx= 'f;printf("%c\n",'A'+(x-'a'+1);A.GB.HC.ID.J.語句printf("a\bre\'hi\'y\\\bou\n”);的輸出結果是(C)答案:Core'hi'you.有如下程序:#include<stdio.h>main(){inty=3,x=3,z=1;printf( "%d%d\n”,(++x,y++),z+2);}運行該程序的輸出結果是(D)A.34 B.42 C.43 D.33.若變量已正確說明為 float類型,要通過語句scanf("%f%f%f”,&a,&b,&c);給a賦予10.0,b賦予22.0,c賦予33.0,不正確的輸入形式是(B)A.10<回車>22<回車>33<回車> B.10.0,22.0,33.0<回車>C.10.0〈回車>22.033.0<回車> D.1022<回車〉33〈回車>.以下程序的輸出結果是(C)#include<stdio.h>main(){inta=5,b=4,c=6,d;printf( "%d\n",d=a>b(a>ca:c):(b));}A.5 B.4 C.6D.不確定二.填空題.要用以下輸入語句使 a=5.0,b=4,c=3,則輸入數據的形式應該是 a=5.0,4,c=3intb,c;floata;scanf("a=%f,%d,c=%d",&a,&b,&c.;.以下程序輸出的結果是 0#include<stdio.h>main(){inta=5,b=4,c=6,d;d=(a>b>c);printf( "%d\n",d);}.假設變量a和b均為整型,以下語句可以不借助任何變量把 a,b中的值進行交換。 請填空。a+=b;b=a-b;a-=b.若x為int型變量,則執行以下語句后x的值是-14x=7;x+=x-=x+x.有一輸入函數scanf("%d",k);則不能使float類型變量k得到正確數值的原因是末指明變量k的地址格式控制符與變量類型不匹配.已有定義inta;floatb,x;charc1,c2;為使a=3,b=6.5,x=12.6,c1='a'.c2='A',正確的sanf函數調用語句是sanf("%d%f%f%c%c",&a,&b,&x,&c1,&c2);輸入數據的方式為36.512.6aA.若有以下定義和語句,為使變量 c1得到字符'A',變量c2得到字符'B',正確的格式輸入形式是AB<CR>.設x,y和z均為int型變量,則執行語句 x=(y+(z=10)+5)-5;后,x、y和z的值是101510.已有定義intx;floaty;且執行scanf("%3d%f”,&x,&y);語句時,從第一列開始輸入數據12345[空格]678<回車〉,貝Ux的值為123,y的值為45.000000.以下程序的輸出結果是2,1main(){inta=1,b=2;a=a+b;b=a-b;a=a-b;printf("%d,%d\n”,a,b);}3.2選擇結構程序設計一。選擇題.邏輯運算符兩側運算對象的數據類型(D)A.只能是0或1 B.只能是0或非0的整數C.只能是整型或字符型數據 D.可以是任何類型的數據.下列運算符中優先級最高的是(B)A.< B.+ C.&& D.!=.設x、y和z是int型變量,且x=3,y=4,z=5,則下面表達式中值為0的是(D)A.'x'&&7B.x<=yC.x||y+z&&y-z D.!((x<y)&&!z||1)4.已知x=43,ch='A',y=0;則表達式(x>=y&&ch<'B'&&!—y)的值為(C)A.0 B.語法錯誤 C.1D.“假”.若希望當A的值奇數時,表達式的值為“真” ,A的值為偶數時,表達式的值為“假”。則以下不能滿足要求的表達式是(C)A.A%2==1 B.!(A%2==0) C.!(A%2) D.A%2.判斷char型變量ch是否為大寫字母的正確表達式是(C)A.‘A'<=ch<='Z'B.(ch>='A')&(ch<='Z'C.(ch>='A')&&(ch<= 'Z') D.('A'<=ch)AND('Z'>=ch).判斷char型變量c1是否為小寫字母的正確表達式為 :D.(c1>='a')&&(c1<='z').以下程序的運行結果是(B)#include"stdio.h"voidmain(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf( "%d,%d”,啊,吧);}A.6,1 B.2,1 C.6,0 D.2,0.執行以下語句后a的值為[1】(C),b的值為[2】(A)inta,b,c;a=b=c=1;++a||++b&&++c;A.錯誤 B.0 C.2 D.1A.1 B.2 C.錯誤D.4.已知intx=10,y=20,z=30;以下語句執行后x,y,z的值是(B)if(x>y)z=x;x=y;y=z;A.x=10,y=20,z=30 B.x=20,y=30,z=30C.x=20,y=30,z=10 D.x=20,y=30,z=20.下面程序的輸出結果是(C)main(){inti=1,j=1,k=2;if((j++||k++)&&i++);printf( "%d,%d,%d\n”,i,j,k);}A.1,1,2 B.2,2,1 C.2,2,2 D.2,2,3.以下if語句語法正確的是(B)B.if(x>0){x=x+y;printf( "%f”,x;}elseprintf("%f”,-x);.以下不正確的語句為(B)B.if(x=y)&&(x!=0)x+=y.以下程序的運行結果是(C)#include<Stdio.h>voidmain(){intm=5;if(m++>5)printf( "%d'n",m);elseprintf("%d\n",m--);}TOC\o"1-5"\h\zA.4 B.5 C.6 D.7.方a=1,b=3,c=5,d=4時,執行完下面一段程序后 x的值是(B.2)if(a<b)if(c<d)x=1;elseif(a<c)if(b<d)x=2;.elsex=3;elsex=6;elsex=7;A.1 B.2 C.3 D.6.以下程序的輸出結果是(B)#include"Stdio"voidmain(){intx=2,y=-1,z=2;if(x<y);if(y<0)z=0;elsez+=1;printf(("%d\n",z);}A.3 B.2C.1D.0.若運行時給變量x輸入12,則以下程序的運行結果是 (A)#include"Stdio"voidmain(){intx,y;scanf("%d",&x);y=A>12?x+10:x-12;printf("%d\n",y);}A.0 B.22 C.12 D.10.以下程序的運算結果是(D)#include"Stdio"voidmain(){intk=4,a=3,b=2,c=1;printf( "\n%d\n",k<a?k:c<b?c:b);}A:4 B:3 C:2 D:1.執行以下程序段后,變量 a,b,c的值分別是(B)intx=10,y=9;inta,b,c;a=(--x==y++)?--x:++y;b=x++;c=y;A:a=9,b=9,c=9 B:a=8,b=8,c=10C:a=9,b=10,c=9 D:a=1,b=11,c=10.下面程序運算結果是(B)main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf( "%d\n" ,d+1).;else if((c-1>=d)==1);elseprintf("%d\n",d+2);}A:2 B:3 C:4 D:編譯時出錯,無結果.下程序的輸出結果是(C)main(){inta=-1,b=1,k;if((++a<00&& !(b--<=0))printf("%d\n",a,b);elseprintf("%d\n",b,a);}A:-11 B:01 C:10 D:00.下面程序的輸出結果是(C)main(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey+1.0printf("%f\n",y);}A:0.000000 B:0.250000 C:0.500000 D:1.000000.下面程序輸出結果是(C)main(){inta=2,b=-1,c=2;if(a<b)if(b<0)c=0;elsec++;printf("%d\n",c);}A:0 B:1 C:2 D:3.下面程序的輸出結果是(A)main(){intx=1,a=0,b=0;switch(x){case0 : b++;case1:a++;case3:a++;b++;}printf("a=%d,b=%d\n”,a,b);}A:a=2,b=1 B:a=1,b=1C:a=1,b=0D:a=2,b=2.下面程序的輸出結果是(A)main(){inta=15,b=21,m=0;switch(a%3);case0:m++,break;case1:m++;switch(b%2){default:m++;case0:m++;break;}}printf("%d\n",m);}A:1 B:2 C:3 D:4二、填空題.C語言提供三種邏輯運算符是 && || !.條件"2<x<3或x<-10”的C語言表達式是x>2&&x<3||x<-10.設y為int型變量,請寫出描述“ y是奇數”的表達式 y%2==1.設x,y,z為int型變量,請寫出描述“x或y中有一個小于z”的表達式:x<z||y<z.x,y,z均為int型變量,請寫出描述“x,y和z中有兩個位負數”的表達式((x<0&&(y<0))||((x<0)&&(z<0))||((y<0)&&(z<0 )).有inta=3,b=4,c=5;則下列表達式的值是(1)!(a+b+c-1&&b+c/2.已知A=7.5,B=2,C=3.6,表達式A>B&&C>A||A<B&&!C>B的值是0。.若a=6,b=4,c=2,貝U表達式!(a-b+c-1&&b+c/2)的值是1。.若a=2,b=4,貝U表達式!(x=a||(y=b&&0))的值是0。.若a=1,b=4,c=3,貝U表達式! (a<b||!c&&1)的值是0。.若a=5,b=2,c=1,,貝U表達式a-b<c||b==c的值是0。.設a=3,b=4,c=5,貝U表達式a||b+c&&b==c的值是1。.當m=2,n=1,a=1,b=2,c=3時,執行完d=(m=a!=b&&(n=b>c)后,n的值是0,m的值是?.以下程序實現:輸入三個整數,按從小到大的順序進行輸出。 請填上正確的內容。#include“stdio.h"voidmain(){intx,y,z,c;scanf("%d%d%d” ,&x,&y,&z);if(y<z){c=y;y=z;z=c;}if(x<z){c=x;x=z;z=c}if(x<y){c=x;x=y;y=c;}printf( "%d,%d,%d”,x,y,z);}.以下程序對輸入的一個小寫字母,將字母循環后移 5個位置輸出。如‘a‘變成‘f,'w'變成‘b'o請填入正確的內容。#include“stdio.h"voidmain(){charc;c=getchar();if(c>='a'&&c<='u'【1】elseif(c>'v'&&c<='z')[2]putchar}【1】c=c+5 [2]c=c-21.以下程序實現輸出x,y,z三個數中最大者。請填空。#include"stdio.h"voidmain(){intx=4,y=6,z=7;int( 【1】);if(【2】)u=x;elseu=y;if(【3】)v=u;elsev=z;printf("v=%d",v);}【1】u,v【2]x>y[3]u>x.以下程序的功能是判斷輸入的年份是否閏年。請填空。#include"stdio.h"voidmain(){inty,f;scanf("%d",&y);if(y%400==0)f=1;elseif(【1】)f=1;else【2】;if(f)printf("%dis”,y);elseprintf("%disnot”,y);printf("aleapyear\n");}[1]y%4==0&&y%100!=0 ⑵f=0.輸入某個職工的工資,根據不同檔次扣除所得稅,然后計算實發工資。扣稅標準如下。(1)若工資低于850元,則不扣稅。(2)若工資在850至1500之間,則扣稅比例為1%(3)若工資在1500至2000之間,則扣稅比例為 1.5%(4)若工資大于2000之間,則扣稅比例為2%要求:輸入工資為負數,則顯示出錯信息。請填上正確內容。#include“stdio.h"voidmain(){foatgz,rfgz;printf( "plaseinputafloatgz:\n");scanf("%f",&gz);printf("gzis%7.2f\n",gz);if(gz<0)printf(aerrorinputagain!\n");elseif(【1】)rfgz=gz;elseif(【2】)rfgz=gz-gz*0.01;elseif(【3】)(【4】);else【5】;if(gz>0)printf("gzis%7.2f,rfgzis%7.2f.\n",gz,rfgz);}[1]gz<850⑵(gz>=850)&&(gz<1500) [3]gz>=1500)&&(gz<2000) [4]rfgz=gz-gz*0.015[5]rfgz=gz-gz*0.0203.3循環結構程序設計一、選擇題.下述循環的循環次數是(B)intk=2;while(k=0)printf("%d”,k);k--;printf("\n";A.無限次B.0次C.1次D.2次.有以下程序段:intk=0;while(k=1)k++;while 循環執行的次數是(A)A.無限次 B.有語法錯誤,不能執行 C.一次也不執行 D。執行一次.下述語句執行后,變量k的值是(B)intk=1;while(k++<10);A.10 B.11 C.9 D.無限循環,值不定.有以下程序:#include<stdio.h>voidmain(){intn=10;while(n>7){n=n-1;printf("%d",n);}}以上程序輸出的結果是(B)A.1098 B.987 C.10987 D.9876.有以下程序#include<stdio.h>voidmain(){intk=5;while(--k)printf("%d”,k-=3);}以上輸出的結果是(A)A.1 B.2 C.4D.死循環.讀下面程序:?#include"stdio.h"?#include"match.h”{floatx,y,z;scanf("%f,%f",&x,&y);z=x/y;while(1){if(fabs(z)>1.0){x=y;y=z;z=x/y;}elsebreak;}prinf("%f",y)}若運行時從鍵盤上輸入“ 3.6,2.4”,則輸出的結果是(B)A:1.500000 B:1.600000 C:2.000000 D:2.400000.運行以下程序后,如果從鍵盤上輸入 china,則輸出結果為(C)#include“stdio.h"voidmain(){intv1=0,v2=0;charch;while((ch=getchar())!='#')switch(ch){case'a':default:v1++;case'o':v2++;}printf("%d,%d,”,v1,v2);}A.2,0 B.5,0 C.5,5 D.2,5.若執行下面程序時,輸入“Adescriptor<CR>",則以下程序的輸出結果是(D)#include“stdio.h"voidmain(){charc;intv0=0,v1=0,v3=0;doswitch(c=getchar()){case'a':case'A':case'e':case'E':case'i':case'I':case'o':case'O':case'u':case'U':v1++;default:v0++;v2++;}while{c!='\n');printf("\nvo=%d,v1=%d,v2=%d”,v0,v1,v2);}A.vo=7,v1=4,v2=7 B.vo=8,v1=4,v2=8C.vo=11,v1=4,v2=11 D.vo=12,v1=4,v2=12.下述程序的輸出的結果是(B)#include“stdio.h"voidmain(){charc='A';intk=0;do{switch(c++){case'A':k++;break;case'B':k--;case'C':k+=2;breakcase'D':k%=2;continue;case'E':k*=10;break;default:k/=3;}k++;}while(c<'G');printf("k=%d",k);}A:k=3 B:k=4 C:k=2 D:k=0.以下程序輸出結果是(B)#include"stdio.h"voidmain(){intx=3;do{printf("%d\n",x-=2);}while(!(--x));}A.輸出的是1Bo輸出的是1和-2C.輸出的是3和0 D.是死循環.對于下面(1),(2)兩個循環語句,(A)是正確的描述。(1)while(1);(2)for(;;);A.(1)(2)都是無限循環 B.(1)是無限循環,(2)錯誤C.(1)循環一次,(2)錯誤D.(1)(2)都錯.對于下述for循環語句,下列說法正確的是(B)inti,k;for(i=0,k=-1;k=1;i++,k++)printf( "***");A.判斷循環結束的非法條件 B.是無限循環C.只循環一次 D.一次也不循環.下述for語句的循環次數是(A)inti,x;for(i=0,x=0;i<=9&&x!=876;i++)scanf( "%d",&x);A.最多循環10次B。最多循環9次 C.無限循環 D.一次也不循環.若i,j已定義為int型,則以下程序段中內循環的總次數是(A)for(i=5;i;i--)for(j=0;j<4;j++)

A.20B.24C.25D.30A.20B.24C.25D.30.下述循環語句是(C)for(a=0,b=0;a<3&&b!=3;a++);A.是無限循環 B.循環次數不定 C.循環3次D.循環4次.以下循環體的執行次數是(C)main(){inti,j;for(i=0,j=1;i<j+1;i+=2,j--)printf( "%d\n",i);}A.3 B.2 C.1 D.0.以下程序的輸出結果是(D)main(){intx=10,y=10,i;for(i=0;x>8;y++i)printf( "%d,%d”,x--,y);}A.10,19,2 B.9,87,6 C.10,99,0 D.10,109,1.以下程序執行后,sum的值是(C).#include“stdio.h"voidmain(){inti,sum;for(i=1;i<6;i++)sum+=i;printf("%d\n",sum);}A.15 B.14C.不確定D.0.以下程序執行后,sum的值是(C)#include“stdio.h"voidmain(){inta=0,i;for(i=1;i<5 );i++){switch(i){case0:case3:a+=2;case1:case2:a+=3;default:a+=5;}}printf("%d\n",a);}A.31 B.13 C.10 D.20.若下述程序執行時按如下方式輸入數據 :abcdef<回車〉則該程序的運行結果是(A)#include “ stdio.h " void main(){int k;charc;for(k=0;k<=5;k++){c=getchar();putchar(c);}printf(“\n");}A.abcdefB.aC.aD.adcdef.以下程序的輸出結果是(B)#include"stdio.h"voidmain(){intk=0,m=0;inti,j;for(i=0;i<2;i++){for(j=0;j<3;j++ )k++;k-=j;}m=i+j;printf("k=%d,m=%d”,k,m);}A.k=0,m=3 B.k=0,m=5 C.k=1,m=3 D.k=1,m=5.以下程序的輸出結果是(C)#include stdio.h void main(){intx;for(x=1;x<=10;x++)if(++x%2==0)if(++x%3==0)if(++x%5==0)printf( "%d,",x);}A.輸出31,61,91B.輸出30,60,90C.不輸出任何內容 D.輸出29,59,89.下述程序的輸出結果是(D)"x=%d,y=%d,z=%d”,x,y,z);}#include “ stdio.h " void main(){intx=3,y=6,z=0;while(x++!=(y-=1(){z++;if(y<x)break;}printf("x=%d,y=%d,z=%d”,x,y,z);}A.x=4,y=4,z=1 B.x=5,y=4,z=3 C.x=5,y=5,z=1 D.x=5,y=4,z=1.下面程序的輸出結果是(B)#include “ stdio.h " void main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}printf( "%d\n",a);}TOC\o"1-5"\h\zA.7 B.8 C.9 D.10.設x,y均為int型變量,則執行下面的循環后,y的值為(C)for(y=1,x=1;y<=50;y++){if(x>=10)break;if(x%2==1){x+=5;continue;}x-=3 ;}A.2 B.4 C.6 D.8.以下程序的輸出結果是(A)main(){inti;for(i=1;i<6;i++){if(i%2){printf( "#");continue;}printf("*");}printf("\n");}A.#*#*# B.##### C.***** D.*#*#*.以下程序的輸出結果是(B)#include"stdio.h"voidmain(){inti=0,a=0;while(i<20){for(;;){if((i%10)==0)break;elsei--;}i+=11;a+=i;}printf( "%d\n",a);}A.21 B.32 C.33 D.11.以下程序段的執行結果是(B)inta,y;a=10;y=0;do{a+=2;y+=a;printf( "a=%dy=%d\n”,a,y);if(y>20)break;]while(a=14);A.a=12y=12a=14y=16a=16y=20 B.a=12y=12a=16y=28C.a=12y=12a=14y=26 D.a=12y=12a=14y=44.下述程序的輸出結果是(B)#include"stdio.h"voidmain(){inty=9;for(;y>0;y--){if(y%3==0){printf( "%d”,--y);continue;}}}A.741 B.852 C.963 D>875421.以下程序的輸出結果是(B)#include“stdio.h"voidmain(){inti=0 , a=0 ; ;while(i<20){for(;;){if((i%10)==0)break;elsei--;}i+=11;a+=i;}printf( "%d\n",a);}A.21 B.32 C.33 D.11二、填空題.以下程序的功能是:從鍵盤上輸入若干個學生的成績,統計并輸出最高成績和最低成績,當輸入為負數時結束輸入,請填空。#include“stdio.h"voidmain(){floatx,amax,amin;scanf("%f",&x);amax=x;amin=x;while(【1】){if(x>amax)amax=x;if([2])amin=x;scanf("%f",&x);}printf("\namax=%f\namin=%f\n",amax,amin);}[1]x>=0[2]x<amin.下面程序段是從鍵盤輸入字符中統計數字字符的個數,用換行符結束循環。請填空intn=0,c;c=getchar();while(【1】){if(【2】)n++;c=getchar();}[1]c!='\n'⑵c>='0'&&c<=9.1020個西瓜,第一天賣出一半多兩個,以后每天賣剩下的一半多兩個, 問幾天以后能賣完?請填空。#include"stdio.h"voidmain(){intday,x1,x2;day=0;x1=1020;while( 【1]){x2=【2】;x1=x2;day++;}printf("day=%d\n",day);}[1]x1[2]x1/2-2.下面程序的功能用“碾轉相除法”求兩個正整數的最大公約數。請填空。#include"stdio.h"voidmain(){intr,m,n;scanf("%d%d”,&m,&n);if(m<n) 【1】;r=m%n;while(r){m=n;n=r;r= 【2】;}printf("d\n",n);}【1】r=m;m=n;n=r【2】m%n.下面程序的功能是用 do-while語句求1至1000之間滿足“用3除余2,用5除余3,用7除余2”的數,且一行只打印 5個數。請填空。#include"stdio.h"voidmain(){inti=1,j=0;do{if( 【1】){printf("%4d",i);j=j+1;}i=i+1;}while(i<1000);}[1]i%3==2&&i%5==3&&i%7==2【2】j%5==0.下面程序的功能是統計正整數的各位數字中 0的個數,并求各位數字中最大者。請填空。#include“stdio.h"voidmain(){intn,count,max,t;count=max=0;scanf("%d",&n);do{t=【1】;if(t==0)++count;elseif(max<t)【2];n/=10;}while(n);printf("count=%d,max=%d”,count,max);}【1】n%10[2]max=t.下面程序段的功能是找出整數 x的所有因子。請填空。scanf("%d",&x);i=1;for(;【1];){if(x%i==0)printf("%3d",i);i++;}[1]i<x.雞兔共有30只,腳有90個,下面程序段是計算雞兔各有多少只,請填空。for(x=1;x<=29;x++){y=30-x;if( 【1】)printf("%d,%d\n”,x,y);}[1]2*x+y*4==90.下面程序的功能是計算 1-3+5-7+...-99+101的值。請填空。#include"stdio.h"voidmain(){inti,t=1,s=0;for(i=1;i<=101;i+=2){ 【1];s=s+t;【2】;}printf("%d\n",s);}[1]t=t*i[2]t=-t/i.下面程序的功能是輸出 1到100之間每位數的乘積大于每位數的和的數。請填空。#include"stdio.h"voidmain(){intn,k=1,s=0,m;for(n=1;n<=100;n++){k=1;s=0; 【1】;while([2]){k*=m%10;s+=m%10; 【3】;}if(k>s)printf("%d",n);}}【1】m=n[2]m[3】m=m/10.下面程序的功能是求1000以內的所有完全數。請填空#include"stdio.h"voidmain(){inta,i,m;for(a=1;a<=1000;a++){for( 【1];i<=a/2;i++)if(!(a%i()【2】;if(m==a)printf( "%4d",a);}}【1】m=0,i=1[2]m=m+i.下面程序的功能是計算 100到1000之間有多少個數其為各位數字之和是 5.請填空。#include"stdio.h"voidmain(){inti,s,k,count=0;for(i=100;i<=1000;i++){s=0;k=i;while( 【1】){s=s+k%10;k=([2]);}if(s==5)count++;}printf( "%d”,count);}[1]k[2]k/10.下面程序的功能是從鍵盤輸入 10個整數中,找出第一個能被 7整除的數。若找到,打印此數后退出循環;若找不到“notexit”。請填空。#include“stdio.h"voidmain(){inti,a;for(i=1;i<=10;i++){scanf( "%d",&a);if(a%7==){printf( "%d",a);【1】;}}if(【2】)printf("notexit");}【1】break[2]i==11或i>=11.下面程序的功能是打印 100以內個位數為6且能被3整除的所有數。請填空。#include"stdio.h"voidmain(){inti,j;for(i=0;【1];i++){j=i*10+6;if( 【2】)continue;printf(“%d",j);}}[1]i<=9[2]j%3!=015.下面程序的功能是計算 1到20之間的奇數之和偶數之和。請填空。#include"stdio.h"voidmain(){inta,b,c,i;a=c=0;for(i<=10;i+=2){a+=i; 【1];c+=b;}printf("偶數之和:%d\n",a);printf(“奇數之和:%d\n",c-21);}[1]b=i+1第4章函數及預處理命令一、填空題.以下敘述正確的是(A)A.構成C語言的基本單位是函數B.可以在一個函數中定義另一個函數C.main()函數必須放在其他函數之前D.所有被調用之前進行定義.以下敘述中錯誤的是(D)A.C語言必須由一個或一個以上的函數組成B.函數調用可以作為一個獨立的語句存在C.若函數形參的值也可以傳回給對應的實參.調用一個函數,此函數中沒有return語句,則該函數(D)A.沒有返回值B.返回若干個系統默認值C.能返回一個用戶所希望的函數值D.返回一個不確定的值.C語言規定,函數返回值的類型是由(D)A.return語句中的表達式類型所決定B.調用該函數時的主調函數類型所決定C.調用該函數時系統臨時決定D.在定義該函數時所指定的函數類型所決定.以下程序的輸出結果是(B)TOC\o"1-5"\h\z#include"stdio"voidfun(){inta,b;a=100;b=200;}main(){inta=5,b=7;fun();printf("%d%d,a,b;}A.100200 B.57 C.200100 D.75.以下函數調用語句中包含有(B)個實參。fun((exp1,exp2),(exp3,exp4,exo5));A.1 B.2 C.4 D.5.以下程序的輸出結果是(C)fun(inta,intb,intc){c=a*a+b*b;}main(){intx=22;fun(4,2,x);printf( "%d",x);}A.20 B.21 C.22 D.23.有如下程序:intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);printf("%d\n",r);}該程序的輸出結果是(D)A.12 B.13 C.14 D.15.以下程序的輸出結果是(A)#include<stdio.h>longfun(intn){longs;if(n==1||n==2)s=2;elses=n-fun(n-1);returns;}main(){printf("%d\n",婦女(3));}A.1 B.2 C.3 D.4.以下程序的輸出結果是(C)#include“stdio.h"voidfunc1(inti);voidfunc2(inti);charst[]= "hello,friend”;voidfunc1(inti){printf("%c”,st[i]);if(i<3){i+=2;func2(i);}}voidfunc2(inti);{printf("%c",st[i]);if(i<3){i+=2;func1(i);}}main(){inti;i=0;func1(i);printf("\n";}A.helloB.helC.hloD.hlrn.C語言中形參的默認存儲類別是(A)A.自動(auto) B.靜態(static)B.寄存器(register) D.外部(exter).關于全局變量,下列說法正確的是(D)A.本程序的全部范圍B.離定義該變量的位置最接近的函數C.函數內部范圍D.從定義該變量的位置開始到本文件結束.以下程序輸出結果是(D)#include“stdio.h"intf(){staticinti=0;ints=1;s+=i;i++;returns;}main(){inti,a=0;for(i=0;i<5;i++)a+=f();printf( "%d\n",b);}A.20 B.24 C.25 D.15.以下程序的輸出結果是(D)#include<stdio.h>voidfun1(){intx=0;x++;printf("%d",x);}voidfun2(){staticintx;x++;printf("%d",x);}main(){intj;for(j=0;j<3,j++){fun2();fun1();}}A.1,1,1,1,1,1 B.1,1,1,1,2,3 C.1,1,2,2,3,3 D.1,1,2,1,3,1.以下程序的輸出結果是(B)#include<stdio.h>intm=3;main(){intfun(intk);intm=10;printf("%d'n”,fun(5)*m);}intfun(intk){if(k==0)returnm;return(fun(k-1)*k);}A.360 B.3600 C.1080 D.1200.以下程序的輸出結果是()#include<stdio.h>intd=1;fun(intp){staticintd=5;d+=p;prntf("%d”,d);return(d);}main(){inta=3;printf("%d\n",婦女(a+fun(d)));}A.699B.669 C.61515 D.6615.以下有關宏替換的敘述不正確的是( D)A.宏替換不占用運算時間 B.宏名無類型C.宏替換只是字符替換 D.宏名必須用大寫字母表示.在宏定義#definePI3.14159中,用宏名PI代替一個(D)A.常量 B.單精度數 C.雙精度數 D.字符串.以下程序的輸出結果是(D)#include<stdio.h>#defineM(x,y,z)x*y+zmain(){inta=1,b=2,c=3;printf( "%d\n",M(a+b,b+c,c+a));}TOC\o"1-5"\h\zA.19 B.17 C.15 D.12.以下程序的輸出結果是(B)#include<stdio.h> #define SQR(x)x*x main(){inta=16,k=2,m=1;a=(k+a)/SQR(k+m);printf( "%d\n",a);}A.16 B.12 C.9 D.1.有如下程序:#include<stdio.h>#defineN2#defineMN+1#defineNUM2*M+1main(){printf( "%d",NUM);}A.5 B.6 C.7 D.8.以下程序的輸出結果是(C)#include<stdio.h>#define(x)x*xmain(){inta=6,b=2,c;c=f(a)/f(b);printf( "%d",c);}A.9 B.6 C.36 D.18.若有以下宏定義:#defineN2#defineY(n)((N+1)*n)則執行語句:z=2*(N+Y(5));后的結果是(B)A.語句有錯誤B.z=34 C.z=70D.z無定值.若有宏定義:#defineMOD(x,y)x%y則執行以下語句后的輸出結果為(B)intz,a=15,b=100;z=MOD(b,a);printf("%d”,z++);A.11 B.10C.6D.宏定義不合法.以下程序的運行結果是(C)#include<stdio.h>#defineMAX(a,b)(a)>(b)(a):(a)#definePRINT(Y)printf("Y=%d\t",Y)main(){inta=1,b=2,c=3,d=4,t;t=MAX(a+b,c+d);PRINT (t);}A.Y=3 B.存在語法錯誤 C.Y=7 D.Y=0.請讀程序:#include<stdio.h>#define"stdio.h“#defineMUL(x,y)(x)*ymain(){inta=3,b=4,c;c=MUL(a++,b++);printf( "%d",c);}上面程序的輸出結果是(A)A.12 B.15 C.20 D.16.對下面程序段:#defineA3#defineB(a)(A+1)*a)x=3*(A+B(7));正確的判斷是(B)A.程序出錯,不允許嵌套宏定義B.x=93C.x=21D.程序出錯,宏定義不允許有參數.允許程序輸出結果是(B)#include<stdio.h>#definePT5.5#defineS(x)PT*x*xmain(){inta=1,b=2;printf("%4.1f”,S(a+b));}A.12.0 B.9.5 C.12.5 D.33.5.允許正確的描述是(C)A.C語言預處理功能是指完成宏替換和包含文件的調用B.預處理指令只能位于 C源程序文件的首部C.凡是C源程序中行首以“#"標識的控制都是預處理指令D.C語言的編譯預處理就是對源程序進行初步的語法檢查.若有以下調用語句,則不正確的 fun函數的首部是(D)main(){...inta[50],n;fun(n,&a,[9]);...}A.voidfun(intm,intx口) B.voidfun(ints,inth[41])C.voidfun(intp,int*s) C.voidfun(intn,inta)二、填空題.以下程序的功能是根據輸入的“y”(“Y”)與“n”(“N”),在屏幕上分另?J顯示出“ThisisYES”與“ThisisNO”。請填空。#include<stdio.h>voidYesNo(charch){switch(ch){case'y':casw'Y':printf("\nThisisYES.\n");【1】;case'n':case'N':printf("\nThisisNO.\n");}}(){charch;printf("\nEnterachar'y','Y','n',‘N':");ch=;[2]printf("ch:%c”,ch);YesNo(ch);}【1】_break[2]getchar().以下Check函數的功能是對value中的值進行四舍五入計算,若計算后的值與 ponse值相等,則顯示“WELL,DONE!!",否則顯示計算后的值。已有函數調用語句Check(ponse,value)。請填空。voidCheck(intponse,floatvalue){intval;val=[1】;printf("計算后的值: %d”,val);if([2])printf("\nWELLDONE!!\n");elseprintf("\nSorrythecorrectansweris%d\n”,val);}[1]_(int)((value*10+5)/10)⑵ponse==val.已有函數pow,現要求取消變量i后pow函數的功能不變。請填空。修改前的pow函數:pow(intx,inty){inti,j=1;for(i=1;i<=y;++i)j=j*xreturn(j);}修改后的pow函數:pow(intx,inty){intj;for(【1】;【2】;【3】)j=j*x;return(j);}【1】j=1[2]y>=1[3]y--.以下程序的功能是求三個數的最小公倍數。請填空。max(intx,inty,intz){if(x>y&&x>z)return(x);elseif(【1】)return(z);}main(){intx1,x2,x3,i=1,j,x0;printf( "Input3number:");scanf("%d%d%d”,&x1,&x2,&x3);x0=max(x1,x2,x3);while(1){j=x0*i;if([ 【2])break;i=i+1;}printf("Thisis%d%d%dzuixiaogongbeishuis%d\n”,x1,x2,x3,j);}【1】y>x&&y>z【2】j%x1==0&&j%x2==0&&j%x3==0.函數gongyu的作用是求num1和num2的最大公約數,并返回該值。gongyu(intnum1,intnum2){inttemp,a,b;if(num1[ 1 ]num2){temp=num1;num1=num2;num2=temp;}a=num1;b=num2;while([2]){temp=a%b;a=b;b=temp;}return(a);}[1]<[2]b!=0.以下程序的功能是用遞歸法計算學生的年齡,已知第一位學生年齡最小,為 10歲,其余學生一個比一個大2歲,求第五個學生的年齡。age(intn){intc;if(n==1)c=10;elsec=【1】;retrn(c);}main(){intn=5;printf("age:%d\n",[2]);}【1】age(n-1)+2[2]age(5).C語言提供了三種預處理命令,它們是宏定義、文件包含和條件編譯.設有以下宏定義:#defineWIDTH80#defineLENGTHWIDTH+40 則執行賦值語句: v=LENGTH820;后(v為int型變量),v的值是880。.以下程序的輸出結果是 12。#defineMUN(z)(z)*(z)main{printf("%d,MUN(1+2)+3);}.設有以下程序,為使之正確運行,請在[]處填入應包含的命令行。 (try-me()函數在a:\mylife.txt中有定義。)【1】main(){printf("\n");try-me();printf("\n");}【1】#include"a:\mylife.txt”.設有以下程序,為使之正確運行,請在口中填入應包含的命令行。【1】main(){intx=2,y=3;printf( "%d”,pow(x,y));}【1】#include"math.h".以下的程序是選出能被 3整除且至少有一位數是 5的兩位數,打印出所有這樣的數及其個數。sub(intk,intn){inta1,a2;a2= 【 1 】 ; a1=k- 【 2 】 ;if((k%3==0&&a2==5)||(k%3==0&&a1==5)){printf( "%d”,k);n++;returnn;}elsereturn-1;}main(){intn=0,i,m;for(i=10;i<=99;i++){m=sub(i,n);if(m!=-1)n=m;}printf( "\nn=%d",n);}[1]k/10[2]a2*10.下面add函數

溫馨提示

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

評論

0/150

提交評論