2021c語言練習試題庫_第1頁
2021c語言練習試題庫_第2頁
2021c語言練習試題庫_第3頁
2021c語言練習試題庫_第4頁
已閱讀5頁,還剩183頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2021c語言練習試題庫C語言練習試題庫1#include"stdio.h"main(){charc;c=get);whiIe(c!=,?'){putc);c=get);}}如果從鍵盤輸入abcde?fgh(回車)運行結果為:abcde#includemain(){charc;whiIe((c=get))!=’$'){if('A'<=c&&c<=2)putc);elseif('a'<=c&&c<=*z')putc-32);})當輸入為ab*AB%cd#CD$時,運行結果為:ABABCDCD#include

main(){intx,y=0;for(x=1;x<=10;x++){if(y>=10)break;y=y+x;}printf(w%d%d”,y,x);}運行結果為:105詳見教材p120for語句詳見教材p126?128break,continue語句for(表達式1;表達式2;表達式3)(}(1)先求解表達式1(2)求解表達式2,若其值為真,執(zhí)行循環(huán)體,然后執(zhí)行(3).若為假,則結束循環(huán),轉到(5)(3)求解表達式3(4)轉回上面(2)繼續(xù)執(zhí)行(5)循環(huán)結束,執(zhí)行for語句下面的ー個語句break,跳出循環(huán)體;continue,結束本次循環(huán)(第i次循此題表達式1為x=1,表達式2(循環(huán)條件)為xく=10,表達式3為x++初值x為1,y為0,循環(huán)條件(即表達式2)xく=10成立,進入循環(huán)體第1次循環(huán)執(zhí)行if語句。。小于10,if語句的條件表達式不成立,不執(zhí)行break;執(zhí)行y=y+x;y=0+1=1轉向表達式3,執(zhí)行x++,x=x+1=1+1=2。循環(huán)條件xく=10成立,進入第2次循環(huán)第2次循環(huán)執(zhí)行if語句。1小于10,if語句的條件表達式不成立,不執(zhí)行break;執(zhí)行y=y+x;y=1+2=3轉向表達式3,執(zhí)行x++,x=x+1=2+1=3。循環(huán)條件xく=10成立,進入第3次循環(huán)第3次循環(huán)執(zhí)行if語句。3小于10,if語句的條件表達式不成立,不執(zhí)行break;執(zhí)行y=y+x;y=3+3=6轉向表達式3,執(zhí)行x++,x=x+1=3+1=4。循環(huán)條件xく=10成立,進入第4次循環(huán)第4次循環(huán)執(zhí)行if語句。6小于10,if語句的條件表達式不成立,不執(zhí)行break;執(zhí)行y=y+x;y=6+4=10轉向表達式3,執(zhí)行x++,x=x+1=4+1=5。循環(huán)條件xく=10成立,進入第5次循環(huán)第5次循環(huán)執(zhí)行if語句。10等于10,if語句的條件表達式成立,執(zhí)行break,跳出循環(huán)。從break跳出至for語句的下一條語句。執(zhí)行printf(a%d%d”,y,x);輸出當前的y與x.結果為105#includemain(){charch;ch=get);switch(ch)(case’人’:printf("%c",'A');case'B':printf(“%c”,'B');break;default:printf(w%s","other”);

}}當從鍵盤輸入字母A時,運行結果為:AB詳見教材p103,switch語句switch(表達式){case常量1:語句1case常量2:語句2case常量n:語句ndefault:語句n+1}其中表達式,常量1,…,常量n都為整型或字符型case相當于給出執(zhí)行程序的入口和起始住置,若找到匹配的常量,則從此處開始往下執(zhí)行程序,不再匹配常量,直至遇到break或switch結束本題過程:首先從鍵盤接收ー個字符'A,并將其放在變量ch中。執(zhí)行switch語句。Switch后面的條件表達式為ch,因此表達式的值即為字符‘A'.用字符'A,依次與下面的case中的常量四配。與第1個case后的常量四配,則從其后的語句開始往下執(zhí)行程序(在執(zhí)行過程中不再進行四配。)因此先執(zhí)行printf(a%c",'A'),屏幕上輸出A;再往下繼續(xù)執(zhí)行

