C語言程序設計(公共基礎)學習通超星期末考試答案章節(jié)答案2024年_第1頁
C語言程序設計(公共基礎)學習通超星期末考試答案章節(jié)答案2024年_第2頁
C語言程序設計(公共基礎)學習通超星期末考試答案章節(jié)答案2024年_第3頁
C語言程序設計(公共基礎)學習通超星期末考試答案章節(jié)答案2024年_第4頁
C語言程序設計(公共基礎)學習通超星期末考試答案章節(jié)答案2024年_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C語言程序設計(公共基礎)學習通超星期末考試章節(jié)答案2024年任何C語句必須以____(1)_結(jié)束。

答案:分號在一個C源程序中,塊式注釋兩側(cè)的分界符分別為_(1)_和_(2)_;單行注釋是以____(3)_開始的。

答案:/*;*/;//引用C語言標準庫函數(shù),一般要用____(1)____預處理命令將其頭文件包含進來。

答案:include;#include一個C程序總是從____(1)_函數(shù)開始運行的。(寫函數(shù)名)

答案:main;main(C語言源程序文件的后綴是____(1)____;經(jīng)過編譯后,生成文件的后綴是____(2)____;經(jīng)過連接后,生成文件的后綴是_(3)____。

答案:.c;.obj;.exe在C語言中,輸入操作是由庫函數(shù)____(1)____完成的,輸出操作是由庫函數(shù)____(2)____完成的。

答案:scanf

;scanf(;printf;

printf(C語言是面向_(1)_的語言,C++語言是面向____(2)_的語言。

答案:過程;對象每個C語言程序中有且只有一個____(1)_函數(shù),它是程序的入口和出口。(寫函數(shù)名)

答案:mainC語言源程序的基本單位是____(1)____

答案:函數(shù)計算機程序設計語言的發(fā)展,經(jīng)歷了從_(1)_、_(2)_到____(3)_的歷程。

答案:機器語言;匯編語言;符號語言;高級語言C語言編譯程序的首要工作是()。

答案:檢查C程序的語法錯誤C語言程序經(jīng)過編譯以后生成的文件名的后綴為()。

答案:objC程序是由(

)組成的。

答案:函數(shù)要把高級語言編寫的源程序轉(zhuǎn)換為目標程序,需要使用()。

答案:編譯程序C語言程序能夠在不同的操作系統(tǒng)下運行,這說明C語言具有很好的()。

答案:移植性在C程序中,main()的位置

。

答案:可以任意以下敘述中正確的是()

答案:簡單C語句必須以分號結(jié)束標準C語言程序的文件名的后綴為(

)。

答案:c計算機算法指的是:()。

答案:解決問題的有限運算序列結(jié)構(gòu)化程序設計所規(guī)定的三種基本控制結(jié)構(gòu)是()。

答案:順序、選擇、循環(huán)軟件與程序的區(qū)別是∶()。

答案:軟件是程序以及開發(fā)、使用和維護所需要的所有文檔的總稱,而程序只是軟件的一部分下列計算機語言中,CPU能直接識別的是()。

答案:機器語言C語言屬于()。

答案:高級語言計算機高級語言程序的運行方法有編譯執(zhí)行和解釋執(zhí)行兩種,以下敘述中正確的是()。

答案:C語言程序僅可以編譯執(zhí)行C語言規(guī)定,在一個源程序中,main函數(shù)的位置(

)。

答案:可以任意一個C程序是由(

)。

答案:一個主函數(shù)和若干個非主函數(shù)組成C語言程序的語句都是以(

)結(jié)尾。

答案:“;”/star3/origin/e23b9ab8127c5737ac80ea8290a64ca9.png

答案:評分標準:有源程序(10分)有結(jié)果(5分)結(jié)果正確(10分,部分正確酌情減分)。//編寫程序,輸出如下關系系統(tǒng)菜單#includeintmain(){printf("\n\n");printf("

*********************************************\n");printf("

*

學生信息管理系統(tǒng)

*\n");printf("

*-----------------------------------------==*\n");printf("

*1.錄入

2.查詢

3.修改

*\n");printf("

*4.刪除

5.排序

6.退出

*\n");printf("

*-----------------------------------------==*\n");printf("

*********************************************\n");printf("

請選擇<1-6>:\n");getchar();return0;}/star3/origin/26505df67e97ed8d4df54b7f090892a0.png

答案:評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(5分,部分正確酌情減分)。#include//我的第一個程序intmain(){printf("ThisismyfirstC_Program!\n");printf("歡迎學習C程序設計?。。n");return0;}編寫一個程序,輸出一個自我介紹。(提交源程序(作答區(qū)粘貼源代碼文本)+運行結(jié)果(截圖))

答案:評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(是否是在做自我介紹?:5分,部分正確酌情減分)。/star3/origin/50e5b5ec9349a838be25b2bdb04acc63.png

答案:1)評分標準:結(jié)果正確(5分,部分正確酌情減分)。程序?qū)崿F(xiàn)了整型變量的定義、賦值、計算和結(jié)果輸出功能。2)評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(5分,部分正確酌情減分)。3)評分標準:結(jié)果正確(5分,部分正確酌情減分)。定義兩個整數(shù)后,不直接對它們賦值,而是通過scanf函數(shù)從鍵盤讀入,然后對它們求和后輸出提示。/star3/origin/300b30d3737c620afcc59f5bded30f51.png

