C語言程序設計a學習通超星期末考試答案章節(jié)答案2024年_第1頁
C語言程序設計a學習通超星期末考試答案章節(jié)答案2024年_第2頁
C語言程序設計a學習通超星期末考試答案章節(jié)答案2024年_第3頁
C語言程序設計a學習通超星期末考試答案章節(jié)答案2024年_第4頁
免費預覽已結束,剩余5頁可下載查看

下載本文檔

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

文檔簡介

C語言程序設計a學習通超星期末考試章節(jié)答案2024年在屏幕輸入以下圖形:(14個“*”漢字開頭前兩個空格)**************

我愛C語言!

C語言愛我!**************

答案:**************我愛C語言!C語言愛我!**************輸出以下圖形:

*

***

*****

答案:*********編寫程序,輸出以下圖形(三行“*”,每行三個)

***

***

***

答案:*********編寫程序,輸出“Hello,world!”

答案:Hello,world!處理部分為

(1)(2);計算機內(nèi)存存儲數(shù)據(jù)時,全部轉換為

(3)進行存儲。

答案:內(nèi)存;CPU;二進制數(shù)計算機硬件分為三大部分:

--1-->[2]--3-->分別是();();();

答案:輸入;處理;輸出以下選項中正確的定義語句是(

)。

答案:doublea=7,b=7;下列敘述中錯誤的是(

)。

答案:算法正確的程序可以有零個輸出以下敘述不正確的是

。

答案:當從鍵盤輸入數(shù)據(jù)時,對于整型變量只能輸入整型數(shù)值,對于實型變量只能輸入實型數(shù)值下列四組選項中,均是不合法的用戶標識符的選項是

。

答案:b-a

gotoint以下敘述中錯誤的是

。

答案:在沒有安裝C語言集成開發(fā)環(huán)境的機器上不能運行C源程序生成的.exe文件計算機高級語言程序的運行方法有編譯執(zhí)行和解釋執(zhí)行兩種,以下敘述中正確的是

答案:C語言程序僅可以編譯執(zhí)行一個C語言程序是由

。

答案:函數(shù)組成以下敘述正確的是

答案:C語言本身沒有輸入輸出語句一個C程序的執(zhí)行是從

。

答案:本程序的main函數(shù)開始,到main函數(shù)結束將37轉成二進制數(shù)輸出。輸出格式(0為轉換后的二進數(shù)):37=000000

答案:37=100101已知兩個數(shù)x=37,y=44.5將兩個數(shù)的值交換后輸出:x=44.5,y=37

答案:x=44.5,y=37將整數(shù)8437倒序輸出。輸出:3748

答案:7348已知圓的半徑r=3.5,輸出圓的面積s(圓周率取3.14)。輸出:(0由具體的值取代,小數(shù)位占6位)s=0000.000000

答案:s=38.465000已知身高1.60m,體重55kg,求BMI指數(shù),體重/(身高的平方)(保留3位小數(shù))輸出格式:BMI=0.000

答案:BMI=21.484已知兩個整數(shù),num1=15,num2=25,輸出這兩個數(shù)的和差積商。輸出:

num1+num2=40num1-num2=-10num1*num2=375num1/num2=0

答案:num1+num2=40num1-num2=-10num1*num2=375num1/num2=0已知華氏溫度f=108.7,計算出相應的攝氏溫度c(保留6位小數(shù))。c=5/9(f-32)輸出格式:c=0.000000

答案:c=42.6111111.0/2=________。

答案:0.5表達式:(int)((double)9/2)-9%2的值是

。

答案:3C語言規(guī)定標識符的第一個字符必須是下劃線或

。

答案:字母表達式1/3*3的計算結果是

答案:0C語言的關鍵字都用________{大寫或小寫}字母。

答案:小寫%-ms表示如果串實際長度小于m時,則在m列范圍內(nèi),字符串向

邊靠齊,右邊補空格。

答案:左若有定義:int

a;則語句a=(3/4)+5%3;運行后,a的值為

。

答案:2若a是int型變量,則計算表達式:a=25/3%3后a的值為