printf("%c",'B'),屏幕上輸出B;再繼續(xù)執(zhí)行break,此時跳出switch語句。#includemain(){inta=1,b=0;scanf("%d",&a);switch(a)(case1:b=1;break;case2:b=2;break;default:b=10;}printf("%d",b);)若鍵盤輸入5,運行結果為:10本題過程:首先用scanf函數(shù)為變量a賦值為5。執(zhí)行switch語句。switch后面的條件表達式為a,因此表達式的值即為5.用5依次與下面case中的常量四配。沒有找到匹配的常量,因此兩個case后的語句都不執(zhí)行。執(zhí)行default后面的語句b=10;將!0賦給變量bo輸出變量b,結果為!06.

#includemain()_{chargradeゴC';switch(grade)Icase'A':printf(a90-100n);case,B':printf(a80-90n);case'C':printf(“70-80n);case'D':printf(“60-70”);break;case'E':printf("く60”);default:printf(error!”);))運行結果為:70-8060-70本題過程:首先從鍵盤接收一個字符‘C,并將其放在變量grade中。執(zhí)行switch語句〇switch后面的條件表達式為grade,因此表達式的.值即為字符’C',用字符'C,依次與下面的case中的常量匹配。與第3個case后的常量四配,則從其后的語句開始往下執(zhí)

行程序(在執(zhí)行過程中不再進行四配。)因此先執(zhí)行printf(rt70-80”);,屏幕上輸出70-80,并換行;再往下繼續(xù)執(zhí)行printf(“60-70”),屏幕上輸出60-70,并換行;再繼續(xù)執(zhí)行break,此時跳出switch語句。#includemain(){inty=9;for(;y>0;y)if(y%3==0){printf(%dw, y);))運行結果為:852詳見教材p53,自增自減符號此題表達式1被省略,表達式2(循環(huán)條件)為y>0,表達式3為y—初值y為9,循環(huán)條件(即表達式2)y>0成立,進入循環(huán)體第1次循環(huán)執(zhí)行if語句。9%3==0,if語句的條件表達式成立,執(zhí)行printf(%d”, y),即y先自減1變?yōu)?,然后在輸出,因此

屏幕上輸出8轉向表達式3,執(zhí)行y—,y=y-1=8-1=7o循環(huán)條件y>0成立,進入第2次循環(huán)第2次循環(huán)執(zhí)行if語句。7%3不為0,if語句的條件表達式不成立,不執(zhí)行printf務d”,y)轉向表達式3,執(zhí)行y—,y=y-1=7-1=6,?循環(huán)條件y>0成立,進入第3次循環(huán)第3次循環(huán)執(zhí)行if語句。6%3==0,if語句的條件表達式成立,執(zhí)行printf(%dw,--y),即y先自減1變?yōu)?,然后在輸出,因此屏幕上輸出5轉向表達式3,執(zhí)行y—,y=y-1=57=4。循環(huán)條件y>0成立,進入第4次循環(huán)第4次循環(huán)執(zhí)行if語句。4%3不為〇,if語句的條件表達式不成立,不執(zhí)行printf(%d”, y)轉向表達式3,執(zhí)行y—,y=4-1=3。循環(huán)條件y>。成立,進入第5次循環(huán)第5次循環(huán)執(zhí)行if語句。3%3=0,if語句的條件表達式成立,執(zhí)行printf(%dw-y),即y先自減1變?yōu)?,然后在輸出,因此

屏幕上輸出2轉向表達式3,執(zhí)行v—,y=y_!=2_1=!〇循環(huán)條件y>0成立,進入第5次循環(huán)第6次循環(huán)執(zhí)行if語句。1%3不為0,if語句的條件表達式不成立,不執(zhí)行printf魏d”, y)轉向表達式3,執(zhí)行y—,y=1-1=0。循環(huán)條件y>0不成立,循環(huán)結束。#includemain()(inti,sum=0;i=1;do{sum=sum+i;i++;}whiIe(i<=10);printf(a%dw,sum);}運行結果為:55#include#defineN4main(){inti;intx1=1,x2=2;