答案:評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(5分,部分正確酌情減分)。//猜拳游戲簡單界面設計#include//宏定義#defineNUM10intmain(){//初始界面//猜字前面有24個空格,每個漢字間隔1個空格printf("%*s猜拳游戲\n",24,"");//每組有10個'-',有4組,每個漢字間隔2個空格printf("|----------用

戶----------電

腦----------結(jié)

果----------|\n");//每組有10個空格,有4組,每個漢字間隔2個空格printf("|%*s%s%*s%s%*s%s%*s|\n",NUM,"","剪

刀",NUM,"","石

頭",NUM,"","電腦勝",NUM,"");getchar();return0;}/star3/origin/87e193d06ca800213f96b295f6013e3e.png

答案:1)評分標準:本小步5分,細分:有源程序(1分)有結(jié)果(2分)結(jié)果正確(2分,部分正確酌情減分)。#includeintmain(){charc1,c2;c1=97;c2=98;printf("%c

%c\n",c1,c2);printf("%d

%d\n",c1,c2);return0;}2)評分標準:本小步10分,細分:有源程序(2分)有結(jié)果(2分)結(jié)果正確(2分,部分正確酌情減分)解釋正確(4分,部分正確酌情減分)。#includeintmain(){charc1,c2;c1=197;c2=198;printf("%c

%c\n",c1,c2);printf("%d

%d\n",c1,c2);return0;}原因:197和198超出ASCII碼表(0-127)范圍,計算機無法識別這個字符,所以輸出?。輸出整型時,char的大小范圍是(-2^7~2^7-1),197和198超出范圍,反向計數(shù)從-128開始計數(shù),結(jié)果就是-59和-58。3)評分標準:本小步10分,細分:有源程序(2分)有結(jié)果(2分)結(jié)果正確(2分,部分正確酌情減分)解釋正確(4分,部分正確酌情減分)。#includeintmain(){intc1,c2;c1=197;c2=198;printf("%c

%c\n",c1,c2);printf("%d

%d\n",c1,c2);return0;}原因解釋:第一行輸出同第二問的解釋。第二行輸出,因為197,198在int整型表達的范圍之內(nèi),所以可以正常輸出顯示。/star3/origin/0293e9afdb92e0d97b2f2b1636e2beca.png

答案:評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(5分,部分正確酌情減分)。#includeintmain(){charch;printf("InputaLowercaseletters:");ch=getchar()-32;printf("Capitalletteris:");putchar(ch);putchar(getchar()-32);putchar('\n');return0;}【額外說明】:第9行相當于第6、8行的功能合并效果。如果你在黑框里面輸入2字符后按回車,將是如下效果:/star3/origin/d949db8ce7b75632c6de9e151c00ad05.png

答案:1)評分標準:本小步10分,細分:有源程序(2分)有結(jié)果(3分)結(jié)果正確(5分,部分正確酌情減分)。#includeintmain(){inta,b;floatx,y;charc1,c2;scanf("a=%db=%d",&a,&b);scanf("%f%e",&x,&y);scanf("%c%c",&c1,&c2);printf("a=%db=%d\n",a,b);printf("%f%e\n",x,y);printf("%c%c\n",c1,c2);return0;}有兩種輸入方式:(1)可以這樣輸入:a=3b=78.571.82Aa輸入后的效果截圖如下:(2)還可以這樣輸入:a=3b=78.571.82Aa輸入后的效果截圖如下:2)評分標準:本小步16分,共8條,每條2分。每條細分:有截圖(1分),有合理文字解釋(1分,部分正確酌情減分)。對每一條,有運行截圖,對錯判斷正確(都錯了),并說清楚原因即可。酌情給分。3)評分標準:本小步4分,細分:有文字解釋(2分)解釋正確(2分,部分正確酌情減分)?!緟⒖即鸢浮浚阂?guī)律:1.輸入時,要嚴格按照scanf函數(shù)中的格式控制字符串中規(guī)定的格式,在黑框中進行輸入;2.連續(xù)輸入多個數(shù)時,數(shù)與數(shù)之間要輸一個空格區(qū)分。易錯的地方:1.輸入時,不嚴格按照scanf函數(shù)中的格式控制字符串中規(guī)定的格式,在黑框中進行輸入時,多常規(guī)字符或少常規(guī)字符;2.涉及字符的輸入時,按回車鍵會導致錯誤的輸入。因為回車鍵也是字符,這樣會影響字符輸入正確性。有以下程序#includemain()