答案:2若s是int型變量,且s=6,則表達式s%2+(s+1)%2的值為_________

。

答案:1下列程序的運行結果是(

)。void

main(){

float

x=2.5;

int

y;

y=(int)x;

printf("x=%f,y=%d",x,y);

答案:

x=2.500000,y=2

表達式18/4*sqrt

(4.0)/8值的數(shù)據(jù)類型為

)。

答案:double以下程序的輸出結果是(

)。void

main(){

int

a=20,b=10;

printf("%d,%%d\n",a+b,a-b);

}

答案:30,%d若有定義:float

a=3.0,b=4.0,c=5.0;則表達式

1/2*(a+b+c)的值為(

)。

答案:0.0下列程序段的輸出結果是(

)。int

a=1234;float

b=123.456;double

c=12345.54321;

printf("%2d,%3.2f,%4.1f",a,b,c);

答案:1234,123.46,12345.5

設有定義:int

k=0;,下列4個語句執(zhí)行后,其中一個與其他3個語句的效果不相同的是(

答案:k+1;以下程序段的輸出結果是(

)。int

a=1234;printf("%2d\n",a);

答案:1234輸入5個整數(shù),找出最小值輸入

345-27輸出

-2

答案:1----2---6---0輸入5個整數(shù),從小到大輸出。輸入

3-346

-1輸出

-3-1346

答案:-4-3-134---23456---11456---23444以下程序實現(xiàn)這樣的功能:商店賣西瓜,購買50斤以上,每斤1元;20斤以上每斤1.2元,10斤以上的每斤1.4元,10斤以下每斤1.6元,從輸入西瓜的重量和顧客所付錢數(shù),則輸出應付款和應找錢數(shù)(保留兩位小數(shù)。輸入:

33

50輸出:

應付=33.00找零=10.40

答案:應付=17.50找零=2.50---應付=55.60找零=44.40---應付=8.96找零=1.04---應付=24.00找零=1.00編一程序,對于給定的一個百分制成績,輸出相應的等級。90分以上(包含90):‘A’;80~89(包含80)分為‘B’;70~79(包含70)分為‘C’;60~69(包含60)分為‘D’;60分以下為‘E’

輸入:

87輸出:

B

答案:A---E---B---D---C輸入一個5位整數(shù),判斷是不是回文數(shù),是輸出1,不是輸出0回文數(shù):正讀和反讀是一樣的,如12321是,13433不是)輸入

33333輸出

1

答案:0---1---1---0---0輸入一個三位數(shù),判斷是否是水仙花數(shù),是輸出1,否輸出0;水仙花數(shù)是指一個3位數(shù),它的每個位上的數(shù)字的3次冪之和等于它本身。例如:1^3+5^3+3^3=153。輸入153輸出

1

答案:1---0---1---0輸入一個字符,如果是大寫字符,則輸出它的小寫字符;如果是小寫字符,輸出它的大寫字符;如果是其它字符,則原樣輸出。輸入:

h輸出:

H

答案:L---s---4---,---D若x和n均是int型變量,且x和n的初值均為10,則運行語句“

x=x+n++;”后n的值為

。

答案:11當a=3,b=2,c=1時,表達式f=a>b>c

的值是

。

答案:0若x和y均為int型變量,則以下語句的功能是交換變量____的值和y的值。

x=x+y;

y=x-y;

x=x-y;

答案:x若變量a,

b已正確定義,且a,b均已正確賦值,下列選項中合法的語句是(

答案:++a;己知int

k,m=1;執(zhí)行語句k=-m++;后,k的值是(

)。

答案:-1已知x,y,z均為整型變量,且值均為1,則執(zhí)行語句++x||++y&&++z;后,表達式x+y的值為(

)。

答案:3若有定義和語句:int

s,p;s=p=5;

p=s++,++p,p+2;

則執(zhí)行上面語句后

p的值是(

答案:6求出所有水仙花數(shù).以空格做分格符

答案:153370371407輸入兩個整數(shù),輸出這兩個整數(shù)之間素數(shù)的個數(shù).輸入:

310輸出:

3

答案:4---8---37---7輸入一個整數(shù)n,輸出n行正三角型*號輸入:

3

輸出:

*

***

*****

答案:*********---****************---****輸入兩個整數(shù)m,n,輸出m行n列*號輸入:35輸出:*****

*****

*****

答案:***************---*********---********下列程序片段功能是判斷一個數(shù)是否為素數(shù)。int

i,k,m;scanf("%d",&m);k=sqrt(

);for(i=2;i<=k;i++)if(m%i==0)

;if(i>=k+1)printf("%dyes\n",m);else

printf("%dno\n",m);}

答案:m;break下面程序段的運行結果是:_____。x=y=0;

while(x<15)y++,x+=++y;printf("%d",x);

答案:20下面程序片段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結束循環(huán)。請?zhí)羁铡?/p>

int

n=0,c;

c=getchar();

while(

)

{

if(

c>=’0’&&c<=’9’)n++;

c=getchar();

}

答案:c!=’\n’下面程序段的運行結果是:_____

。x=y=0;

while(x<15)

y++,x+=++y;printf("%d",y);

答案:8在C語言中,為了結束while語句構成的循環(huán),while后一對圓括號中表達式的值應該為(

)。

答案:0執(zhí)行下面語句的輸出為(

)。int

i=-1;if(i<=0)printf(“*

*

*

*\n”);else

printf(“%

%

%

%

\n”);

答案:*

*

*

*

在以下給出的表達式中,與do-while(E)語句中的(E)不等價的表達式是(

)。

答案:(E==0)

標有/**/的語句的執(zhí)行次數(shù)是(

)。int

y,i;for(i=0;i<20;i++){if(i%2==0)continue;y+=i;

/**/}

答案:10有以下語句:i=1;for(;i<=100;i++)

sum+=i;與以上語句序列不等價的有(

)。

答案:

i=1;for(;i<=100;)sum+=i;若i,j已定義為int類型,則以下程序段中內(nèi)循環(huán)的總的執(zhí)行次數(shù)是

)。for