printf("");for(i=1;i<=N;i++){printf("%4d%4d",x1,x2);if(i%2==0)printfC");x1=x1+x2;x2=x2+x1;}}運行結果為:12358132134此題首先為整型變量賦初值x1=1,x2=2表達式1為i=1,表達式2(循環(huán)條件)為<=N即iく=4,表達式3為i++循環(huán)變量初值i為1,循環(huán)條件(即表達式2)iく=4成立,進入第1次循環(huán)第1次循環(huán)執(zhí)行printf("%4d%4d",x1,x2);因此屏幕上輸出12執(zhí)行if語句。1%2不為〇,if語句的條件表達式不成立,不執(zhí)行printfCn);執(zhí)行x1=x1+x2=1+2=3;此時x1中的值已變?yōu)?

執(zhí)行x2=x2+x1=2+3=5〇轉向表達式3,執(zhí)行i++,i為2〇循環(huán)條件iく=4成立,進入第2次循環(huán)第2次循環(huán)執(zhí)行printf("%4d%4d",x1,x2);因此屏幕上輸出35執(zhí)行if語句。2%2=0,if語句的條件表達式成立,執(zhí)行printf("り;換行執(zhí)行x1=x1+x2=3+5=8;此時x1中的值已變?yōu)?執(zhí)行x2=x2+x1=5+8=13o轉向表達式3,執(zhí)行i++,i為3。循環(huán)條件iく=4成立,進入第3次循環(huán)第3次循環(huán)執(zhí)行printf("%4d%4d",x1,x2);因此屏幕上輸出813執(zhí)行if語句。3%2不為0,if語句的條件表達式不成立,不執(zhí)行printf("り;執(zhí)行x1=x1+x2=8+13=21;此時x1中的值已變?yōu)?1執(zhí)行x2=x2+x1=21+13=34。轉向表達式3,執(zhí)行i++,i為4〇循環(huán)條件i<=4成立,進入第4次循環(huán)第2次循環(huán)執(zhí)行printf("%4d%4d",x1,x2);因此屏幕上輸出2134執(zhí)行if語句。4%2=0,if語句的條件表達式成立,執(zhí)行

printf("り;換行執(zhí)行x1=x1+x2=21+34=55;此時x1中的值已變?yōu)?5執(zhí)行x2=x2+x1=34+55=89o轉向表達式3,執(zhí)行i++,i為5〇循環(huán)條件i<=4不成立,結束循環(huán)10incIudemain()Iintx,y;for(x=30,y=0;x>=10,y<10;x--,y++)x/=2,y+=2;printf(ax=%d,y=%dw,x,y);)運行結果為:x=0,y=1211.includedefineN4main(){inti,j;for(i=1;i<=N;i++){for(j=1;jprintf("");printf("*");

))運行結果為:****詳見教材P41符號常量用宏處理指令定義符號常量N為4,在編譯過程中,遇到N即視為整數(shù)4。外層for循環(huán),表達式1為i=1,表達式2(循環(huán)條件)為i〈二N,表達式3為i++內(nèi)層for循環(huán),表達式1為j=1,表達式2(循環(huán)條件)為j首先計算外層循環(huán)的表達式1,i為1,使得循環(huán)條件<=4成立,進入外層for循環(huán)體外層for循環(huán)第1次此時i為1內(nèi)層循環(huán)戶1,使得循環(huán)條件j 執(zhí)行printfC'*");執(zhí)行printf("り;換行至此外層循環(huán)體執(zhí)行完,計算外層循環(huán)的表達式3,i++,此時i為2.使得循環(huán)條件i<=4成立,再次進入外層for循環(huán)體外層for循環(huán)第2次此時i為2

內(nèi)層循環(huán)j=1,使得循環(huán)條件j第1次執(zhí)行內(nèi)層循環(huán)體printfC");執(zhí)行內(nèi)層循環(huán)表達式3,j++為2,j執(zhí)行printfC'*");執(zhí)行printfC'");換行至此外層循環(huán)體執(zhí)行完,計算外層循環(huán)的表達式3,i++,此時i為3.使得循環(huán)條件i<=4成立,進入外層for循環(huán)體外層for循環(huán)第3次此時i為3內(nèi)層循環(huán)戶1,使得循環(huán)條件j第1次執(zhí)行內(nèi)層循環(huán)體printfC");執(zhí)行內(nèi)層循環(huán)表達式3,j++為2,j第2次執(zhí)行內(nèi)層循環(huán)體printfC");執(zhí)行內(nèi)層循環(huán)表達式3,j++為3,j執(zhí)行printfC'*");執(zhí)行printfC");換行至此外層循環(huán)體執(zhí)行完,計算外層循環(huán)的表達式3,i++,此時i為4.使得循環(huán)條件i<=4成立,進入外層for循環(huán)體外層for循環(huán)第4次此時i為4內(nèi)層循環(huán)戶1,使得循環(huán)條件j第1次執(zhí)行內(nèi)層循環(huán)體printfC");執(zhí)行內(nèi)層循環(huán)表達式3,j++為2,j第2次執(zhí)行內(nèi)層循環(huán)體printfC");

