寧波大學(xué)OJ系統(tǒng)C語言題目及答案精講_第1頁
寧波大學(xué)OJ系統(tǒng)C語言題目及答案精講_第2頁
寧波大學(xué)OJ系統(tǒng)C語言題目及答案精講_第3頁
寧波大學(xué)OJ系統(tǒng)C語言題目及答案精講_第4頁
寧波大學(xué)OJ系統(tǒng)C語言題目及答案精講_第5頁
已閱讀5頁,還剩148頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1000整數(shù)輸入輸出練習(xí)

Description

從鍵盤輸入任意兩個整數(shù),再向屏幕輸出這兩個數(shù)據(jù)。

Input

輸入兩個整數(shù)。

Output

輸出這兩個整數(shù)。以空格間隔。

SampleInput

7-9

SampleOutput

7-9

HINT

本題的樣例代碼如下:

#include<stdio.h>

intmain()

(

inta,b;

scanf("%d%d",&a,&b);

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

return0;

)

1001字符輸入輸出練習(xí)1

Description

從鍵盤任意輸入一個字符,再輸出這個字符。

Input

任意輸入一個字符。

Output

輸出該字符。

SampleInput

#

SampleOutput

#

#include<stdio.h>

intmain()

(

chara;

scanf("%c",&a);

printf("%c\n",a);

return0;

1002單組A+B

Description

從鍵盤輸入任意兩個整數(shù)a和b,計算并輸出a+b的值。

Input

從鍵盤輸入兩個整數(shù)a和bo

Output

輸出這兩個數(shù)的和

SampleInput

12

SampleOutput

3

#include<stdio.h>

intmain()

(

inta,b,c;

scanf("%d%d",&a,&b);

c=a+b;

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

return0;

)

1003多組A+B(1)

Description

分別計算多組a+b的值。

Input

輸入包含多組測試數(shù)據(jù)。每行包含一組整數(shù)a,b。當(dāng)輸入為00時,測試結(jié)束,此

時的結(jié)果不輸出。

Output

對于每一對整數(shù)a,b,輸出它們的和,并且每行輸出一個結(jié)果。

SampleInput

15

1020

00

#include<stdio.h>

intmain()

(

inta,b,y;

scanf("%d%d",&a,&b);

while(a!=0||b!=0)

y=a+b;

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

scanf("%d%d",&a,&b);

return0;

1004多組A+B(2)

Description

分別計算多組a+b的值。

Input

第一行包含一個整數(shù)N,表示有N組數(shù)據(jù)。接下來的N行,每行輸入一組a,b數(shù)據(jù)。

Output

對于每一對整數(shù)a,b,輸出它們的和,并且每行輸出一個結(jié)果。

SampleInput

2

15

1020

SampleOutput

6

30

#include<stdio.h>

intmain()

(

inta,b,y,i=1,N;

scanf("%d",&N);

while(i<=N)

(

scanf("%d%d",&a,&b);

y=a+b;

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

i++;

return0;

)

1005計算平均分(1)

Description

輸入一個學(xué)生的3門課成績a,b,c,求出該學(xué)生的平均分。

Input

輸入三個成績a,b,c?

Output

輸出平均值,要求保留1位小數(shù)。

SampleInput

607080

SampleOutput

70.0

#include<stdio.h>

intmain()

(

doublea,b,c,d;

scanf("%lf%lf%lf",&a,&b,&c);

d=(a+b+c)/3.0;

printf("%.1f\n",d);

return0;

)

06計算月收入

Description

某小型外貿(mào)公司員工月收入的計算方法為:月基本工資加當(dāng)月提成。從鍵盤輸入某

員工某月的基本工資和該月的提成,計算并輸出該員工的月收入。

Input

輸入兩個數(shù)分別代表月基本工資和月提成。

Output

計算并輸出月收入(保留2位小數(shù))。

SampleInput

31001200

SampleOutput

4300.00

#include<stdio.h>

intmain()

(

doublea,b,c;

scanf("%lf%lf",&a,&b);

c=a+b;

printf("%.2f\n",c);

return0;

)

1007溫度轉(zhuǎn)換

Description

2011夏季,熱浪席卷了全球的大部分地方。網(wǎng)上報道美國局部地區(qū)的溫度達到了

100華氏度,而我們國內(nèi)的溫度多在38攝氏度左右。那么38攝氏度和100華氏度

到底哪個更熱一些呢?請你幫忙編一個程序來解決這一問題。從鍵盤輸入一個華氏

溫度,求出其對應(yīng)的攝氏溫度。計算公式如下:

c=5*(f-32)/9

c表示攝氏溫度,f表示華氏溫度。

Input

輸入一個華氏溫度值。

Output

輸出對應(yīng)的攝氏溫度值,結(jié)果要求保留2位小數(shù)。

SampleInput

100

SampleOutput

37.78

#include<stdio.h>

intmain()

{

doublec,f;

scanf("%lf",&f);

c=5*(f-32)/9;

printf("%.2f\n",c);

return0;

1008求圓周長和圓面積

Description

從鍵盤輸入一個圓的半徑r,計算并輸出圓周長和圓面積。

Input

輸入一個圓半徑r。

Output

按序輸出圓周長和圓面積,結(jié)果保留兩位小數(shù)。

SampleInput

41

SampleOutput

257.485278.34

HINT

圓周率使用3.14

#include<stdio.h>

#definePI3.14

intmain()

{

doubler,c,s;

scanf("%lf",&r);

c=2*PI*r;

s=PI*r*r;

printf("%.2f%.2f\n",c,s);

return0;

}

1009求圓柱體表面積

Description

輸入圓柱體的底面半徑r和高h,計算圓柱體的表面積并輸出到屏幕上,保留2位

小數(shù)。

Input

輸入圓柱體的底面半徑r和高h。

Output

計算圓柱體的表面積并輸出到屏幕上,保留2位小數(shù)。

SampleInput

42.171.6

SampleOutput

30060.92

HINT

圓周率使用3.14

#include<stdio.h>

#definePI3.14

intmain()

(

doubler,h,s;

scanf("%lf%lf",&r,&h);

s=2*PI*r*r+2*PI*r*h;

printf("%.2f\n",s);

return0;

}

1010計算球體的體積

Description

編寫程序計算球體的體積。參考公式v=(4/3)*PI*r*r*r,其中PI表示圓周率。球體的

半徑r的值由鍵盤輸入,保留2位小數(shù)。

Input

輸入球體半徑r。

Output

計算球體體積并輸出到屏幕上,保留2位小數(shù)。

SampleInput

96.2

SampleOutput

3727293.58

HINT

圓周率使用3.14

#include<stdio.h>

#definePI3.14

intmain()

(

doubler,v;

scanf("%lf",&r);

v=(4/3.0)*PI*r*r*r;

printf("%.2f\n",v);

return0;

)

1011三角形面積

Description

從鍵盤上輸入三角形的3條邊的邊長a,b,c(假定3條邊長可以構(gòu)成三角形),

求三角形面積并輸出到屏幕上。

可利用海倫公式求解:s=sqrt(p*(p-a)*(p-b)*(p-c));其中p=(a+b+c)/2;

Input

輸入三條邊的邊長(假設(shè)3條邊長可以構(gòu)成三角形)。

Output

輸出三角形面積。保留2位小數(shù)。

SampleInput

345

SampleOutput

6.00

#include<stdio.h>

#include<math.h>

intmain()

(

doublea,b,c,p,s;

scanf("%lf%lf%lf",&a,&b,&c);

p=(a+b+c)/2;

s=sqrt(p*(p-a)*(p-b)*(p-c));

printf("%.2f\n",s);

return0;

)

1012判斷三角形

Description

輸入三角形的3條邊a,b,c,如果能構(gòu)成一個三角形,則輸出面積,否則輸出Error。

Input

輸入三個數(shù)a,b,c(浮點類型)。

Output

如果這三條邊能構(gòu)成一個三角形就計算并輸出這個三角形的面積,保留2位小數(shù)。

如果不能構(gòu)成三角形就輸出Erroro

SampleInput

314

SampleOutput

Error

#include<stdio.h>

#include<math.h>

intmain()

(

doublea,b,c,p,s;

scanf("%lf%lf%lf",&a,&b,&c);

if(a+b>c&&fabs(a-b)<c)

(

p=(a+b+c)/2;

s=sqrt(p*(p-a)*(p-b)*(p-c));

printf("%.2f\n",s);

}

else

printf("Error\n");

return0;

1013兩點的距離

Description

從鍵盤輸入數(shù)據(jù)表示平面上任意兩點。計算并輸出這兩點之間的距離。保留2位小

數(shù)。

Input

依次輸入x1,y1和x2,y2分別表示平面上的兩點。

Output

輸出這兩點間的距離。保留2位小數(shù)。

SampleInput

3.14.25.06.0

SampleOutput

2.62

#include<stdio.h>

#include<math.h>

intmain()

(

doublex1,x2,y1,y2,l;

scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);

I=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));

printf("%.2f\n",l);

return0;

1014數(shù)值類型轉(zhuǎn)換

Description

輸入一個雙精度數(shù),輸出它的整型值。

Input

輸入一個雙精度數(shù)

Output

輸出該數(shù)的浮點數(shù)形式(保留2位小數(shù))和它對應(yīng)的整型形式。兩數(shù)之間以空格間

隔。

SampleInput

1.22

SampleOutput

1.221

#include<stdio.h>

#include<math.h>

intmain()

(

doublea;

intb;

scanf("%lf",&a);

b=a;

printf("%.2f%d\n",a,b);

return0;

1015兩數(shù)交換

Description

從鍵盤輸入兩個整數(shù)x,y,然后交換它們的順序并輸出。

Input

輸入兩個整數(shù)x,y(以空格間隔)。

Output

首先輸出x,y的初始值,然后換行輸出交換后的兩數(shù)。同一行內(nèi)的數(shù)據(jù)以空格間隔。

SampleInput

1223

SampleOutput

1223

2312

#include<stdio.h>

#include<math.h>

intmain()

(

inta,b,t;

scanf("%d%d",&a,&b);

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

t=a;

a=b;

b=t;

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

return0;

1016兩數(shù)相除

Description

輸入兩個浮點數(shù)x,y,計算x除以y的值。

Input

輸入兩個浮點數(shù)x,y。

Output

輸出運算結(jié)果的值,要求保留兩位小數(shù)。

SampleInput

23

SampleOutput

0.67

#include<stdio.h>

#include<math.h>

intmain()

(

doublex,y,t;

scanf("%lf%lf",&x,&y);

t=x/y;

printf("%.2f\n",t);

return0;

1017商和余數(shù)

Description

輸入兩個整數(shù)x,y,計算x除以y的商和余數(shù)。

Input

輸入兩個整數(shù)x,y。

Output

輸出商和余數(shù)。以空格間隔。

SampleInput

6514

SampleOutput

49

#include<stdio.h>

#include<math.h>

intmain()

{

intx,y,a,b;

scanf("%d%d",&x,&y);

a=x/y;

b=x%y;

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

return0;

1018植樹問題

Description

某學(xué)校植樹節(jié)開展植樹活動,已知樹苗有m株,參加植樹的同學(xué)有n人(且m>n),

請問每位同學(xué)平均可以植樹幾株?還有幾株剩余?

Input

輸入兩個整數(shù)m和n,分別表示樹苗的數(shù)量和學(xué)生的人數(shù)(m>n)。

Output

輸出每位同學(xué)平均植樹的數(shù)量及剩余的樹苗數(shù)量。

SampleInput

16332

SampleOutput

53

#include<stdio.h>

#include<math.h>

intmain()

(

intm,n,a,b;

scanf("%d%d",&m,&n);

a=m/n;

b=m%n;

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

return0;

1019美元和人民幣

Description

美元越來越貶值了,手上留有太多的美元似乎不是件好事。趕緊算算你的那些美元還值多少

人民幣吧。假設(shè)美元與人民幣的匯率是1美元兌換6.5573元人民幣,編寫程序輸入美元的

金額,輸出能兌換的人民幣金額。

Input

輸入美元的金額。

Output

輸出能兌換的人民幣的數(shù)值。輸出保留2位小數(shù)。

SampleInput

100

SampleOutput

655.73

#include<stdio.h>

#include<math.h>

intmain()

(

doublex,y;

scanf("%lf",&x);

y=x*6.5573;

printf("%.2f\n",y);

return0;

1020計算字符的ASCH碼

Description

編寫程序,從鍵盤輸入一個字符,輸出它的ASCII碼值。

Input

輸入一個字符。

Output

輸出字符對應(yīng)的十進制ASCII碼值。

SampleInput

A

SampleOutput

65

#include<stdio.h>

#include<math.h>

intmain()

(

charx;

scanf("%c",&x);

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

return0;

)

1021單個字母的小寫變大寫

Description

從鍵盤輸入一個小寫字母,將其轉(zhuǎn)換成大寫字母并輸出。。

Input

輸入一個小寫字母。(假設(shè)輸入的一定是小寫字母)

Output

輸出其大寫形式。

SampleInput

a

SampleOutput

A

#include<stdio.h>

#include<math.h>

intmain()

(

charx,y;

scanf("%c",&x);

y=x-32;

printf("%c\n",y);

return0;

}

1022簡單譯碼

Description

從鍵盤輸入兩個字母,對它們進行譯碼。如需要將“Hi”譯成密碼,規(guī)則是:用原字母

后的第3個字母來代替,如H后面第3個字母是K,i后面第3個字母是I,因此“Hi”

應(yīng)譯為“KI”。

Input

從鍵盤輸入兩個字母,分別存放到變量ch1,ch2中。

Output

按上述規(guī)則進行譯碼后輸出,輸出字母間不加間隔。

SampleInput

Hi

SampleOutput

KI

#include<stdio.h>

intmain()

(

chara,b;

scanf("%c%c",&a,&b);

a=a+3;

b=b+3;

printf("%c%c\n",a,b);

return0;

1023字符加減運算

Description

編寫一個程序,求兩個字符之間的加減運算。

Input

連續(xù)輸入三個字符,其中第一個輸入運算符號(+或者-),后兩個輸入字符。如+ab

表示計算字符a與字符b相加的結(jié)果。

Output

輸出兩字符ASCII碼值相加減的結(jié)果。

SampleInput

-ab

SampleOutput

-1

#include<stdio.h>

intmain()

(

inta,b,c;

c=getchar();

a=getchar();

b=getchar();

if(c=='-')

(

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

)

elseif(c=='+')

(

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

)

return0;

)

1024求多項式值(1)

Description

求y=2*x^2+x+8的值。其中,x為浮點數(shù),從鍵盤輸入,經(jīng)過計算后,將y的值輸

出到屏幕上,保留1位小數(shù)。

Input

輸入浮點數(shù)X的值。

Output

計算并輸出y的值,保留1位小數(shù)。

SampleInput

1

SampleOutput

11.0

#include<stdio.h>

#include<math.h>

intmain()

(

doublex,y;

scanf("%lf",&x);

y=2*pow(x,2)+x+8;

printf("%.1f\n",y);

return0;

)

1025求多項式值(2)

Description

編程根據(jù)輸入的x的值,結(jié)合數(shù)學(xué)函數(shù)計算多項式y(tǒng)=3*xA4-2*xA3-xA2+10的結(jié)果,

結(jié)果保留1位小數(shù)。

Input

輸入浮點數(shù)X的值。

Output

計算并輸出多項式的結(jié)果,保留1位小數(shù)。

SampleInput

1

SampleOutput

10.0

HINT

建議用double

#include<stdio.h>

#include<math.h>

intmain()

(

doublex,y;

scanf("%lf",&x);

y=3*pow(x,4)-2*pow(x,3)-pow(x,2)+10;

printf("%,1f\n",y);

return0;

)

1026居民電費

Description

某地居民用電是這樣計算的,正常使用部分每度0.538元,階梯部分每度0.03元。

某用戶家9月份正常部分用電量為x度,階梯部分y度,請編程計算該用戶9月份

應(yīng)該繳納的電費。從鍵盤輸入x和y,輸出應(yīng)繳納電費,保留2位小數(shù)。

Input

輸入X和y的值。

Output

輸出應(yīng)繳納的電費,保留2位小數(shù)。

SampleInput

1010

SampleOutput

5.68

#include<stdio.h>

#include<math.h>

intmain()

(

doublex,y,m;

scanf("%lf%lf",&x,&y);

m=x*0.538+y*0.03;

printf("%.2f\n",m);

return0;

1027存款利息(1)

Description

輸入存款金額money、存期year和年利率rate,根據(jù)公式計算存款到期時的利息

interest(稅前)。公式如下:interest=money(1+rate)Ayear-money

Input

輸入存款金額money、存期year和年利率rate。

Output

輸出到期時的利息,保留2位小數(shù)。

SampleInput

100030.0415

SampleOutput

129.74

HINT

建議用double

#include<stdio.h>

#include<math.h>

intmain()

(

doublemoney,year,rate,interest;

scanf("%lf%lf%lf",&money,&year,&rate);

interest=money*pow(1+rate,year)-money;

printf("%.2f\n",interest);

return0;

)

1028存款利息(2)

Description

輸入人民幣存款年利率i和存款總額s,計算滿一年后本息合計并輸出。

Input

輸入年利率和存款總數(shù)。

Output

計算滿一年后本息合計,保留兩位小數(shù)。

SampleInput

0.03100000

SampleOutput

103000.00

#include<stdio.h>

#include<math.h>

intmain()

(

doublel,S;

scanf("%lf%lf",&l,&S);

S=S*(1+I);

printf("%.2f\n",S);

return0;

1029三位數(shù)的數(shù)位分離

Description

從鍵盤輸入一個任意的3位整數(shù),分別求出其個位、十位和百位上的數(shù)字。

Input

輸入任意的一個三位整數(shù)

Output

依次輸出個位、十位、百位上的數(shù)字。以空格間隔。

SampleInput

367

SampleOutput

763

#include<stdio.h>

#include<math.h>

intmain()

(

inta,b,c,d;

scanf("%d",&a);

b=a%10;

c=(a/10)%10;

d=a/100;

printf("%d%d%d\n",b,c,d);

return0;

1030棋盤上的麥粒

Description

舍罕是古印度的國王,據(jù)說他十分好玩。宰相依達爾為了討好國王,發(fā)明了現(xiàn)今的

國際象棋獻給國王。國王非常喜歡,決定嘉獎宰相,許諾滿足宰相提出的任何要求。

宰相指著棋盤要求:“陛下,請您按棋盤的格子賞賜我一點小麥吧,第一個小格賞我

1粒麥子,第二個小格賞我2粒,第三個小格賞4粒,以后每一小格都比前一個小

格賞的麥子增加一倍,只要把棋盤上全部64個小格按這樣的方法得到的麥子都賞賜

給我,我就心滿意足了”。國王聽了宰相這個“小小”的要求,馬上同意了。

結(jié)果在給宰相麥子時,國王發(fā)現(xiàn)他要付出的比自己想象的要多得多,于是進行了計

算,結(jié)果令他大驚失色。問題是:舍罕王的計算結(jié)果是多少粒麥子。

Input

輸入一個整數(shù)n代表棋盤的格子,該數(shù)字大于1且小于等于64。如輸入2,則表示

有2個格子,第一個格子放1粒,第二個格子放2粒,則2個格子一共需要3粒麥

子。

Output

輸出n個格子需要的麥粒數(shù)。

SampleInput

64

SampleOutput

18446744073709551615

HINT

如果麥粒數(shù)sum如下定義:

unsigned_int64sum;

則計算完成后其輸出形式為:

,,,,

printf(%I64u\n>sum);

#include<stdio.h>

#include<math.h>

intmain()

(

inti,m,a;

unsigned_int64s=0;

scanf("%d",&m);

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

a=pow(2,i);

s+=a;

)

printf("%l64u\n",s);

return0;

)

1031數(shù)據(jù)逆序顯示

Description

輸入一個任意長度的正整數(shù),將該數(shù)逆序輸出。如,輸入正數(shù)237,則逆序顯示的

結(jié)果為732。如輸入230,則逆序顯示的結(jié)果為32。

Input

輸入一個正整數(shù)

Output

該數(shù)的逆序顯示結(jié)果(數(shù)字最前面的0不顯示,如340反轉(zhuǎn)后。要求輸出為43,而

不是043)

SampleInput

123

SampleOutput

321

#include<stdio.h>

#include<math.h>

intmain()

(

inta,b;

scanf("%d",&a);

if(a%10==0)

a=a/10;

while(a>0)

b=a%10;

printf("%d",b);

a=a/10;

printf("\n");

return0;

1032各位數(shù)字求和

Description

編寫一個程序,輸入一個正整數(shù),然后計算組成該數(shù)的各位數(shù)字的和。如,輸入正

數(shù)237,其各位的數(shù)字分別為2,3,7,加起來的和應(yīng)該為2+3+7=12。

Input

輸入一個正整數(shù)。

Output

輸出各位數(shù)字的和

SampleInput

1234

SampleOutput

10

#include<stdio.h>

#include<math.h>

intmain()

(

inta,b,c=0;

scanf("%d",&a);

if(a%10==0)

a=a/10;

while(a>0)

(

b=a%10;

c+=b;

a=a/10;

)

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

return0;

}

1033計算最高位數(shù)字

Description

輸入一個任意長度的正整數(shù),求出其最高位數(shù)字。如,輸入237,則最高位數(shù)字為

2o

Input

輸入一個正整數(shù)。

Output

輸出最高位數(shù)字

SampleInput

4756

SampleOutput

4

#include<stdio.h>

#include<math.h>

intmain()

(

inta;

scanf("%d",&a);

if(a%10==0)

a=a/10;

while(!(a>=0&&a<=9))

(

a=a/10;

)

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

return0;

)

1034任意長度整數(shù)的位數(shù)

Description

輸入一個任意長度的正整數(shù),求出它是幾位數(shù)。

Input

輸入一個任意長度的正整數(shù)。

Output

輸出位數(shù)

SampleInput

o

SampleOutput

1

#include<stdio.h>

#include<math.h>

intmain()

(

inta,i=1;

scanf("%d",&a);

while(!(a>=0&&a<=9))

(

a=a/10;

i+=1;

)

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

return0;

)

1035求整數(shù)的絕對值

Description

輸入一個整數(shù),輸出它的絕對值

Input

輸入一個整數(shù)n

Output

輸出該數(shù)的絕對值

SampleInput

-2

SampleOutput

2

#include<stdio.h>

#include<math.h>

intmain()

(

intn,a;

scanf("%d",&n);

a=fabs(n);

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

return0;

1036符號屬性判斷

Description

從鍵盤輸入任意數(shù)X,根據(jù)其符號屬性,輸出對應(yīng)的y值。

y=-1(x<0)

y=0(x=0)

y=1(x>0)

Input

輸入Xo

Output

輸出y的值

SampleInput

10

SampleOutput

1

HINT

X取浮點類型

#include<stdio.h>

#include<math.h>

intmain()

(

doublex;

inty;

scanf("%lf",&x);

if(x<0)

y=-1;

elseif(x==0)

y=o;

else

y=1;

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

return0;

)

1037正數(shù)負數(shù)

Description

輸入一個整數(shù),判斷該數(shù)是正數(shù)還是負數(shù)。

Input

輸入整數(shù)n。

Output

如果該數(shù)是正數(shù)就輸出“pos田ve",負數(shù)就輸出“negative"(輸出不含雙引號)。

SampleInput

8

SampleOutput

positive

#include<stdio.h>

#include<math.h>

intmain()

(

intn;

scanf("%d",&n);

if(n>0)

printf("positive\n");

elseif(n<0)

printf("negative\n");

return0;

)

1038奇數(shù)偶數(shù)

Description

輸入一個整數(shù),判斷該數(shù)是奇數(shù)還是偶數(shù)。

Input

輸入整數(shù)n。

Output

如果該數(shù)是奇數(shù)就輸出“odd”,偶數(shù)就輸出“even”(輸出不含雙引號)。

SampleInput

8

SampleOutput

even

#include<stdio.h>

#include<math.h>

intmain()

{

intn;

scanf("%d",&n);

if(n%2==0)

printf("even\n");

elseif(n%2==1)

printf("odd\n");

return0;

)

1039奇數(shù)和與偶數(shù)和(1)

Description

輸入正整數(shù)n,計算1~n中的奇數(shù)和以及偶數(shù)和并輸出。

Input

輸入一個正整數(shù)n。

Output

依次輸出奇數(shù)和以及偶數(shù)和,各占一行。

SampleInput

100

SampleOutput

2500

2550

#include<stdio.h>

#include<math.h>

intmain()

(

intn,a=0,b=0,i=1;

scanf("%d",&n);

while(i<=n)

(

if(i%2==1)

a+=i;

else

b+=i;

i++;

)

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

return0;

)

1040奇數(shù)和與偶數(shù)和(2)

Description

輸入正整數(shù)n,然后依次輸入n個正整數(shù),計算其中的奇數(shù)和與偶數(shù)和并輸出。

Input

先輸入一個正整數(shù)n,然后依次輸入n個正整數(shù)。

Output

依次輸出其中的奇數(shù)和以及偶數(shù)和,各占一行。

SampleInput

518964

SampleOutput

10

18

#include<stdio.h>

#include<math.h>

intmain()

(

intn,m,a=0,b=0,i=1;

scanf("%d",&n);

while(i<=n)

(

scanf("%d",&m);

if(m%2==1)

a+=m;

else

b+=m;

i++;

)

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

return0;

)

1041分段函數(shù)(1)

Description

有一函數(shù):

y=x(x<1)

y=3x-1(1<=x<10)

y=4x-2(x>=10)

編寫程序,輸入x,輸出y的值。

Input

輸入一個任意整數(shù)x=

Output

輸出函數(shù)y的值。

SampleInput

3

SampleOutput

8

#include<stdio.h>

#include<math.h>

intmain()

(

intx,y;

scanf("%d",&x);

if(x<1)

y=x;

elseif(x>=1&&x<10)

y=3*x-1;

else

y=4*x-2;

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

return0;

)

1042分段函數(shù)(2)

Description

輸入整數(shù)X,計算并輸出下面分段函數(shù)的值(保留兩位小數(shù))。

y=xA2-2(x>=0)

y=sqrt(5-x)(x<0)

Input

輸入一個整數(shù)Xo

Output

輸出函數(shù)的值。保留2位小數(shù)。

SampleInput

3

SampleOutput

7.00

#include<stdio.h>

#include<math.h>

intmain()

(

intx;

doubley;

scanf("%d",&x);

if(x>=0)

y=pow(x,2)-2;

elseif(x<0)

y=sqrt(5-x);

printf("%.2f\n",y);

return0;

)

1043分段函數(shù)(3)

Description

輸入浮點數(shù)x,計算并輸出下面分段函數(shù)y的值(保留兩位小數(shù))。

y=(x+1)A2+2x+1/x(x<0)

y=sqrt(x)(x>=0)

Input

輸入一個浮點數(shù)。

Output

輸出函數(shù)的值。保留2位小數(shù)。

SampleInput

10

SampleOutput

3.16

#include<stdio.h>

#include<math.h>

intmain()

(

doublex,y;

scanf("%lf",&x);

if(x<0)

y=(x+1)*(x+1)+2*x+(1/x);

elseif(x>=0)

y=sqrt(x);

printf("%.2f\n",y);

return0;

1044第幾象限

Description

從鍵盤輸入2個整數(shù)x、y值表示一個坐標(biāo)點,判斷該坐標(biāo)點處于第幾象限,并輸出

相應(yīng)的結(jié)果。假設(shè)坐標(biāo)點不會處于x軸和y軸上。

Input

輸入x,y值表示一個坐標(biāo)點。坐標(biāo)點不會處于x軸和y軸上。

Output

輸出對應(yīng)的象限,用數(shù)字1,2,3,4分別對應(yīng)四個象限。

SampleInput

11

SampleOutput

1

#include<stdio.h>

#include<math.h>

intmain()

(

doublex;

doubley;

scanf("%lf%lf",&x,&y);

if(x>0&&y>0)

printf("1\n");

elseif(x<0&&y>0)

printf("2\n");

elseif(x<0&&y<0)

printf("3\n");

else

printf("4\n");

return0;

)

1045圓內(nèi)圓外

Description

有一個半徑為10的圓,圓心坐標(biāo)為(0,0),從鍵盤輸入任意點的坐標(biāo)(a,b),判

斷該點在圓內(nèi),在圓外,還是恰巧在圓周上。

Input

輸入a,b(a,b均為整數(shù))值表示一個坐標(biāo)點。

Output

輸出對應(yīng)的信息。in表示在圓內(nèi),out表示在圓外,on表示在圓周上。

SampleInput

11

SampleOutput

in

#include<stdio.h>

#include<math.h>

intmain()

(

inta,b;

doublec;

scanf("%d%d",&a,&b);

c=sqrt(a*a+b*b);

if(c>10)

printf("out\n");

elseif(c==10)

printf("on\n");

else

printf("in\n");

return0;

)

1046判斷英文字母

Description

編寫一個程序,判斷輸入的一個字符是否是英文字母。

Input

任意輸入一個字符。

Output

輸出該字符是否屬于英文字母的信息(大小寫都可以),屬于則輸出YES,不屬于則

輸出NO0

SampleInput

2

SampleOutput

NO

#include<stdio.h>

#include<math.h>

intmain()

(

chara;

scanf("%c",&a);

if(a>='a'&&a<='z,||a>='A'&&a<='Z')

printf("YES\n");

else

printf("NO\n");

return0;

1047單個字母大小寫互換

Description

從鍵盤輸入一個英文字母,要求編寫一個程序,實現(xiàn)字母的大小寫轉(zhuǎn)換。如果輸入

的是小寫字母,則輸出其大寫形式。如果輸入的是大寫字母,則輸出其小寫形式。

若是其他字符則原樣輸出。如輸入A,則輸出a;若輸入#,則依然輸出#。

Input

任意輸入一個英文字母。

Output

輸出對應(yīng)字符的大(?。懽址ㄈ鏏對應(yīng)于a)。

SampleInput

b

SampleOutput

B

#include<stdio.h>

intmain()

{

charx,y;

scanf("%c",&x);

if(x>='A'&&x<='Z')

(

y=x+32;

printf("%c\n",y);

)

elseif(x>='a'&&x<='z')

(

y=x-32;

printf("%c\n",y);

)

else

(

y=x;

printf("%c\n",y);

)

return0;

1048ASCII碼對應(yīng)的英文字母

Description

從鍵盤輸入一個代表ASCII碼值的數(shù)字(<127),若該數(shù)字對應(yīng)的字符是英文字母,

則輸出其字母的形式,否則輸出數(shù)字本身。

Input

輸入一個數(shù)字(小于127)?

Output

輸出該ASCII值對應(yīng)的英文字母。

SampleInput

98

SampleOutput

b

#include<stdio.h>

#include<math.h>

intmain()

(

inta;

scanf("%d",&a);

if(a>='a'&&a<='z'||a>='A'&&a<='Z')

printf("%c\n",a);

else

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

return0;

1049單個字符判斷

Description

從鍵盤輸入一個字符,判斷該字符是否大寫字母、小寫字母、數(shù)字字符或其他字符。

分別輸出對應(yīng)的提示信息。

Input

輸入一個字符。

Output

如果該字符是大寫字母,則輸出“upper;若是小寫字母,則輸出“l(fā)ower;若是數(shù)字

字符,則輸出“digit";若是其他字符,則輸出“other1'。(輸出不含雙引號)。

SampleInput

1

SampleOutput

digit

#include<stdio.h>

intmain()

(

chara;

scanf("%c",&a);

if(a>='A'&&a<='Z')

printf("upper\n");

elseif(a>='a'&&a<='z')

printf("lower\n");

elseif(a>='0'&&a<='9')

printf("digit\n");

else

printf("other\n");

return0;

)

1050字符個數(shù)統(tǒng)計

Description

統(tǒng)計從鍵盤輸入的一行字符的個數(shù)(字符串長度小于等于1000)。輸入以換行符結(jié)

束。

Input

輸入一行字符,以換行符作為結(jié)束標(biāo)記。

Output

統(tǒng)計字符的個數(shù)并輸出。不包括換行符。

SampleInput

HelloBoy.

SampleOutput

10

#include<stdio.h>

intmain()

(

chara;

inti=0;

scanf("%c",&a);

while(a!='\n')

(

i++;

scanf("%c",&a);

)

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

return0;

)

1051字母統(tǒng)計

Description

編寫程序:輸入一行字符串(字符串長度小于等于1000),統(tǒng)計出其中的英文字母

的個數(shù)。以輸入換行符作為結(jié)束。

Input

輸入一行字符串,以換行符結(jié)束。

Output

輸出字母的個數(shù)

SampleInput

HelloMr.007,mynameis@#$%

SampleOutput

15

#include<stdio.h>

intmain()

(

chara;

inti=0;

scanf("%c",&a);

while(a!='\n')

(

if(a>='a'&&a<='z'||a>='A'&&a<='Z')

i++;

scanf("%c",&a);

)

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

return0;

)

1052數(shù)字字符統(tǒng)計

Description

編寫程序:輸入一行字符串(長度小于等于1000),統(tǒng)計出其中的數(shù)字字符的個數(shù)。

以輸入換行字符作為結(jié)束。

Input

輸入一行字符串,以換行符結(jié)束。

Output

輸出數(shù)字字符的個數(shù)

SampleInput

HelloMr.007,mynameis@#$%

SampleOutput

3

#include<stdio.h>

intmain()

(

chara;

inti=0;

scanf("%c",&a);

while(a!='\n')

(

if(a>='0'&&a<='9')

i++;

scanf("%c",&a);

}

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

return0;

)

1053字符分類統(tǒng)計

Description

從鍵盤輸入一行字符串(字符串長度小于等于1000),統(tǒng)計出其中的英文字母、空

格、數(shù)字和其它字符的個數(shù)。輸入以換行符結(jié)束。

Input

輸入一行字符串,以換行符作為結(jié)束標(biāo)記。

Output

按字母、數(shù)字、空格、其它字符的順序輸出各類字符的統(tǒng)計結(jié)果。為0的項目也要

輸出。用空格隔開(最后一個數(shù)字的后面無空格)。

SampleInput

HelloBoy.Itis30July.

SampleOutput

16252

#include<stdio.h>

intmain()

(

chare;

inta=0,b=0,c=0,d=0;

scanf("%c",&e);

while(e!='\n')

(

if(e>='a'&&e<='z'||e>='A'&&e<='Z')

a++;

elseif(e>='0'&&e<='9')

b++;

elseif(e=='')

C++;

else

d++;

scanf("%c",&e);

)

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

return0;

1054相鄰字符判相等

Description

輸入一行字符串(長度小于等于1000),以換行符結(jié)束。判斷其中是否存在相鄰兩

個字符相同的情形,若有,則輸出該相同的字符并結(jié)束程序(只需輸出第一種相等的

字符即可)。否則輸出No。

Input

輸入一行字符。

Output

若相鄰字符相等則輸出該相同的字符,否則輸出Noo

SampleInput

helloanna

SampleOutput

#include<stdio.h>

#include<math.h>

#defineN1000

intmain()

(

inti=0,a=0;

charstr[N];

scanf("%s",str);

while(str[i]!='\0')

(

if(str[i]==str[i+1])

{printf("%c\n",str[i]);a++;break;}

i++;

)

if(a==0)

printf("No\n");

return0;

}

1055統(tǒng)計行數(shù)

Description

編寫一個程序,要求統(tǒng)計輸入文本的行數(shù)。

Input

每行輸入任意長度的字符串(每一行的字符串的長度小于等于1000),以輸入僅由

同號構(gòu)成的行作為結(jié)束,@所在的行不計入行數(shù)(文本)

Output

輸出文本的行數(shù)。

SampleInput

Helloworld!

IcomefromChina!

I'maboy!

@

SampleOutput

3

#include<stdio.h>

#include<math.h>

#include<string.h>

#definen1000

intmain()

(

charstr[n];

inti=O,v=O,j;

gets(str);

j=strlen(str);

while(j!=1||str[i]!='@')

(

v++;

gets(str);

j=strlen(str);

}

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

return0;

)

1056特定字符出現(xiàn)次數(shù)

Description

從鍵盤輸入一個字符串(長度小于等于1000),以換行結(jié)束。再輸入一個特定字符

ch,判斷ch在字符串中的出現(xiàn)次數(shù)。

Input

從鍵盤輸入一個字符串,以換行結(jié)束。再輸入一個特定字符ch。

Output

輸出ch在字符串中的出現(xiàn)次數(shù)。

SampleInput

THISISATEST

I

SampleOutput

2

#include<stdio.h>

#include<math.h>

#include<string.h>

#definen1000

intmain()

(

charstr[n],ch;

inti,j,v=0;

gets(str);

j=strlen(str);

scanf("%c",&ch);

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

(

if(str[i]==ch)

v++;

)

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

return0;

1057字符變換

Description

輸入任意一個字符串(長度小于等于1000),將該字符串中的大寫英文字母轉(zhuǎn)換成

對應(yīng)的小寫英文字母,而將小寫英文字母轉(zhuǎn)換成對應(yīng)的大寫英文字母,其余字符不

變,然后輸出轉(zhuǎn)換后的字符串。

Input

輸入一行字符串,以換行結(jié)束。

Output

輸出改編后的結(jié)果。

SampleInput

Iamastudent.Iam19.

SampleOutput

iAMASTUDENT.iAM19.

HINT

#include<stdio.h>

#include<math.h>

#defineN1000

intmain()

(

charstr[N];

inti=0;

gets(str);

while(str[i]!='\0')

(

if(str[i]>='a'&&str[i]<='z')str[i]-=32;

elseif(str[i]>='A'&&str[i]<='Z')str[i]+=32;

i++;

}

puts(str);

return0;

1058成績合格問題

Description

輸入一個整數(shù)表示課程成績,判斷學(xué)生成績是否合格:當(dāng)分?jǐn)?shù)大于等于60分時,輸

出合格信息,在60分以下的,輸出不合格信息。

Input

輸入一個成績。

Output

如果該數(shù)大于等于60,則輸出“pass”,否則輸出“failure”。(輸出不含雙引號)。

SampleInput

61

SampleOutput

pass

#include<stdio.h>

intmain()

(

inta;

scanf("%d",&a);

if(a>=60)

printf("pass\n");

else

printf("failure\n");

return0;

)

1059成績評級1

Description

對學(xué)生成績(百分制)評等級:80分(含)以上為A等,60~79為B等,小于60

分為C等。

Input

輸入一個整數(shù)形式的百分制的成績(0-100)?

Output

如果該成績大于等于80則輸出A,在60~

溫馨提示

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

評論

0/150

提交評論