{

charc1,c2,c3,c4,c5,c6;

scanf("%c%c%c%c",&c1,&c2,&c3,&c4);

c5=getchar();

c6=getchar();

putchar(c1);

putchar(c2);

printf("%c%c\n",c5,c6);

}程序運行后,若從鍵盤輸入(從第1列開始)12345678則輸出結(jié)果是()。

答案:1245有以下程序#includemain()

{

inta1,a2;

charc1,c2;

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

printf("%d,%c,%d,%c"a1,c1,a2,c2);}

若想通過鍵盤輸入,使得a1的值為12,a2的值為34,c1的值為字符a,c2的值為字符b,程序輸出結(jié)果是:12,a,34,b則正確的輸入格式是(以下口代表空格,代表回車)()。

答案:12a34b若變量已正確定義為int型,要通過語句scanf(“%d,%d,%d”,&a,&b,&c);給a賦值1、給b賦值2、給c賦值3,以下輸入形式中錯誤的是()。(注:口代表一個空格符)

答案:1口2口3有以下程序,程序的輸出結(jié)果是()。main()

{

charc1=’A’,c2=’Y’;

printf(“%d,%d\n”,c1,c2);}

答案:65,89以下選項中合法的實型常量是()。

答案:914以下選項中不屬于字符常量的是()。

答案:”C”C語言中的標識符分為關鍵字、預定義標識符和用戶標識符,以下敘述正確的是

答案:預定義標識符可用作用戶標識符,但失去原有含義以下關于C語言數(shù)據(jù)類型使用的敘述中錯誤的是()。

答案:若只處理“真”和“假”兩種邏輯值,應使用邏輯類型以下選項中作為C語言合法常量的是()

答案:-80以下選項中關于C語言常量的敘述錯誤的是()。

答案:經(jīng)常被使用的變量可以定義成常量以下關于函數(shù)的敘述中正確的是()。

答案:每個函數(shù)都可以被單獨編譯對于一個正常運行的C程序,以下敘述中正確的是()。

答案:程序的執(zhí)行總是從main函數(shù)開始/star3/origin/595615c345c7c748696c08511998cb11.png

答案:1)評分標準:本小步5分,細分:有源程序(1分)有結(jié)果(2分)結(jié)果正確(2分,部分正確酌情減分)。#includeintmain(){inta,b,c;a=(b=3,(c=b+4)+5);printf("a=%d,b=%d,c=%d\n",a,b,c);return0;}2)評分標準:本小步5分,參考如下答案(教材P50)。解釋正確5分,部分正確酌情減分。/star3/origin/4a6368a9a0d0eb177c9ed4fbcc0495f8.png

答案:評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(5分,部分正確酌情減分)。#include#includeintmain(){inta,b,c;doubledelt,root1,root2;scanf("%d%d%d",&a,&b,&c);delt=b*b-4*a*c;root1=(-b+sqrt(delt))/(2*a);root2=(-b-sqrt(delt))/(2*a);printf("root1=%.2f,root2=%.2f",root1,root2);return0;}/star3/origin/61ab135d0fc540b0564b614436c830f5.png

答案:1)本小步5分。評分標準:有源程序(1分)有結(jié)果(2分)結(jié)果正確(2分,部分正確酌情減分)。#include#includevoidmain(){inti;printf("輸入一個整數(shù):");scanf("%d",&i);printf("%d(10)<=>%o(8)\n",i,i);printf("%d(10)<=>%x(16)\n\n",i,i);system("pause");}2)評分標準:本小步10分。有源程序(2分)有結(jié)果(4分)結(jié)果正確(4分,部分正確酌情減分)。#include#includevoidmain(){inti;printf("輸入一個八進制整數(shù):");scanf("%o",&i);printf("%o(8)<=>%d(10)\n",i,i);printf("%o(8)<=>%x(16)\n\n",i,i);system("pause");}/star3/origin/f4790939d5b3049366a99beecfd81b9b.png