執(zhí)行內(nèi)層循環(huán)表達式3,j++為3,j第3次執(zhí)行內(nèi)層循環(huán)體printfぐ");執(zhí)行內(nèi)層循環(huán)表達式3,j++為4,j執(zhí)行printf("*");執(zhí)行printf("");換行至此外層循環(huán)體執(zhí)行完,計算外層循環(huán)的表達式3,i++,此時i為5.使得循環(huán)條件i<=4不成立,跳出外層for循環(huán)體c語言練習試題庫2單項選擇題1.有charc=’1',下面說法中正確的是( )。A.語句putc+2);的輸出結果為51B.語句put“%d”,c+2);的輸出結果為3C.語句put“%c”,c+2);的輸出結果為51D.語句put“%c”,c+2);的輸出結果為3.設c1,c2均是char型變量,則下面不正確的函數(shù)調(diào)用為()〇scanf("c1=2=%cw,&c1,&c2);get);putc2);putd,c2);.為了表示關系x>=y>=z,下面C語言表達式中正確的是

(x>=y)&&(y>=z)(x>=y)and(y>=z)(x>=y>=z)(x>=y)&(y>=z).設x,y,z,t為int型變量,則執(zhí)行以下語句后,t的值為()〇x=y=z=1;t=++x||++y&&++z;A,不定值2105.對if語句中表達式的類型,下面正確的說法是( )。A.必須是關系表達式B.必須是關系表達式或邏輯表達式C.可以是任意表達式D,必須是關系表達式或算術表達式.對for(表達式1;;表達式3)可以理解為( ).for(表達式1;0:表達式3)for(表達式1:表達式1;表達式3)for(表達式1;1;表達式3)for(表達式1:表達式3;表達式3)

.執(zhí)行語句for(i=1;i++く4;);之后,變量i的值為( )0345D,不確定.若二維數(shù)組a有m列,則在a[i]口]前的元素個數(shù)為()〇i*m+ji*m+j-ii*m+j+1.下面說法中正確的是( )。A.在C語言中,可以使用動態(tài)內(nèi)存分配技術,定義元素個數(shù)可變的數(shù)組B,在C語言中,數(shù)組元素的個數(shù)可以不確定,允許隨即變動C.在C語言中,數(shù)組元素的數(shù)據(jù)類型可以不一致D,在C語言中,定義數(shù)組后,就確定了它能容納的相同數(shù)據(jù)類型元素的個數(shù).不能把字符串:“good!”賦給數(shù)組b的語句是( )。charb[10]={,g',’〇’,‘〇','d','!');

charb[10];b="good!”;charb[10];strcpy(b,“good!");charb[10]="good!”;11.執(zhí)行下面程序段,給x,y賦值時,不能作為數(shù)據(jù)分隔符的是( )。intx,y;scanf(w紀%d”,&x&y):A,回車B.Tab鍵C,回車D.逗號.已知ch是字符型變量,下面不正確的賦值語句為()〇ch='a+b';ch='';ch='7'+'9';ch=5+9;.下面程序段的輸出結果是( )。charc1='6',c2='O';printf("%c,%c,%d,%d",c1,c2,c1-c2,c1+c2);A,因輸出格式不合法,輸出出錯信息6,0,6,102