(i=5;i;i--)for

(j=0;j<4;j++){…}

答案:20下列程序片段運行的情況是(

)。

int

i=1,sum=0;while(i<10)sum=sum+1;i++;printf("i=%d,sum=%d",i,sum);

答案:運行出現(xiàn)死循環(huán)已知

int

t=0;

while(t=1)

{...}則以下敘述正確的是(

)。

答案:循環(huán)控制表達式的值為1若int

i,j;,則for(i=j=0;i<10&&j<8;i++,j+=3)控制的循環(huán)體執(zhí)行的次數(shù)是(

)。

答案:3下面程序的運行結果是(

)。inty=10;

do{y--;}

while(--y);

printf("%d\n",y--);

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

答案:int

k=0;

do{

++k;

}

while(k>=0);C語言中while和do-while循環(huán)的主要區(qū)別是(

)

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

)。

答案:do—while語句構成的循環(huán),當while語句中的表達式值為零時結束循環(huán)以下正確的描述是(

)。

答案:break語句只能在循環(huán)體內(nèi)和switch語句體內(nèi)使用對于for(表達式1;;表達式3)可理解為(

答案:for(表達式1;1;表達式3)下面有關for循環(huán)的正確描述是(

)

答案:for循環(huán)體語句中,可以包含多條語句,但要用花括號括起來以下能正確計算

1×2×3×…×10

的程序段是(

。

答案:i=1;s=1;

do

{s=s

*

i;

i++;

}

while(i<=10);下面程序片段的運行結果為(

)。int

n;for(n=1;n<=10;n++){

if(n%3==0)continue;printf("%d",n);}

答案:12457810

以下程序片段的輸出結果是(

)。int

y=10;

for

(

;y>0;y--)

if

(y%3==0)

printf(“%d”,--y);

continue;

答案:852以下程序片段的輸出結果是(

。int

n=0;while(n++<=1)

printf("%d\t",n);printf("%d\n",n);

答案:1

2

3以下程序片段的輸出結果(

)。int

x=3;do{printf("%3d",x-=2);}while(--x);

答案:1以下程序段的輸出結果是int

i,j,m=0;for(i=1;i<=15;i+=4)

for(j=3;j<=19;j+=4)m++;printf(“%d\n”,m);

答案:20程序段如下int

k=0;while(k++<=2);

printf("last=%d\n",k);則執(zhí)行輸出結果是

last=(

)。

答案:4實現(xiàn)統(tǒng)計一個包含5個數(shù)中奇數(shù)的個數(shù)并輸出。輸入:47542147-74輸出:5

答案:程序語言C/C++#include"stdio.h"intfun(intarr[]){ints=0,i;for(i=0;i<5;i++)if(arr[i]%2==1)s++;returns;}voidmain(){inta[5];inti;for(i=0;i<5;i++){scanf("%d",a[i]);}printf("%d\n",fun(a));}用例1:輸入4148413254輸出2用例2:輸入47542147-74輸出3用例3:輸入75914-476547輸出4實現(xiàn)功能:輸入字符,以換行結束,統(tǒng)計其中字母(letter)個數(shù),數(shù)字(number)個數(shù)、空格(space)個數(shù)及其它符號(others)個數(shù),在函數(shù)中輸出各種字符的個數(shù)。輸入:aSjkl658456';.輸出:letter=5

number=6

space=0

others=3

答案:程序語言C/C++#include"stdio.h"

voidfun(char*s){intzm,sz,kg,qt;zm=sz=kg=qt=0;for(;*s!='\0';s++){

if(*s>='A'&&*s<='Z'||*s>='a'&&*s<='z')zm++;elseif(*s>='0'&&*s<='9')sz++;elseif(*s=='')kg++;elseqt++;}printf("letter=%d\nnumber=%d\nspace=%d\nothers=%d",zm,sz,kg,qt);}void

main(){

char

a[200];

gets(a);fun(a);}用例1:輸入aSjkl658456';.輸出letter=5number=6space=0others=3用例2:輸入84564ASdzxc輸出letter=6number=5space=0others=0用例3:輸入987a4Sd8輸出letter=3number=5space=2others=0用例4:輸入8[647c]asd;F輸出letter=5number=4space=2others=3功能用于返回表達式s=1-1/3+1/5-1/7+...的前n項和。輸入:455輸出:0.785948

答案:程序語言C/C++#include"stdio.h"doublefun(intn){doubles=0;inti,t=1;for(i=1;i<=n;i++){s=s+t*1.0/(2*i-1);t=-t;}returns;}voidmain(){intn;scanf("%d",&n);printf("%lf\n",fun(n));}用例1:輸入455輸出0.785948用例2:輸入564561輸出0.785399用例3:輸入91645輸出0.785401判斷字符是否為字母,如果是小寫字母則轉換為對應的大寫字母,如果是大寫字母則轉換為對應的小寫字母,其它字符不轉換。輸入:

a輸出:A

答案:程序語言C/C++#include"stdio.h"voidfun(chara){if(a>='a'&&a<='z')a=a-32;elseif(a>='A'&&a<='Z')a=a+32;printf("%c",a);}voidmain(){chara;

scanf("%c",&a);fun(a);}用例1:輸入F輸出f用例2:輸入d輸出D用例3:輸入a輸出A用例4:輸入Z輸出z用例5:輸入3輸出3將一個十進制數(shù)轉換為對應的二進制數(shù)。輸入:73

輸出:1001001

答案:程序語言C/C++#include"stdio.h"voidfun(intn){inta[30],

i=0;while

(n/2!=0){a[i]=n%2;n=n/2;i++;}a[i]=n%2;for

(;i>=0;i--)printf("%d",a[i]);}voidmain(){inta;scanf("%d",&a);fun(a);}用例1:輸入9輸出1001用例2:輸入73輸出1001001用例3:輸入31輸出11111實現(xiàn)求表達式s=1!+2!+...+n!,輸出s的值。輸入:3

輸出:9

答案:程序語言C/C++#include"stdio.h"longfun(intn){longs=0,s1=1;inti;for(i=1;i<=n;i++){s1=s1*i;s=s+s1;}returns;}voidmain(){intn;scanf("%d",&n);printf("%d\n",fun(n));}用例1:輸入20輸出268040729用例2:輸入6輸出873用例3:輸入3輸出9輸入兩個正整數(shù)m和n,統(tǒng)計輸出m和n之間的素數(shù)個數(shù)以及這些素數(shù)的和(包含m,n)。輸入:5873輸出:5331

答案:程序語言C/C++#includeintmain(){inti,m,n;intcount=0,sum=0;intprime(intm);

scanf("%d%d",&m,&n);for(i=m;i<=n;i++){if(prime(i)){count++;sum=sum+i;}}printf("%d%d",count,sum);}intprime(intm){intj;for(j=2;j完成下面代碼未完成部分,實現(xiàn)功能:判斷輸入的年份和月份,輸出該月的天數(shù)(如果給定的年份能被4整除但不能被100整除或者年份能被400整除的是閏年,閏年的2月比平年的2月多一天。)輸入:2000

2

輸出

29

答案:程序語言C/C++#includevoidmain(){inta=0,b=0;//保存年月scanf("%d",&a);scanf("%d",&b);switch(b){case1:printf("該月天數(shù)為31");break;case2:if((a%4==0&&a%100!=0)||(a%400==0)){printf("該月天數(shù)為29");}else{printf("該月天數(shù)為28");}break;case3:printf("該月天數(shù)為31");break;case4:printf("該月天數(shù)為30");break;case5:printf("該月天數(shù)為31");break;case6:printf("該月天數(shù)為30");break;case7:printf("該月天數(shù)為31");break;case8:printf("該月天數(shù)為31");break;case9:printf("該月天數(shù)為30");break;case10:printf("該月天數(shù)為31");break;case11:printf("該月天數(shù)為30");break;case12:printf("該月天數(shù)為31");break;}}用例1:輸入20007輸出31用例2:輸入15002輸出28用例3:輸入16964輸出30用例4:輸入20004輸出30完成下面代碼未完成部分,實現(xiàn)功能:設計一函數(shù),函數(shù)功能用于返回表達式s=1+1/(1*2)+1/(2*3)+1/(3*4)+...+1/(n*(n+1))前n項和的值。#include"stdio.h"doublefun(intn){

}voidmain(){

intn;

scanf("%d",&n);printf("%lf\n",fun(n));}

答案:程序語言C/C++#include"stdio.h"doublefun(intn){doubles=1;inti;for(i=1;i<=n;i++)s=s+1.0/(i*(i+1));returns;}voidmain(){intn;

scanf("%d",&n);printf("%lf\n",fun(n));}用例1:輸入6輸出1.857143用例2:輸入9輸出1.900000用例3:輸入657輸出1.998480對于輸入的整數(shù)m和n,輸出m與n之間的所有奇數(shù)。輸入:4349輸出:4547

答案:程序語言C/C++#include"stdio.h"voidfun(intm,intn){

inti;for(i=m+1;i實現(xiàn)功能:設計一函數(shù),對于給定的一個百分制成績,輸出相應的五分制成績。設:90分以上為‘A’;80~89分為‘B’;70~79分為‘C’;60~69分為‘D’;60分以下為‘E’。輸入:

89輸出:

B

答案:程序語言C/C++#include"stdio.h"voidfun(floatcj){if(cj>=90)printf("A");elseif(cj>=80)printf("B");elseif(cj>=70)printf("C");elseif(cj>=60)printf("D");elseprintf("E");}voidmain(){floata;

scanf("%f",&a);fun(a);}用例1:輸入54輸出E用例2:輸入63輸出D用例3:輸入71輸出C用例4:輸入84輸出B用例5:輸入93輸出A輸入5個數(shù),輸出最大值。輸入:41684565414輸出:

654

答案:程序語言C/C++#include"stdio.h"intfun(intarr[5]){intmax,i;max=arr[0];for(i=0;i<5;i++)if(arr[i]>max)

max=arr[i];returnmax;}voidmain(){inta[5];inti;for(i=0;i<5;i++){scanf("%d",a[i]);}printf("%

溫馨提示

  • 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

提交評論