答案:1)評分標準:本小步12分,細分:有源程序(4分)有結(jié)果(4分)結(jié)果正確(4分,部分正確酌情減分)。#include#includevoidmain(){inta=1;charc='a';floatf=2.0;printf("1:%d\n",a+2!=c-100);printf("2:%d\n",(a>c)>=(f>4));printf("3:%d\n",!a==!f);printf("4:%d\n",(!a&&1)!=(!c||1));printf("5:%d\n",((!a>2)?3:0)<((f!=1)?0:1));printf("6:%d\n",(1,2,3)==(3,3,3));system("pause");}2)評分標準:本小步18分,6個printf函數(shù)每個3分。對每個,解釋正確(3分,部分正確酌情減分)。1.

a+2為3,c的整數(shù)值為97,c-100=-3,兩者不等,所以為-1。2.

a為1,c的整數(shù)值為97,前者(a>c)為假(0);后者(f>4)顯然為假(0);前者>=后者顯然為真(1)。3.

!a為0,!f為0,兩者相等為真(1)。4.

!a為0,所以前者(!a&&1)為0;后者(!c||1))肯定為1;兩者不等為真(1)。5.

!a為0,(!a>2)為假(0),所以前者((!a>2)?3:0)的值為0;f!=1為真(1),所以后者((f!=1)?0:1))的值為0。前者/star3/origin/7c5a1b92e267c47578b2f6816a04eaad.png

答案:評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(5分,部分正確酌情減分)。#include#define

PI

3.1415926intmain(){doubler,s;printf("輸入圓的半徑:");scanf("%lf",&r);s=PI*r*r;printf("圓的半徑=%20.12lf\n圓的面積=%20.12lf\n",r,s);return0;}以下程序段的輸出結(jié)果是()inta=10,b=50,c=30;if(a>b)a=b;b=c;c=a;printf("a=%2db=%2dc=%2d\n",a,b,c);

答案:a=10b=30c=10以下程序的輸出結(jié)果是():main(){intx=-10,y=1,z=1;if(x答案:2C語言對嵌套if語句的規(guī)定是:else語句總是與()配對

答案:其之前最近的且尚未配對的if設有語句“inta=2,b=3,c=-2,d=2;”,則邏輯表達式“a>0&&b&&c<0&&d>0”的值是()

答案:1判斷char型變量c1是否為大寫字母的表達式為()

答案:c1>=’A’&&c1<=’Z’能正確表示邏輯關系:“a≥=10或a≤0”的C語言表達式是()

答案:a>=10‖a<=0表示關系x<=y<=z的c語言表達式為()

答案:(x<=y)&&(y<=z)在C語言中,認為()為邏輯"真"

答案:非0的數(shù)設intx=0,y=1;表達式(x||y)的值是()

答案:1有:intw=11,x=12,y=3,m;執(zhí)行下面語句后m的結(jié)果是()

m=(w答案:3已知intx=5,y=5,z=5;執(zhí)行語句x%=y+z;后x的值是()

答案:5已知:intw=3,x=10,z=7;,則執(zhí)行下面語句后的結(jié)果為()printf("%d",x>10?x+100:x-10);printf("%d",w++||z++);printf("%d",!w>z);printf("%d",w&&z);

答案:0101當a=1,b=3,c=5,d=4時,執(zhí)行完成下面一段程序后x的值是()if(a答案:2選擇運行的結(jié)構(gòu)()

#includemain(){charch;ch=getchar();switch(ch){case65:printf("%c",'A');case66:printf("%c",'B');default:printf("%s\n","other");}}如程序可以正常運行,當從鍵盤輸入字母A時,輸出結(jié)果為()

答案:ABother閱讀程序,其運行結(jié)果是()#includemain(){inta=-1,b=1,k;if((++a<0)&&(b--<=0))printf("%d%d\n",a,b);elseprintf("%d%d\n",b,a);}

答案:10下列程序的運行結(jié)果為()#includemain(){inta=2,b=-1,c=2;if(a答案:2設有說明語句:inta=1,b=0;,則執(zhí)行以下語句后輸出為()switch(a){case1:switch(b){case0:printf("**0**");break;case1:printf("**1**");break;}case2:printf("**2**");break;}

答案:**0****2**閱讀下列程序,其運行結(jié)果是()#includemain(){charc='A';if('0'<=c<='9')printf("YES");elseprintf("NO");}

答案:YES若inti=10;,執(zhí)行下列程序后,變量i的正確結(jié)果是()switch(i){case9:i+=1;case10:i+=1;case11:i+=1;default:i+=1;}

答案:13已知:intx,a,b;下列選項中錯誤的if語句是()

答案:if(a=/star3/origin/a16ebfee4c46fb9b83e294bf31800582.png

答案:y=-1;

if(x!=0)

if(x>0)y=1;

elsey=0;下面程序的輸出是(

)。#includemain(){intx=1,y=0,a=0,b=0;switch(x){

case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;}printf("a=%d,b=%d\n",a,b);}

答案:a=2,b=1判斷char型變量c1是否為小寫字母的正確表達式為()

答案:(c1>='a')&&(c1<='z')要判斷char型變量m是否是數(shù)字,可以使用下列表達式()

答案:'0'<=m&&m<='9'能正確表示“當x取值在[1,10]和[200,210]范圍內(nèi)為真,否則為假”表達式是()

答案:(x>=1)&&(x<=10)||(x>=200)&&(x<=210)執(zhí)行下面語句后x的值為()inta=14,b=15,x;charc=’A’x=((a&&b)&&(c<’a’))

答案:1已知:intx=1,y=2,z;則執(zhí)行z=x>y?++x:++y,則z的值為()

答案:3已知:charc='A';inti=1,j,執(zhí)行語句j=!c&&i++;,則i和j的值為()。

答案:1,0已知,inta=4,b=5,c;則執(zhí)行表達式c=a=a>b后變量a的值為()。

答案:0以下程序的運行結(jié)果是____。#includemain(){

inti,s=0;

for(i=0;i<=10;i=i+2)

s=s+i;

printf("s=%d\n",s);}

答案:s=30以下程序的運行結(jié)果是____。#includemain(){

inti,s=0;

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

s=s+i;

printf("s=%d\n",s);}

答案:s=55寫出下面程序執(zhí)行后的運行結(jié)果____。#includeintmain(){

inti;

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

switch(i%2){

case0:printf("1");break;

case1:printf("0");break;

}

return0;}

