《寧波大學(xué)OJ系統(tǒng)C語言題目及答案精講》由會員分享,可在線閱讀,更多相關(guān)《寧波大學(xué)OJ系統(tǒng)C語言題目及答案精講(154頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
C++資料復(fù)習(xí)
1000 整數(shù)輸入輸出練習(xí)
Description
從鍵盤輸入任意兩個整數(shù),再向屏幕輸出這兩個數(shù)據(jù)。
Input
輸入兩個整數(shù)。
Output
輸出這兩個整數(shù)。以空格間隔。
Sample Input
7 -9
Sample Output
7 -9
HINT
本題的樣例代碼如下:
#include
int main()
{
int a,b;
scanf("%d%d",&a,&b);
printf("%d %d\n",a,b);
return 0;
}
1001 字符輸入輸出練習(xí)1
Description
從鍵盤任意輸入一個字符,再輸出這個字符。
Input
任意輸入一個字符。
Output
輸出該字符。
Sample Input
#
Sample Output
#
#include
int main()
{
char a;
scanf("%c",&a);
printf("%c\n",a);
return 0;
}
1002 單組A+B
Description
從鍵盤輸入任意兩個整數(shù)a和b,計(jì)算并輸出a+b的值。
Input
從鍵盤輸入兩個整數(shù)a和b。
Output
輸出這兩個數(shù)的和
Sample Input
1 2
Sample Output
3
#include
int main()
{
int a,b,c;
scanf("%d%d",&a,&b);
c=a+b;
printf("%d\n",c);
return 0;
}
1003 多組A+B(1)
Description
分別計(jì)算多組a+b的值。
Input
輸入包含多組測試數(shù)據(jù)。每行包含一組整數(shù)a,b。當(dāng)輸入為0 0 時,測試結(jié)束,此時的結(jié)果不輸出。
Output
對于每一對整數(shù)a,b,輸出它們的和,并且每行輸出一個結(jié)果。
Sample Input
1 5
10 20
0 0
#include
int main()
{
int a,b,y;
scanf("%d%d",&a,&b);
while(a!=0||b!=0)
{
y=a+b;
printf("%d\n",y);
scanf("%d%d",&a,&b);
}
return 0;
}
1004 多組A+B(2)
Description
分別計(jì)算多組a+b的值。
Input
第一行包含一個整數(shù)N,表示有N組數(shù)據(jù)。接下來的N行,每行輸入一組a,b數(shù)據(jù)。
Output
對于每一對整數(shù)a,b,輸出它們的和,并且每行輸出一個結(jié)果。
Sample Input
2
1 5
10 20
Sample Output
6
30
#include
int main()
{
int a,b,y,i=1,N;
scanf("%d",&N);
while(i<=N)
{
scanf("%d%d",&a,&b);
y=a+b;
printf("%d\n",y);
i++;
}
return 0;
}
1005 計(jì)算平均分(1)
Description
輸入一個學(xué)生的3門課成績a,b,c,求出該學(xué)生的平均分。
Input
輸入三個成績a,b,c。
Output
輸出平均值,要求保留1位小數(shù)。
Sample Input
60 70 80
Sample Output
70.0
#include
int main()
{
double a,b,c,d;
scanf("%lf%lf%lf",&a,&b,&c);
d=(a+b+c)/3.0;
printf("%.1f\n",d);
return 0;
}
06 計(jì)算月收入
Description
某小型外貿(mào)公司員工月收入的計(jì)算方法為:月基本工資加當(dāng)月提成。從鍵盤輸入某員工某月的基本工資和該月的提成,計(jì)算并輸出該員工的月收入。
Input
輸入兩個數(shù)分別代表月基本工資和月提成。
Output
計(jì)算并輸出月收入(保留2位小數(shù))。
Sample Input
3100 1200
Sample Output
4300.00
#include
int main()
{
double a,b,c;
scanf("%lf%lf",&a,&b);
c=a+b;
printf("%.2f\n",c);
return 0;
}
1007 溫度轉(zhuǎn)換
Description
2011夏季,熱浪席卷了全球的大部分地方。網(wǎng)上報(bào)道美國局部地區(qū)的溫度達(dá)到了100華氏度,而我們國內(nèi)的溫度多在38攝氏度左右。那么38攝氏度和100華氏度到底哪個更熱一些呢?請你幫忙編一個程序來解決這一問題。從鍵盤輸入一個華氏溫度,求出其對應(yīng)的攝氏溫度。計(jì)算公式如下:
c=5*(f-32)/9
c表示攝氏溫度,f表示華氏溫度。
Input
輸入一個華氏溫度值。
Output
輸出對應(yīng)的攝氏溫度值,結(jié)果要求保留2位小數(shù)。
Sample Input
100
Sample Output
37.78
#include
int main()
{
double c,f;
scanf("%lf",&f);
c=5*(f-32)/9;
printf("%.2f\n",c);
return 0;
}
1008 求圓周長和圓面積
Description
從鍵盤輸入一個圓的半徑r,計(jì)算并輸出圓周長和圓面積。
Input
輸入一個圓半徑r。
Output
按序輸出圓周長和圓面積,結(jié)果保留兩位小數(shù)。
Sample Input
41
Sample Output
257.48 5278.34
HINT
圓周率使用3.14
#include
#define PI 3.14
int main()
{
double r,c,s;
scanf("%lf",&r);
c=2*PI*r;
s=PI*r*r;
printf("%.2f %.2f\n",c,s);
return 0;
}
1009 求圓柱體表面積
Description
輸入圓柱體的底面半徑r和高h(yuǎn),計(jì)算圓柱體的表面積并輸出到屏幕上,保留2位小數(shù)。
Input
輸入圓柱體的底面半徑r和高h(yuǎn)。
Output
計(jì)算圓柱體的表面積并輸出到屏幕上,保留2位小數(shù)。
Sample Input
42.1 71.6
Sample Output
30060.92
HINT
圓周率使用3.14
#include
#define PI 3.14
int main()
{
double r,h,s;
scanf("%lf%lf",&r,&h);
s=2*PI*r*r+2*PI*r*h;
printf("%.2f\n",s);
return 0;
}
1010 計(jì)算球體的體積
Description
編寫程序計(jì)算球體的體積。參考公式v=(4/3)*PI*r*r*r,其中PI表示圓周率。球體的半徑r的值由鍵盤輸入,保留2位小數(shù)。
Input
輸入球體半徑r。
Output
計(jì)算球體體積并輸出到屏幕上,保留2位小數(shù)。
Sample Input
96.2
Sample Output
3727293.58
HINT
圓周率使用3.14
#include
#define PI 3.14
int main()
{
double r,v;
scanf("%lf",&r);
v=(4/3.0)*PI*r*r*r;
printf("%.2f\n",v);
return 0;
}
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ù)。
Sample Input
3 4 5
Sample Output
6.00
#include
#include
int main()
{
double a,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);
return 0;
}
1012 判斷三角形
Description
輸入三角形的3條邊a,b,c,如果能構(gòu)成一個三角形,則輸出面積,否則輸出Error。
Input
輸入三個數(shù)a,b,c(浮點(diǎn)類型)。
Output
如果這三條邊能構(gòu)成一個三角形就計(jì)算并輸出這個三角形的面積,保留2位小數(shù)。如果不能構(gòu)成三角形就輸出Error。
Sample Input
3 1 4
Sample Output
Error
#include
#include
int main()
{
double a,b,c,p,s;
scanf("%lf%lf%lf",&a,&b,&c);
if(a+b>c&&fabs(a-b)
#include
int main()
{
double x1,x2,y1,y2,l;
scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);
l=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
printf("%.2f\n",l);
return 0;
}
1014 數(shù)值類型轉(zhuǎn)換
Description
輸入一個雙精度數(shù),輸出它的整型值。
Input
輸入一個雙精度數(shù)
Output
輸出該數(shù)的浮點(diǎn)數(shù)形式(保留2位小數(shù))和它對應(yīng)的整型形式。兩數(shù)之間以空格間隔。
Sample Input
1.22
Sample Output
1.22 1
#include
#include
int main()
{
double a;
int b;
scanf("%lf",&a);
b=a;
printf("%.2f %d\n",a,b);
return 0;
}
1015 兩數(shù)交換
Description
從鍵盤輸入兩個整數(shù)x,y,然后交換它們的順序并輸出。
Input
輸入兩個整數(shù)x,y(以空格間隔)。
Output
首先輸出x,y的初始值,然后換行輸出交換后的兩數(shù)。同一行內(nèi)的數(shù)據(jù)以空格間隔。
Sample Input
12 23
Sample Output
12 23
23 12
#include
#include
int main()
{
int a,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);
return 0;
}
1016 兩數(shù)相除
Description
輸入兩個浮點(diǎn)數(shù)x,y,計(jì)算x除以y的值。
Input
輸入兩個浮點(diǎn)數(shù)x,y。
Output
輸出運(yùn)算結(jié)果的值,要求保留兩位小數(shù)。
Sample Input
2 3
Sample Output
0.67
#include
#include
int main()
{
double x,y,t;
scanf("%lf%lf",&x,&y);
t=x/y;
printf("%.2f\n",t);
return 0;
}
1017 商和余數(shù)
Description
輸入兩個整數(shù)x,y,計(jì)算x除以y的商和余數(shù)。
Input
輸入兩個整數(shù)x,y。
Output
輸出商和余數(shù)。以空格間隔。
Sample Input
65 14
Sample Output
4 9
#include
#include
int main()
{
int x,y,a,b;
scanf("%d%d",&x,&y);
a=x/y;
b=x%y;
printf("%d %d\n",a,b);
return 0;
}
1018 植樹問題
Description
某學(xué)校植樹節(jié)開展植樹活動,已知樹苗有m株,參加植樹的同學(xué)有n人(且m>n),請問每位同學(xué)平均可以植樹幾株?還有幾株剩余?
Input
輸入兩個整數(shù)m和n,分別表示樹苗的數(shù)量和學(xué)生的人數(shù)(m>n)。
Output
輸出每位同學(xué)平均植樹的數(shù)量及剩余的樹苗數(shù)量。
Sample Input
163 32
Sample Output
5 3
#include
#include
int main()
{
int m,n,a,b;
scanf("%d%d",&m,&n);
a=m/n;
b=m%n;
printf("%d %d\n",a,b);
return 0;
}
1019 美元和人民幣
Description
美元越來越貶值了,手上留有太多的美元似乎不是件好事。趕緊算算你的那些美元還值多少人民幣吧。假設(shè)美元與人民幣的匯率是1美元兌換6.5573元人民幣,編寫程序輸入美元的金額,輸出能兌換的人民幣金額。
Input
輸入美元的金額。
Output
輸出能兌換的人民幣的數(shù)值。輸出保留2位小數(shù)。
Sample Input
100
Sample Output
655.73
#include
#include
int main()
{
double x,y;
scanf("%lf",&x);
y=x*6.5573;
printf("%.2f\n",y);
return 0;
}
1020 計(jì)算字符的ASCII碼
Description
編寫程序,從鍵盤輸入一個字符,輸出它的ASCII碼值。
Input
輸入一個字符。
Output
輸出字符對應(yīng)的十進(jìn)制ASCII碼值。
Sample Input
A
Sample Output
65
#include
#include
int main()
{
char x;
scanf("%c",&x);
printf("%d\n",x);
return 0;
}
1021 單個字母的小寫變大寫
Description
從鍵盤輸入一個小寫字母,將其轉(zhuǎn)換成大寫字母并輸出。。
Input
輸入一個小寫字母。(假設(shè)輸入的一定是小寫字母)
Output
輸出其大寫形式。
Sample Input
a
Sample Output
A
#include
#include
int main()
{
char x,y;
scanf("%c",&x);
y=x-32;
printf("%c\n",y);
return 0;
}
1022 簡單譯碼
Description
從鍵盤輸入兩個字母,對它們進(jìn)行譯碼。如需要將”Hi”譯成密碼,規(guī)則是:用原字母后的第3個字母來代替,如H后面第3個字母是K,i后面第3個字母是l,因此“Hi”應(yīng)譯為“Kl”。
Input
從鍵盤輸入兩個字母,分別存放到變量ch1,ch2中。
Output
按上述規(guī)則進(jìn)行譯碼后輸出,輸出字母間不加間隔。
Sample Input
Hi
Sample Output
Kl
#include
int main()
{
char a,b;
scanf("%c%c",&a,&b);
a=a+3;
b=b+3;
printf("%c%c\n",a,b);
return 0;
}
1023 字符加減運(yùn)算
Description
編寫一個程序,求兩個字符之間的加減運(yùn)算。
Input
連續(xù)輸入三個字符,其中第一個輸入運(yùn)算符號(+或者-),后兩個輸入字符。如+ab表示計(jì)算字符a與字符b相加的結(jié)果。
Output
輸出兩字符ASCII碼值相加減的結(jié)果。
Sample Input
-ab
Sample Output
-1
#include
int main()
{
int a,b,c;
c=getchar();
a=getchar();
b=getchar();
if(c==-)
{
printf("%d\n",a-b);
}
else if(c==+)
{
printf("%d\n",a+b);
}
return 0;
}
1024 求多項(xiàng)式值(1)
Description
求y=2*x^2+x+8的值。其中,x為浮點(diǎn)數(shù),從鍵盤輸入,經(jīng)過計(jì)算后,將y的值輸出到屏幕上,保留1位小數(shù)。
Input
輸入浮點(diǎn)數(shù)x的值。
Output
計(jì)算并輸出y的值,保留1位小數(shù)。
Sample Input
1
Sample Output
11.0
#include
#include
int main()
{
double x,y;
scanf("%lf",&x);
y=2*pow(x,2)+x+8;
printf("%.1f\n",y);
return 0;
}
1025 求多項(xiàng)式值(2)
Description
編程根據(jù)輸入的x的值,結(jié)合數(shù)學(xué)函數(shù)計(jì)算多項(xiàng)式y(tǒng)=3*x^4-2*x^3-x^2+10的結(jié)果,結(jié)果保留1位小數(shù)。
Input
輸入浮點(diǎn)數(shù)x的值。
Output
計(jì)算并輸出多項(xiàng)式的結(jié)果,保留1位小數(shù)。
Sample Input
1
Sample Output
10.0
HINT
建議用double
#include
#include
int main()
{
double x,y;
scanf("%lf",&x);
y=3*pow(x,4)-2*pow(x,3)-pow(x,2)+10;
printf("%.1f\n",y);
return 0;
}
1026 居民電費(fèi)
Description
某地居民用電是這樣計(jì)算的,正常使用部分每度0.538元,階梯部分每度0.03元。某用戶家9月份正常部分用電量為x度,階梯部分y度,請編程計(jì)算該用戶9月份應(yīng)該繳納的電費(fèi)。從鍵盤輸入x和y,輸出應(yīng)繳納電費(fèi),保留2位小數(shù)。
Input
輸入x和y的值。
Output
輸出應(yīng)繳納的電費(fèi),保留2位小數(shù)。
Sample Input
10 10
Sample Output
5.68
#include
#include
int main()
{
double x,y,m;
scanf("%lf%lf",&x,&y);
m=x*0.538+y*0.03;
printf("%.2f\n",m);
return 0;
}
1027 存款利息(1)
Description
輸入存款金額money、存期year和年利率rate,根據(jù)公式計(jì)算存款到期時的利息interest(稅前)。公式如下: interest=money(1+rate)^year-money
Input
輸入存款金額money、存期year和年利率rate。
Output
輸出到期時的利息,保留2位小數(shù)。
Sample Input
1000 3 0.0415
Sample Output
129.74
HINT
建議用double
#include
#include
int main()
{
double money,year,rate,interest;
scanf("%lf%lf%lf",&money,&year,&rate);
interest=money*pow(1+rate,year)-money;
printf("%.2f\n",interest);
return 0;
}
1028存款利息(2)
Description
輸入人民幣存款年利率I和存款總額S,計(jì)算滿一年后本息合計(jì)并輸出。
Input
輸入年利率和存款總數(shù)。
Output
計(jì)算滿一年后本息合計(jì),保留兩位小數(shù)。
Sample Input
0.03 100000
Sample Output
103000.00
#include
#include
int main()
{
double I,S;
scanf("%lf%lf",&I,&S);
S=S*(1+I);
printf("%.2f\n",S);
return 0;
}
1029 三位數(shù)的數(shù)位分離
Description
從鍵盤輸入一個任意的3位整數(shù),分別求出其個位、十位和百位上的數(shù)字。
Input
輸入任意的一個三位整數(shù)
Output
依次輸出個位、十位、百位上的數(shù)字。以空格間隔。
Sample Input
367
Sample Output
7 6 3
#include
#include
int main()
{
int a,b,c,d;
scanf("%d",&a);
b=a%10;
c=(a/10)%10;
d=a/100;
printf("%d %d %d\n",b,c,d);
return 0;
}
1030 棋盤上的麥粒
Description
舍罕是古印度的國王,據(jù)說他十分好玩。宰相依達(dá)爾為了討好國王,發(fā)明了現(xiàn)今的國際象棋獻(xiàn)給國王。國王非常喜歡,決定嘉獎宰相,許諾滿足宰相提出的任何要求。宰相指著棋盤要求:“陛下,請您按棋盤的格子賞賜我一點(diǎn)小麥吧,第一個小格賞我1粒麥子,第二個小格賞我2粒,第三個小格賞4粒,以后每一小格都比前一個小格賞的麥子增加一倍,只要把棋盤上全部64個小格按這樣的方法得到的麥子都賞賜給我,我就心滿意足了”。國王聽了宰相這個“小小”的要求,馬上同意了。
結(jié)果在給宰相麥子時,國王發(fā)現(xiàn)他要付出的比自己想象的要多得多,于是進(jìn)行了計(jì)算,結(jié)果令他大驚失色。問題是:舍罕王的計(jì)算結(jié)果是多少粒麥子。
Input
輸入一個整數(shù)n代表棋盤的格子,該數(shù)字大于1且小于等于64。如輸入2,則表示有2個格子,第一個格子放1粒,第二個格子放2粒,則2個格子一共需要3粒麥子。
Output
輸出n個格子需要的麥粒數(shù)。
Sample Input
64
Sample Output
18446744073709551615
HINT
如果麥粒數(shù)sum如下定義:
unsigned __int64 sum;
則計(jì)算完成后其輸出形式為:
printf("%I64u\n", sum);
#include
#include
int main()
{
int i,m,a;
unsigned __int64 s=0;
scanf("%d",&m);
for(i=0;i
#include
int main()
{
int a,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");
return 0;
}
1032 各位數(shù)字求和
Description
編寫一個程序,輸入一個正整數(shù),然后計(jì)算組成該數(shù)的各位數(shù)字的和。如,輸入正數(shù)237,其各位的數(shù)字分別為2,3,7,加起來的和應(yīng)該為2+3+7=12。
Input
輸入一個正整數(shù)。
Output
輸出各位數(shù)字的和
Sample Input
1234
Sample Output
10
#include
#include
int main()
{
int a,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);
return 0;
}
1033 計(jì)算最高位數(shù)字
Description
輸入一個任意長度的正整數(shù),求出其最高位數(shù)字。如,輸入237,則最高位數(shù)字為2。
Input
輸入一個正整數(shù)。
Output
輸出最高位數(shù)字
Sample Input
4756
Sample Output
4
#include
#include
int main()
{
int a;
scanf("%d",&a);
if(a%10==0)
a=a/10;
while(!(a>=0&&a<=9))
{
a=a/10;
}
printf("%d\n",a);
return 0;
}
1034 任意長度整數(shù)的位數(shù)
Description
輸入一個任意長度的正整數(shù),求出它是幾位數(shù)。
Input
輸入一個任意長度的正整數(shù)。
Output
輸出位數(shù)
Sample Input
0
Sample Output
1
#include
#include
int main()
{
int a,i=1;
scanf("%d",&a);
while(!(a>=0&&a<=9))
{
a=a/10;
i+=1;
}
printf("%d\n",i);
return 0;
}
1035 求整數(shù)的絕對值
Description
輸入一個整數(shù),輸出它的絕對值
Input
輸入一個整數(shù)n
Output
輸出該數(shù)的絕對值
Sample Input
-2
Sample Output
2
#include
#include
int main()
{
int n,a;
scanf("%d",&n);
a=fabs(n);
printf("%d\n",a);
return 0;
}
1036 符號屬性判斷
Description
從鍵盤輸入任意數(shù)x,根據(jù)其符號屬性,輸出對應(yīng)的y值。
y=-1 (x<0)
y=0 (x=0)
y=1 (x>0)
Input
輸入x。
Output
輸出y的值
Sample Input
10
Sample Output
1
HINT
x取浮點(diǎn)類型
#include
#include
int main()
{
double x;
int y;
scanf("%lf",&x);
if(x<0)
y=-1;
else if(x==0)
y=0;
else
y=1;
printf("%d\n",y);
return 0;
}
1037 正數(shù)負(fù)數(shù)
Description
輸入一個整數(shù),判斷該數(shù)是正數(shù)還是負(fù)數(shù)。
Input
輸入整數(shù)n。
Output
如果該數(shù)是正數(shù)就輸出“positive”,負(fù)數(shù)就輸出“negative”(輸出不含雙引號)。
Sample Input
8
Sample Output
positive
#include
#include
int main()
{
int n;
scanf("%d",&n);
if(n>0)
printf("positive\n");
else if(n<0)
printf("negative\n");
return 0;
}
1038 奇數(shù)偶數(shù)
Description
輸入一個整數(shù),判斷該數(shù)是奇數(shù)還是偶數(shù)。
Input
輸入整數(shù)n。
Output
如果該數(shù)是奇數(shù)就輸出“odd”,偶數(shù)就輸出“even”(輸出不含雙引號)。
Sample Input
8
Sample Output
even
#include
#include
int main()
{
int n;
scanf("%d",&n);
if(n%2==0)
printf("even\n");
else if(n%2==1)
printf("odd\n");
return 0;
}
1039 奇數(shù)和與偶數(shù)和(1)
Description
輸入正整數(shù)n,計(jì)算1~n中的奇數(shù)和以及偶數(shù)和并輸出。
Input
輸入一個正整數(shù)n。
Output
依次輸出奇數(shù)和以及偶數(shù)和,各占一行。
Sample Input
100
Sample Output
2500
2550
#include
#include
int main()
{
int n,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);
return 0;
}
1040 奇數(shù)和與偶數(shù)和(2)
Description
輸入正整數(shù)n,然后依次輸入n個正整數(shù),計(jì)算其中的奇數(shù)和與偶數(shù)和并輸出。
Input
先輸入一個正整數(shù)n,然后依次輸入n個正整數(shù)。
Output
依次輸出其中的奇數(shù)和以及偶數(shù)和,各占一行。
Sample Input
5 1 8 9 6 4
Sample Output
10
18
#include
#include
int main()
{
int n,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);
return 0;
}
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的值。
Sample Input
3
Sample Output
8
#include
#include
int main()
{
int x,y;
scanf("%d",&x);
if(x<1)
y=x;
else if(x>=1&&x<10)
y=3*x-1;
else
y=4*x-2;
printf("%d\n",y);
return 0;
}
1042 分段函數(shù)(2)
Description
輸入整數(shù)x,計(jì)算并輸出下面分段函數(shù)的值(保留兩位小數(shù))。
y=x^2-2 (x>=0)
y=sqrt(5-x) (x<0)
Input
輸入一個整數(shù)x。
Output
輸出函數(shù)的值。保留2位小數(shù)。
Sample Input
3
Sample Output
7.00
#include
#include
int main()
{
int x;
double y;
scanf("%d",&x);
if(x>=0)
y=pow(x,2)-2;
else if(x<0)
y=sqrt(5-x);
printf("%.2f\n",y);
return 0;
}
1043 分段函數(shù)(3)
Description
輸入浮點(diǎn)數(shù)x,計(jì)算并輸出下面分段函數(shù)y的值(保留兩位小數(shù))。
y=(x+1)^2+2x+1/x (x<0)
y=sqrt(x) (x>=0)
Input
輸入一個浮點(diǎn)數(shù)。
Output
輸出函數(shù)的值。保留2位小數(shù)。
Sample Input
10
Sample Output
3.16
#include
#include
int main()
{
double x,y;
scanf("%lf",&x);
if(x<0)
y=(x+1)*(x+1)+2*x+(1/x);
else if(x>=0)
y=sqrt(x);
printf("%.2f\n",y);
return 0;
}
1044 第幾象限
Description
從鍵盤輸入2個整數(shù)x、y值表示一個坐標(biāo)點(diǎn),判斷該坐標(biāo)點(diǎn)處于第幾象限,并輸出相應(yīng)的結(jié)果。假設(shè)坐標(biāo)點(diǎn)不會處于x軸和y軸上。
Input
輸入x,y值表示一個坐標(biāo)點(diǎn)。坐標(biāo)點(diǎn)不會處于x軸和y軸上。
Output
輸出對應(yīng)的象限,用數(shù)字1,2,3,4分別對應(yīng)四個象限。
Sample Input
1 1
Sample Output
1
#include
#include
int main()
{
double x;
double y;
scanf("%lf%lf",&x,&y);
if(x>0&&y>0)
printf("1\n");
else if(x<0&&y>0)
printf("2\n");
else if(x<0&&y<0)
printf("3\n");
else
printf("4\n");
return 0;
}
1045 圓內(nèi)圓外
Description
有一個半徑為10的圓,圓心坐標(biāo)為(0,0),從鍵盤輸入任意點(diǎn)的坐標(biāo)(a,b),判斷該點(diǎn)在圓內(nèi),在圓外,還是恰巧在圓周上。
Input
輸入a,b(a,b均為整數(shù))值表示一個坐標(biāo)點(diǎn)。
Output
輸出對應(yīng)的信息。in表示在圓內(nèi),out表示在圓外,on表示在圓周上。
Sample Input
1 1
Sample Output
in
#include
#include
int main()
{
int a,b;
double c;
scanf("%d%d",&a,&b);
c=sqrt(a*a+b*b);
if(c>10)
printf("out\n");
else if(c==10)
printf("on\n");
else
printf("in\n");
return 0;
}
1046 判斷英文字母
Description
編寫一個程序,判斷輸入的一個字符是否是英文字母。
Input
任意輸入一個字符。
Output
輸出該字符是否屬于英文字母的信息(大小寫都可以),屬于則輸出YES,不屬于則輸出NO。
Sample Input
2
Sample Output
NO
#include
#include
int main()
{
char a;
scanf("%c",&a);
if(a>=a&&a<=z||a>=A&&a<=Z)
printf("YES\n");
else
printf("NO\n");
return 0;
}
1047 單個字母大小寫互換
Description
從鍵盤輸入一個英文字母,要求編寫一個程序,實(shí)現(xiàn)字母的大小寫轉(zhuǎn)換。如果輸入的是小寫字母,則輸出其大寫形式。如果輸入的是大寫字母,則輸出其小寫形式。若是其他字符則原樣輸出。如輸入A,則輸出a;若輸入#,則依然輸出#。
Input
任意輸入一個英文字母。
Output
輸出對應(yīng)字符的大(小)寫字符,(如A對應(yīng)于a)。
Sample Input
b
Sample Output
B
#include
int main()
{
char x,y;
scanf("%c",&x);
if(x>=A&&x<=Z)
{
y=x+32;
printf("%c\n",y);
}
else if(x>=a&&x<=z)
{
y=x-32;
printf("%c\n",y);
}
else
{
y=x;
printf("%c\n",y);
}
return 0;
}
1048 ASCII碼對應(yīng)的英文字母
Description
從鍵盤輸入一個代表ASCII碼值的數(shù)字(<127),若該數(shù)字對應(yīng)的字符是英文字母,則輸出其字母的形式,否則輸出數(shù)字本身。
Input
輸入一個數(shù)字(小于127)。
Output
輸出該ASCII值對應(yīng)的英文字母。
Sample Input
98
Sample Output
b
#include
#include
int main()
{
int a;
scanf("%d",&a);
if(a>=a&&a<=z||a>=A&&a<=Z)
printf("%c\n",a);
else
printf("%d\n",a);
return 0;
}
1049 單個字符判斷
Description
從鍵盤輸入一個字符,判斷該字符是否大寫字母、小寫字母、數(shù)字字符或其他字符。分別輸出對應(yīng)的提示信息。
Input
輸入一個字符。
Output
如果該字符是大寫字母,則輸出“upper”;若是小寫字母,則輸出“l(fā)ower”;若是數(shù)字字符,則輸出“digit”;若是其他字符,則輸出“other”。(輸出不含雙引號)。
Sample Input
1
Sample Output
digit
#include
int main()
{
char a;
scanf("%c",&a);
if(a>=A&&a<=Z)
printf("upper\n");
else if(a>=a&&a<=z)
printf("lower\n");
else if(a>=0&&a<=9)
printf("digit\n");
else
printf("other\n");
return 0;
}
1050 字符個數(shù)統(tǒng)計(jì)
Description
統(tǒng)計(jì)從鍵盤輸入的一行字符的個數(shù)(字符串長度小于等于1000)。輸入以換行符結(jié)束。
Input
輸入一行字符,以換行符作為結(jié)束標(biāo)記。
Output
統(tǒng)計(jì)字符的個數(shù)并輸出。不包括換行符。
Sample Input
Hello Boy.
Sample Output
10
#include
int main()
{
char a;
int i=0;
scanf("%c",&a);
while(a!=\n)
{
i++;
scanf("%c",&a);
}
printf("%d\n",i);
return 0;
}
1051 字母統(tǒng)計(jì)
Description
編寫程序:輸入一行字符串(字符串長度小于等于1000),統(tǒng)計(jì)出其中的英文字母的個數(shù)。以輸入換行符作為結(jié)束。
Input
輸入一行字符串,以換行符結(jié)束。
Output
輸出字母的個數(shù)
Sample Input
Hello Mr.007,my name is @#$%
Sample Output
15
#include
int main()
{
char a;
int i=0;
scanf("%c",&a);
while(a!=\n)
{
if(a>=a&&a<=z||a>=A&&a<=Z)
i++;
scanf("%c",&a);
}
printf("%d\n",i);
return 0;
}
1052 數(shù)字字符統(tǒng)計(jì)
Description
編寫程序:輸入一行字符串(長度小于等于1000),統(tǒng)計(jì)出其中的數(shù)字字符的個數(shù)。以輸入換行字符作為結(jié)束。
Input
輸入一行字符串,以換行符結(jié)束。
Output
輸出數(shù)字字符的個數(shù)
Sample Input
Hello Mr.007,my name is @#$%
Sample Output
3
#include
int main()
{
char a;
int i=0;
scanf("%c",&a);
while(a!=\n)
{
if(a>=0&&a<=9)
i++;
scanf("%c",&a);
}
printf("%d\n",i);
return 0;
}
1053 字符分類統(tǒng)計(jì)
Description
從鍵盤輸入一行字符串(字符串長度小于等于1000),統(tǒng)計(jì)出
鏈接地址:http://m.appdesigncorp.com/p-10109595.html