6,0,7,66,0,5,7.在C語言的循環(huán)語句for,whiIe,dowhiIe中,用于直接中斷最內(nèi)層循環(huán)的語句是( ).switchcontinuebreakif.下面的循環(huán)結構中,不是無限循環(huán)的是( ).for(i=1;;i++)printf(“%d”,i—);i=1;while(iーー){printf(w%dw,i++);)i=1;do{printf("%d”,i);i++;}whiIe(ーーi);for(i=0;i;i++)printf("%d”,i);.下面程序段的運行結果是( ).charc口="wi11";printf("%d",strlen(c));1439D,字符串中有非法字符,輸出值不確定.下面說法中正確的是:在C語言程序中( ).A.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套

B.函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套C.函數(shù)的定義和調(diào)用均不可以嵌套D,函數(shù)的定義和調(diào)用均可以嵌套.若用數(shù)據(jù)名作為函數(shù)調(diào)用的實參,傳遞給形參的是()〇A.數(shù)據(jù)的首地址B,數(shù)組第一個元素的值C.數(shù)組中全部元素的值D,數(shù)組元素的個數(shù).以下敘述中不正確的是( ).A,在不同的函數(shù)中可以使用相同名字的變量B,函數(shù)中的形式參數(shù)是局部變量C,在ー個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效D.在ー個結函數(shù)內(nèi)的符合語句中定義的變量在本函數(shù)范圍內(nèi)有效.ー個變量的指針是指( ).A.該變量的值B.該變量的地址C.該變量的變量名D.該變量的標志21.若有定義:inta[10],*p=a;,則p+5表示(A.元素a[5]的地址

B.元素a[5]的值C.元素a[6]的地址D.元素a[6]的值C語言規(guī)定,在ー個源程序中,main函數(shù)的位置( )0A,必須在最開始B,必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C,可以任意D,必須在最后ー個C語言程序是由( )。A,ー個主程序或若干個子程序組成B.函數(shù)組成C.若干過程組成D,若干個子程序組成24.下面哪項是構成C語言的基本單位( )0A.函數(shù)B.過程C.子程序D.子例程25.以下正確的說法是( )。A,定義函數(shù)時,形參的類型說明可以放在函數(shù)體內(nèi)return后邊的值不能為表達式

C?如果函數(shù)值的類型和返回值類型不一致,以函數(shù)值類型為準D,如果形參與實參的類型不一致,以函數(shù)值類型為準26.對于基類型相同的兩個指針變量之間,不能進行的運算是( )。A,くB.=+D.-27.變量的指針,其含義是指該變量的( ).A,值B.地址C.名一?個標志.下面程序運行的結果是( ).voidss(char*s,chart){while(*s){if(*s==t)*s=t-匕'+'A';s++;}}voidmain()

{charstr1[100]=wabcddfefdbdw,c=,d';ss(str1,c);printf(a%s”,str1);}ABCDDFEFDBDabcDDfefDbDabcAAfefAbAAbcddfefdbd.下列說法中正確的.是( ).A.結構體變量可以作為ー個整體進行其值得輸入和輸出結構體成員項不可以是結構體C.結構體成員項可以是結構體或其他任何C語言的數(shù)據(jù)類D.結構體變量和結構體是相同的概念.下面說法中不正確的是( ).ー個C源程序可有一個或多個函數(shù)組成ー個C源程序必須包哈"一個main函數(shù)C程序的基本組成是函數(shù)D.在C程序中,注釋語句只能位于一條語句的后面.若執(zhí)行下面的程序段,則下面描述中正確的是( )。intk=5;while(k=1)k—;

A.while循環(huán)執(zhí)行四次B,循環(huán)體執(zhí)行一次C.循環(huán)體ー次也不執(zhí)行D,死循環(huán).下面關于for循環(huán)的正確描述是( )。for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況for循環(huán)中是先執(zhí)行循環(huán)體語句,后判斷表達式C.在for循環(huán)中,不能用break語句跳出循環(huán)D.for循環(huán)的循環(huán)體可以包含多條語句,但必須用花括號括起來33,不正確的定義語句是( ).doublex[5]={2.0,4.0,6.0,8.0,10.0};inty[5]={0,1,3,5,7,9};0.charc1ロ=f1','2','3','4','5'};D.charc2[]={*x10','xOa','x08");34.下面是對s的初始化,其中不正確的是( ).chars[5]={"abc"};chars[5]={&,,b,,,c,};0.chars[5]=ww;D.chars[5]=wabced";.下面程序段的運行結果是( ).charc[5]={ゝ','b',',,,グ,,,};printf(a%sw,c);&,b,ababcabc.以下說法中正確的是( )〇A.C語言程序總是從第一個定義的函數(shù)開始執(zhí)行B,在C語言程序中,要調(diào)用的函數(shù)必須在main函數(shù)中定義C語言程序總是從main函數(shù)開始執(zhí)行C語言程序中的main函數(shù)必須放在程序的開始部分.下列常量中,合法的C常量是( ).“x-y”'105''Be'07ff.下面程序的輸出結果是( ).voidmain(inti=011,j=11;printf("%d,%d",++i,j--);}

12,1011,1110,9.下面程序的執(zhí)行結果為( ).voidmain0(intx=20,y;y=++x;y+=x;printf(w%d,"y);y=x-; y+=x;printf(w%d,"y);)42,4142,4240,4142,40.下面程序的輸出結果是( ).voidmain(){inti=010,j=10;printf("%d,%d”,i++,++j);}A.10,11

8,118,10.能正確表示a和b同時為正或同時為負的表達式是()〇(a>=0||b>=0)&&(a<01|b<0)(a>=0||b>=0)&&(a<0&&b<0)(a+b>0)&&(a+|b<0)a*b>0.以下關于運算符優(yōu)先順序的描述中正確的是( )。A,關系運算符く算術運算符く賦值運算符く邏輯運算符B.邏輯運算符く關系運算符く算術運算符く賦值運算符C.賦值運算符く邏輯運算符く關系運算符く算術運算符D,算術運算符く關系運算符く賦值運算符く邏輯運算符43.下面程序的運行結果是( ).voidmain(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(a%d,%d”,a,b);}A.6,16,02,0.若有條件表達式(exp)?a++:b—,則以下表達式中完全等價于表達式(exp)的是( )。(exp==0)(exp!=0)(exp==1)(exp!=1).程序段如下,則正確的執(zhí)行結果是( )。intk=0;while(k++<=2);printf(a%d”,k);234D,無結果.下面說法中正確的是( ).A,在C語言函數(shù)中,必須有形參B,在C語言函數(shù)中,形參必須是變量名C.在C語言函數(shù)中,可以有也可以沒有形參D.在C語言函數(shù)中,數(shù)組名不能做形參.下面說法正確的是,在C語言中(

A.實參和與其對應的形參各占用獨立的存儲單元B.實參和與其對應的形參共占用ー個存儲單元C,只有當實參和與其對應的形參同名時オ共占用存儲單元D,形參是虛擬的,不占用存儲單元.下面不正確的說法是:C語言規(guī)定( )0A.實參可以是常量、變量或表達式B,形參可以是常量、變量或表達式C.實參傳遞給形參時,要求實參必須有確定的值D,形參應與其對應的實參類型可以不一致.C語言允許函數(shù)值類型缺省定義,此時函數(shù)值隱含的類型是( )。float型int型long型double型若有以下定義:chars[10]="include“,*p=s;,則不能代表字符‘u’的表達式為().s[4]s+4*(p+4)p+=4,*p;C語言規(guī)定,簡單變量做實參時,它和對應形參之間的

數(shù)據(jù)傳遞方式是(A.地址傳遞B.單向值傳遞C,由實參傳給形參,再由形參傳給實參D.由用戶指定傳遞方式C語言規(guī)定,函數(shù)返回值的類型是由( ).A.return語句中的表達式類型所決定B.調(diào)用該函數(shù)時的主調(diào)函數(shù)類型所決定C.調(diào)用該函數(shù)時系統(tǒng)臨時決定D,在定義該函數(shù)時所指定的函數(shù)類型所決定53.若有int*p,a[10];p=a;,則下列寫法不正確的是()〇.p=a+2.a++.*(a+1)p++.若用數(shù)組名作為函數(shù)調(diào)用的實參,傳遞給形參的是()〇A,數(shù)組的首地址B,數(shù)組第一個元素的值C.數(shù)組中全部元素的值D.數(shù)組元素的個數(shù)

.若使用以為數(shù)組名作函數(shù)實參,則下面說法中正確的是( )0A.在被調(diào)函數(shù)中,與該實參相對應的形參必須是同類型的數(shù)組名或指針變量B.實參數(shù)組類型與形參數(shù)組類型可以不匹配C,在被調(diào)函數(shù)中,不需要考慮形參數(shù)組的大小D.實參數(shù)組名與形參數(shù)組名必須一致.設p1、p2是指向同一個字符串的指針變量,c為字符變量,則不能正確執(zhí)行的賦值語句為( )。c=*p1+*p2;p2=c;p1=p2;c=(*p1)*(*p2);.若有一下結構體定義,則正確的引用和定義是()〇structexampIe{intx;inty;}v1;example.x=10examplev2;v2.x=10;structv2; v2.x=10;structexampIev2={10,5);.說明一個結構體變量時,系統(tǒng)分配給它的內(nèi)存是()〇

A,各成員所需內(nèi)存量的總和B.結構體中第一個成員所需內(nèi)存量C,成員中占內(nèi)存量最大者所需的容量D.結構體中最后一成員所需內(nèi)存量.在C語言中,文件由下面拿個組成( )0A.記錄B,數(shù)據(jù)行C.數(shù)據(jù)塊D,字符(字節(jié))序列.下面程序段的運行結果是( )。charc[]=wwi11”;printf(a%dstrlen(c));1439D.字符串中有非法字符,輸出值不確定61,以下敘述中不正確的是( )。A.在不同的函數(shù)中可以使用相同名字的變量B.函數(shù)中的形式參數(shù)是局部變量C.在ー個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效D.在ー個結函數(shù)內(nèi)的符合語句中定義的變量在本函數(shù)范圍

62.ー個變量的指針是指(A.該變量的值B.該變量的地址C.該變量的變量名D.該變量的標志c語言練習試題庫3ー選擇題(7分,每小題0.5分).C語言源程序的基本單位是()。A過程B函數(shù)C子程序D標識符.下列程序的輸出結果是()。main(){inta=7,b=5;printf("%d",b=b/a);)A5B1C0D不確定值.假設變量a,b均為整型,表達式(a=5,b=2,a>b?a++:b++,a+b)的值是()〇A7B8C9D2.設a為int型變量,執(zhí)行下列賦值語句后,a的取值分別是()。a=125.534;a=(int)125.521%4;a=5?2;A125,31,1B125,1,20C125,31,20D125.534,2,20

.設有如下程序段,下面描述中正確的是()。intk=10;while(k=0)k=k-1;A循環(huán)執(zhí)行ー次B循環(huán)是無限循環(huán)C循環(huán)體語句ー次也不執(zhí)行D循環(huán)體語句執(zhí)行ー次.以下程序的輸出結果為()。inti;voidprt(){for(i=5;i<8;i++)printf("%c",printfC");}main()(for(i=5;i<=8;i++)prt();)A——d士————★ ハーを?をn**★—1,*■'ロ —1' *|**|*?|*I. =???????-II*T**T**T*.在C語言程序中,以下說法正確的是()。A函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套C函數(shù)的定義和函數(shù)的調(diào)用都不可以嵌套D函數(shù)的定義和函數(shù)的調(diào)用都可以嵌套.以下函數(shù)調(diào)用語句中含有()個實參。func((e1,e2),(e3,e4,e5));A2B3C5D語法錯誤

.以下程序的輸出結果為()。#defineADD(x)x*xmain(){inta=4,b=6,c=7,d=ADD(a+b)*c;printf("d二%d",d);}Ad=70Bd=80Cd=140Dd=700.已知職エ記錄描述如下,在TurboC中,系統(tǒng)為變量w分配()字節(jié)的空間。structworker{intno;charname[20];charsex;union{intday;intmonth;intyear;)birth;}w;A29B20C25D6.設有以下定義,值為5的枚舉常量是()。enumweek{sun,mon=4,tue,wed,thu,fri,sat}w;AtueBsatCfriDthu.下面選項中正確的賦值語句是(設chara[5],*p=a;)()〇

Ap="abcd";Ba="abcd";C*p="abcd";D*aゴ'abed";.設有以下程序段,則值為6的表達式是()。structst{intn;structst*next;};staticstructsta[3]={5,&a[1],7,&a[2],9,0},*p;P=&a[0];Ap++->nB++p->nCp->n++D(*p).n++.C語言中的文件類型只有()。A索引文件和文本文件兩種B文本文件ー種C二進制文件一種DASCII碼文件和二進制文件兩種二判斷對錯,對的劃“,錯的劃“X”(5分,每小題0.5分)1.在TurboC中,整型數(shù)據(jù)在內(nèi)存中占2個字節(jié)。().inti=20;switch(i/10){case2:printf("A");case1:printf("B");}的輸出結果為A。().break語句用在循環(huán)體中,可結束本層循環(huán),continue語句用在循環(huán)體中,可結束本次循環(huán)。().函數(shù)的遞歸調(diào)用不過是ー個函數(shù)直接或間接地調(diào)用它自身。().函數(shù)strlen("ASDFGつ的值是7。().通過return語句,函數(shù)可以帶回ー個或ー個以上的返回值。().結構體類型只有一種。()

.char*pゴgirド;的含義是定義字符型指針變量p,p的值是字符串"girド。().若有定義:char*p(chara[10]);則p是函數(shù)名。().用fopen("fiIe","r+");打開的文件"fiIe"可以進行修改。()三寫出下列程序的運行結果(10分,每小題2分)fIoataverage(fIoatarray[10]){inti;floataver,sum=array[0];for(i=1;i<10;i++)sum=sum+array[i];aver=sum/10;return(aver);)main(){ floatscore[10]={89,67.5,78,91,56,82.5,65,70,79,88),aver;inti;aver=average(score);printf("averagescoreis%5.2f”,aver);}main()

(chara[5]={(kf,停,C,ヤ’,乍’},*p=a,**pa;for(p=0;p<a+5;p++)くp="">printf(a%2c",*p);printf(a;printf(a%2c",**(pa=&p));}main(){inta,b,s=0;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b~=5;}printf(wa=%db=%d",a,b);)main(){printf("main():%d",fact(5));fact(-5);}fact(intvaIue){intf;

if(vaIue<0){printf(wArgerror");return(-1);}elseif(vaIue==11|vaIue=0)f=1;eIsef=vaIue*fact(value-1)+1;printf(aThiscalledvaIue=%dn,f);returnf;}main(){inta=012,b=0x12,k=12;charc='102',d=";printf("a=%db=%dk=%d",a,b,k);printf("c=%c,d=%c%o",c,d,a);a='A';c=49;printf("a=%dc=%c",a,c);}四閱讀下列程序,在處填入適當內(nèi)容,使程序完整(8分,每個空1分).有一個3*4矩陣,求其中的最大元素。max_vaIue((1)){inti,j,max;

max=array[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(array[i][j]>max)max=array[i][j];⑵;}main()(inta[3][4],i,j;for(i=0;i<3;i++)for(j=0;j<4;j++)(3);printf("maxvalueis%d”,max_vaIue(a));}.輸入x、y兩個整數(shù),按先大后小的順序輸出x、V。#include"stdio.hwmain()Iintx,y,*px,*py,(4);scanf("%d%d,J,&x,&y);(5);(6);if(x<y)<p=Bn>IP=px;px=py;py=p;}

printf(wx=%d,y=%d”,x,y);printf(aMAX=%d,MIN=%dw,*px,*py);)3.用選擇排序法對任意10個整數(shù)按照由小到大排序。main(){inta[11],i,j,k,t;printf("Pleaseinput10numbers:");for(i=1;i<11;i++)scanf("%d",&a[i]);printfC");for(i=1;i<=9;i++)I(7);for(j=i+1;(8);j++)if(a[j]>a[k])k=j;if(k!=i){t=a[k];a[k]=a[i];a[i]=t;})printf("Thesortednumbers:");for(i=1;i<11;i++)printf("%d",a[i]);)答案—選擇題(7分,每小題0.5分)1.B2.C3.B4.B5.C

6.A7.B8.A9.A10.C11.A12.A13.B14.D二判斷對錯,對的劃“J”,錯的劃“X”(5分,每小題0.5分)1.X2.X3.V4.V5.X6.X7.X8.X9.V10.V三寫出下列程序的運行結果(10分,每小題2分).5.四閱讀下列程序,在處填入適當內(nèi)容,使程序完整(8分,每個空1分)(1)intarray[3][4](intarray[][4])(2)return(max)(3)scanf(“%d”,&a[i][j])(4)*p(5)px=&x(py=&y)(6)py=&y(px=&x)(7)(8)20030語言試題3-選擇題(24分,每小題2分).已知函數(shù)fread的調(diào)用形式為fread(buffer,size,count,fp),其中buffer代表的是()。A存放讀入數(shù)據(jù)項的存儲區(qū)B存放讀入數(shù)據(jù)的地址或指向此地址的指針Cー個指向所讀文件的文件指針Dー個整形變量,代表要

讀入的數(shù)據(jù)項總數(shù).以下程序的輸出結果為()。main(){inti=010,j=10;printf("%d,%d",i++,j—);}A11,9B9,10C8,10D9,9.設a為int型變量,執(zhí)行下列賦值語句后,a的取值分別是()。a=125.534;a=20.0/3;a=(int)125.521%4;a=5?2;A125,6,31,1B125,6,1,20C125,6.666666,31,20D125.534,6.666666,2,20.設i和k都是int類型,則for循環(huán)語句()。for(i=0,k=-1;k=1;i++,k++)printf("****");A循環(huán)結束的條件不合法B循環(huán)體ー次也不執(zhí)行C循環(huán)體只執(zhí)行ー次D是無限循環(huán).以下程序的輸出結果為()。main(){charc;inti;for(i=65;i<68;i++){c=i+32;switch(c)

{case'a':case'b':case'c':printf("%c,",c);break;default:printf("end");}}}Aa,b,c,endBa,a,a,endCa,a,a,Da,b,c,.函數(shù)調(diào)用語句:fseek(fp,-10L,2);的含義是()。A將文件位置指針從文件末尾處向文件頭的方向移動10個字節(jié)B將文件位置指針從當前位置向文件頭的方向移動10個字節(jié)C將文件位置指針從當前位置向文件末尾方向移動10個字節(jié)D將文件位置指針移到距離文件頭10個字節(jié)處.以下程序的輸出結果為()。main()(chars1[40]="country",s2[20]="side";inti=0,j=0;whiIe(s1[i]!="\0')i++;whiIe(s2[j]1=1、0,)s1[i++]=s2[j++];s1[i]=0;printf("%s",s1);}

AsideBcountryCsidetryDcountryside.下列說法不正

溫馨提示

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

最新文檔

評論

0/150

提交評論