答案:10101下面程序的功能是計算s=1+12+123+1234+12345。請?zhí)羁帐钩绦蛲暾?、正確。#includeintmain(){

intt=0,s=0,i;

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

{

t=i+t*10;

s=____;

}

printf("s=%d",s);

return(0);}

答案:s+t下面程序執(zhí)行后的輸出結(jié)果是10的階乘。請?zhí)羁帐钩绦蛲暾?、正確。#includeintmain(){

inti,mul=1;for(i=1;i<10;i++)

mul=____;

printf("mul=%d",mul);

return0;}

答案:mul*i;i*mul下面程序執(zhí)行后的輸出結(jié)果是1-100的所有數(shù)的累加和。請?zhí)羁帐钩绦蛲暾⒄_。#includeintmain(){

inti,sum=0;for(i=1;i<=100;i++)

sum=____;

printf("sum=%d",sum);

return0;}

答案:sum+i在循環(huán)中,break和continue語句一般與____語句結(jié)合使用。

答案:if在循環(huán)中,可以用____語句提前本次循環(huán)。

答案:continue在循環(huán)中,可以用____語句提前終止循環(huán)。

答案:break在一個循環(huán)中又包含著另一種循環(huán),稱為循環(huán)的____。

答案:嵌套在循環(huán)結(jié)構(gòu)中,當判斷條件永遠為真時,程序?qū)⑾萑隷___狀態(tài)。

答案:死循環(huán)在for(表達式1;表達式2;表達式3){循環(huán)體}中,其中:表達式____可以用來判斷循環(huán)條件是否成立。

答案:2在for(表達式1;表達式2;表達式3)循環(huán)語句中,表達式1執(zhí)行____次。

答案:1任何一個程序都可以由三種控制結(jié)構(gòu)組成,它們分別是順序結(jié)構(gòu)、分支結(jié)構(gòu)、____結(jié)構(gòu)。

答案:循環(huán)以下程序的輸出結(jié)果是____。#includemain(){

inti;

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

{

if(i%3==0)continue;

printf("%d",i);

}}

答案:457810判斷兩個字符串是否相等,正確的表達方式是().

答案:while(strcmp(s1,s2)==0)下面有關for循環(huán)的正確描述是().

答案:for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號括起來對for(表達式1;;表達式3)可理解為().

答案:for(表達式1;1;表達式3)t為int類型,進人下面的循環(huán)之前,t的值為0while(t=1){……}則以下敘述中正確的是().

答案:循環(huán)控制表達式的值為1在C語言中,為了結(jié)束由while語句構(gòu)成的循環(huán),while后一對圓括號中表達式的值應該為().

答案:0以下不是死循環(huán)的程序段是()。

答案:intk=0;do{++k;}while(k<=0);下面程序段的循環(huán)次數(shù)是()。

for(i=2;i==0;)

printf("%d",i--);

答案:0次下面for循環(huán)語句()。inti,k;for(i=0,k=-1;k=1;i++,k++)printf("***");

答案:是無限循環(huán)有以下程序段:intk=2;while(k=0){printf("%d",k);k--;}則下面描述中正確的是()。

答案:循環(huán)體語句一次也不執(zhí)行若有以下程序段,其中s、a、b、c均已定義為整型變量,且a、c均已賦值(c大于0)s=a;for(b=1;b<=c;b++)s=s+1;則與上述程序段功能等價的賦值語句是()。

答案:s=a+c;下面程序段中while循環(huán)的循環(huán)次數(shù)是()。inti=0;while(i<10){if(i<1)continue;if(i==5)break;i++;}

答案:死循環(huán),不能確定次數(shù)下面程序執(zhí)行后的輸出結(jié)果是()。#includeintmain(){inti,sum=0;for(i=1;i<6;i++)sum+=i;printf("%d",sum);return(0);}

答案:15有以下程序段:intn=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);此處do-while循環(huán)的結(jié)束條件是()。

答案:p的值等于12345或者n的值大于等于3若變量已正確定義,不能完成求5!的程序段是()。

答案:for(i=1;i<=5;i++){p=1;p*=i;}以下程序段中的變量已正確定義,程序段的輸出結(jié)果是()。for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf("*");

答案:*若i和k都是int類型變量,有以下for語句for(i=0,k=-1;k=1;k++)printf("*****\n");下面關于語句執(zhí)行情況的敘述中正確的是()。

答案:構(gòu)成無限循環(huán)以下不構(gòu)成無限循環(huán)的語句或語句組是(

)。

答案:n=0;do{++n;}while(n<=0);有以下程序#includeintmain(){inta=7;while(a--);printf("%d\n",a);return0;}程序運行后的輸出結(jié)果是()。

答案:-1要求通過while循環(huán)不斷讀入字符,當讀入字母N時結(jié)束循環(huán)。若變量已正確定義,以下正確的程序段是()。

答案:while(ch=getchar()!='N')printf("%c",ch);由以下while構(gòu)成的循環(huán),循環(huán)體執(zhí)行的次數(shù)是()。intk=0;while(k=1)k++;

答案:無限次在以下給出的表達式中,與while(E)中的(E)不等價的表達式是()。

答案:(E==0)關于"do循環(huán)體while(條件表達式);"以下敘述中正確的是()。

答案:條件表達式的執(zhí)行次數(shù)與循環(huán)體的執(zhí)行次數(shù)一樣語句while(!e);中的條件!e等價于(

)。

答案:e==0以下程序段()。intx=-1;do{x=x*x;}while(!x);

答案:循環(huán)執(zhí)行一次C語言中while和do-while循環(huán)的主要區(qū)別是(

)。

答案:do-while的循環(huán)體至少無條件執(zhí)行一次C語言中()。

答案:do-while語句構(gòu)成的循環(huán),當while語句中的表達式值為零時結(jié)束循環(huán)下面有關for循環(huán)的正確描述是(

)。

答案:for循環(huán)體語句中,可以包含多條語句,但要用花括號括起來關于"while(條件表達式)

循環(huán)體"以下敘述正確的是(

)。

答案:條件表達式的執(zhí)行次數(shù)總是比循環(huán)體的執(zhí)行次數(shù)多一次/star3/origin/579ecc1a009b13ffd2e6997c59326091.png

答案:參考評分標準:有源程序(5分)有結(jié)果(5分)結(jié)果正確(5分,部分正確酌情減分)。#includeintmain(){

intnum,i,flag=1;shortn;while(flag){printf("\n請輸入一個short類型(范圍-32768~32767)的整數(shù)(提示:輸入非法數(shù)可退出循環(huán)以結(jié)束程序):");scanf("%d",&num);if(num<-32768||num>32767){printf("輸入數(shù)據(jù)[%6d]超出short類型的范圍(-32768~32767),請重試!\n",num);flag=0;}n=num;if(!flag){printf("輸入數(shù)據(jù)[%6d]超出short類型的范圍,其(數(shù)據(jù)截斷)轉(zhuǎn)換為short類型的結(jié)果是[%6d]\n",num,n);}printf("short類型數(shù)據(jù)[%6d]的二進制形式是:",n);for(i=(sizeof(n)*8-1);i>=0;i--){if((n>>i)&1)printf("1");elseprintf("0");}printf("\n");}

return0;}/star3/origin/796952894b180eb9d343bfa819c67bc0.png

答案:(1)此步5分。參考評分標準:有源程序(2分)有結(jié)果(1分)結(jié)果正確(2分,部分正確酌情減分)。#includeintmain(){inti,j;for(i=1;i<=9;i++){for(j=1;j<=10-i;j++){printf("%d×%d=%-3d",i,j,i*j);}printf("\n");}return0;}(2)此步10分。參考評分標準:有源程序(5分)有結(jié)果(2分)結(jié)果正確(3分,部分正確酌情減分)。#includeintmain()

{inti,j;for(i=1;i<=9;i++)

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

{printf("\t");//or://printf("%*s",8,"");}for(j=1;j<=i;j++)printf("%d×%d=%-3d",i,j,i*j);

printf("\n");}return0;}/star3/origin/b10ae11c5fdfb1ccd9436a71cd7edb99.png

答案:(1)a)此步8分。參考評分標準:有源程序(2分)有結(jié)果(2分;2個截圖,每個1分)結(jié)果正確(4分;2個截圖,每個2分;部分正確酌情減分)。#includeintmain(){inti,num;printf("請輸入一個大于3的整數(shù):");scanf("%d",&num);for(i=2;i#includeintmain(){inti,num,k;printf("請輸入一個大于3的整數(shù):");scanf("%d",&num);k=sqrt(1.0*num);for(i=2;iintmain(){inti,cnt=0;printf("100-200之間不能被3整除的數(shù)包括:\n");for(i=100;i<=200;i++){if(i%3==0){continue;}cnt++;printf("%6d",i);if(cnt%10==0){printf("\n");}}printf("\n");return0;}/star3/origin/6752a0846c2db8a97107573002da2b0b.png

答案:(1)本步10分。參考評分標準:有源程序(5分)有結(jié)果(2分)結(jié)果正確(3分,部分正確酌情減分)。#include#includeintmain(){intn=1,sign=1;doublepi=0,term=1;while(fabs(term)>=1e-6){pi+=term;n+=2;sign*=-1;term=1.0*sign/n;}pi*=4;printf("pi≈%10.6lf\n",pi);return0;}(2)本步10分。參考評分標準:文字作答(2分;酌情減分)有源程序(3分)有結(jié)果(2分)結(jié)果正確(3分,部分正確酌情減分)。文字回答:能。有多種方式實現(xiàn)將while循環(huán)語句改寫為for循環(huán)語句,比如:#include#includeintmain(){intn=1,sign=1;doublepi=0,term=1;for(;fabs(term)>=1e-6;){pi+=term;n+=2;sign*=-1;term=1.0*sign/n;}pi*=4;printf("pi≈%10.6lf\n",pi);return0;}或者#include#includeintmain(){intn=1,sign=1;doublepi=0,term=1;for(;fabs(term)>=1e-6;pi+=term,n+=2,sign*=-1,term=1.0*sign/n){;}pi*=4;printf("pi≈%10.6lf\n",pi);return0;}/star3/origin/4de6975da115ce9db7bfc7829ce2bb18.png

答案:參考評分標準:有源程序(5分)有結(jié)果(2分)結(jié)果正確(3分,部分正確酌情減分)。#includeintmain(){inti,f1=1,f2=1;for(i=1;i<=20;i++){printf("%10d

%10d",f1,f2);if(i%2==0){printf("\n");}f1=f1+f2;f2=f2+f1;}return0;}/star3/origin/cbcfcf3fb1e52fc31f104f6929bace91.png

答案:(1)本步5分。參考評分標準:有源程序(2分)有結(jié)果截圖(1分)結(jié)果正確(2分,部分正確酌情減分)。#includeintmain(){inti,product=1;for(i=1;i<6;i++){product*=i;}printf("5!=%d\n",product);return0;}(2)本步5分。參考評分標準:有源程序(2分)有結(jié)果截圖(1分)結(jié)果正確(2分,部分正確酌情減分)。#includeintmain(){inti;for(i=1;i<=100;i++){printf("%3d

",i);if(i%10==0){printf("\n");}}return0;}/star3/origin/c65c0c4d05bde54f33d1110216a982c6.png

答案:(1)本小步10分。參考評分標準:有源程序(4分)有結(jié)果(2分;2個截圖,每個1分)結(jié)果正確(4分;2個截圖,每個2分;部分正確酌情減分)。#include#include//整型數(shù)據(jù)類型定義unsignedlonglongfun(intx);intmain(){intn;unsignedlonglongresult;printf("請輸入一個正整數(shù)(不超過20):");scanf("%d",&n);result=fun(n);printf("從1!到%d!的求和結(jié)果=%llu=%e\n",n,result,result*1.0);

return0;}unsignedlonglongfun(intx){inti;unsignedlonglongs=0,p=1;for(i=1;i<=x;i++){p*=i;printf("%2d!=%20llu=%e\n",i,p,p*1.0);if(p>(ULLONG_MAX*1.0/(i+1))){printf("Dangerous!%d!isnearthemax[%e]ofunsignedlonglong!\n",i,

ULLONG_MAX*1.0);printf("Warning!

%d!exceed

themax[%e]ofunsignedlonglong!\n",i+1,ULLONG_MAX*1.0);}s+=p;}returns;}(2)本小步5分。參考評分標準:分析結(jié)果正確(5分;部分正確酌情減分)。原因:上一問中是用unsignedlonglong來表示結(jié)果的。20!很接近unsignedlonglong的最大值,21!已超過unsignedlonglong的最大值。如果輸入超過20,結(jié)果就會超過unsignedlonglong的表示范圍。此時會產(chǎn)生數(shù)據(jù)溢出,導致計算結(jié)果不準確。因此,輸入的正整數(shù)不能超過20。(3)本小步10分。參考評分標準:有源程序(4分)有結(jié)果(2分)結(jié)果正確(4分;部分正確酌情減分)。#includedoublefun(intx);intmain(){intn;doubleresult;printf("請輸入一個正整數(shù):");scanf("%d",&n);result=fun(n);printf("從1!到%d!的求和結(jié)果=%35.0lf=%e\n",n,result,result);

return0;}doublefun(intx){inti;doubles=0,p=1;for(i=1;i<=x;i++){p*=i;printf("%2d!=%35.0lf=%e\n",i,p,p);s+=p;}returns;}/star3/origin/4d1092c0a89016a93025c3ff792046c5.png

答案:(1)此步10分。參考評分標準:有源程序(4分)有結(jié)果(2分)結(jié)果正確(4分,部分正確酌情減分)。#include#include//整型數(shù)據(jù)類型定義voidprint_SizeAndRangeOf_AllIntegerTypes();//函數(shù)聲明voidmain(){printf("C語言中常見的整型數(shù)據(jù)類型的字節(jié)數(shù)和范圍如下(從小到大排):\n");print_SizeAndRangeOf_AllIntegerTypes();//函數(shù)調(diào)用

return;}voidprint_SizeAndRangeOf_AllIntegerTypes()//函數(shù)定義{printf("sizeof(char)=%d\n",sizeof(char));printf("min_max_of_char=[%d,%d]\n\n",SCHAR_MIN,SCHAR_MAX);printf("sizeof(unsignedchar)=%d\n",sizeof(unsignedchar));printf("min_max_of_unsignedchar=[%u,%u]\n\n",0,UCHAR_MAX);printf("sizeof(short)=%d\n",sizeof(short));printf("min_max_of_short=[%d,%d]\n\n",SHRT_MIN,SHRT_MAX);printf("sizeof(unsignedshort)=%d\n",sizeof(unsignedshort));printf("min_max_of_unsignedshort=[%u,%u]\n\n",0,USHRT_MAX);printf("sizeof(int)=%d\n",sizeof(int));printf("min_max_of_int=[%d,%d]\n\n",INT_MIN,INT_MAX);printf("sizeof(unsignedint)=%d\n",sizeof(unsignedint));printf("min_max_of_unsignedint=[%u,%u]\n\n",0,UINT_MAX);printf("sizeof(long)=%d\n",sizeof(long));printf("min_max_of_long=[%ld,%ld]=[%e,%e]\n\n",LONG_MIN,LONG_MAX,LONG_MIN*1.0,LONG_MAX*1.0);printf("sizeof(unsignedlong)=%d\n",sizeof(unsignedlong));printf("min_max_of_unsignedlong=[%u,%lu]=[%e,%e]\n\n",0,ULONG_MAX,0.0,ULONG_MAX*1.0);printf("sizeof(longlong)=%d\n",sizeof(longlong));printf("min_max_of_longlong=[%lld,%lld]=[%e,%e]\n\n",LLONG_MIN,LLONG_MAX,LLONG_MIN*1.0,LLONG_MAX*1.0);printf("sizeof(unsignedlonglong)=%d\

溫馨提示

  • 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

提交評論