宁波大学OJ系统C语言题目及答案精讲

更新时间:2024-06-25 01:31:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C++资料复习

1000 整数输入输出练习

Description

从键盘输入任意两个整数,再向屏幕输出这两个数据。

Input

输入两个整数。

Output

输出这两个整数。以空格间隔。

Sample Input

7 -9

Sample Output

7 -9

HINT

本题的样例代码如下: #include int main() {

int a,b;

scanf(\ printf(\return 0; }

C++资料复习

1001 字符输入输出练习1

Description

从键盘任意输入一个字符,再输出这个字符。

Input

任意输入一个字符。

Output

输出该字符。

Sample Input

#

Sample Output

#

#include int main() { char a; scanf(\ printf(\ return 0; }

C++资料复习

1002 单组A+B

Description

从键盘输入任意两个整数a和b,计算并输出a+b的值。

Input

从键盘输入两个整数a和b。

Output

输出这两个数的和

Sample Input

1 2

Sample Output

3

#include int main() { int a,b,c; scanf(\ c=a+b; printf(\ return 0; }

C++资料复习

1003 多组A+B(1)

Description

分别计算多组a+b的值。

Input

输入包含多组测试数据。每行包含一组整数a,b。当输入为0 0 时,测试结束,此时的结果不输出。

Output

对于每一对整数a,b,输出它们的和,并且每行输出一个结果。

Sample Input

1 5 10 20 0 0

#include int main() { int a,b,y; scanf(\ while(a!=0||b!=0) { y=a+b; printf(\ scanf(\ } return 0; }

C++资料复习

1004 多组A+B(2)

Description

分别计算多组a+b的值。

Input

第一行包含一个整数N,表示有N组数据。接下来的N行,每行输入一组a,b数据。

Output

对于每一对整数a,b,输出它们的和,并且每行输出一个结果。

Sample Input

2 1 5 10 20

Sample Output

6 30

#include int main() { int a,b,y,i=1,N; scanf(\ while(i<=N) { scanf(\ y=a+b; printf(\i++; } return 0; }

C++资料复习

1005 计算平均分(1)

Description

输入一个学生的3门课成绩a,b,c,求出该学生的平均分。

Input

输入三个成绩a,b,c。

Output

输出平均值,要求保留1位小数。

Sample Input

60 70 80

Sample Output

70.0

#include int main() { double a,b,c,d; scanf(\ d=(a+b+c)/3.0; printf(\ return 0; }

06 计算月收入

Description

某小型外贸公司员工月收入的计算方法为:月基本工资加当月提成。从键盘输入某员工某月的基本工资和该月的提成,计算并输出该员工的月收入。

Input

输入两个数分别代表月基本工资和月提成。

C++资料复习

Output

计算并输出月收入(保留2位小数)。

Sample Input

3100 1200

Sample Output

4300.00

#include int main() { double a,b,c; scanf(\ c=a+b; printf(\ return 0; }

1007 温度转换

Description

2011夏季,热浪席卷了全球的大部分地方。网上报道美国局部地区的温度达到了100华氏度,而我们国内的温度多在38摄氏度左右。那么38摄氏度和100华氏度到底哪个更热一些呢?请你帮忙编一个程序来解决这一问题。从键盘输入一个华氏温度,求出其对应的摄氏温度。计算公式如下: c=5*(f-32)/9

c表示摄氏温度,f表示华氏温度。

Input

输入一个华氏温度值。

Output

输出对应的摄氏温度值,结果要求保留2位小数。

Sample Input

C++资料复习

100

Sample Output

37.78

#include int main() { double c,f; scanf(\ c=5*(f-32)/9; printf(\ return 0; }

1008 求圆周长和圆面积

Description

从键盘输入一个圆的半径r,计算并输出圆周长和圆面积。

Input

输入一个圆半径r。

Output

按序输出圆周长和圆面积,结果保留两位小数。

Sample Input

41

Sample Output

257.48 5278.34

C++资料复习

HINT

圆周率使用3.14

#include #define PI 3.14 int main() { double r,c,s; scanf(\ c=2*PI*r; s=PI*r*r; printf(\ return 0; }

1009 求圆柱体表面积

Description

输入圆柱体的底面半径r和高h,计算圆柱体的表面积并输出到屏幕上,保留2位小数。

Input

输入圆柱体的底面半径r和高h。

Output

计算圆柱体的表面积并输出到屏幕上,保留2位小数。

Sample Input

42.1 71.6

Sample Output

C++资料复习

30060.92

HINT

圆周率使用3.14

#include #define PI 3.14 int main() { double r,h,s; scanf(\ s=2*PI*r*r+2*PI*r*h; printf(\ return 0; }

1010 计算球体的体积

Description

编写程序计算球体的体积。参考公式v=(4/3)*PI*r*r*r,其中PI表示圆周率。球体的半径r的值由键盘输入,保留2位小数。

Input

输入球体半径r。

Output

计算球体体积并输出到屏幕上,保留2位小数。

Sample Input

96.2

Sample Output

C++资料复习

3727293.58

HINT

圆周率使用3.14

#include #define PI 3.14 int main() { double r,v; scanf(\ v=(4/3.0)*PI*r*r*r; printf(\ return 0; }

1011 三角形面积

Description

从键盘上输入三角形的3条边的边长a,b,c(假定3条边长可以构成三角形),求三角形面积并输出到屏幕上。

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

Input

输入三条边的边长(假设3条边长可以构成三角形)。

Output

输出三角形面积。保留2位小数。

Sample Input

3 4 5

C++资料复习

Sample Output

6.00

#include #include int main() { double a,b,c,p,s; scanf(\ p=(a+b+c)/2; s=sqrt(p*(p-a)*(p-b)*(p-c)); printf(\ return 0; }

1012 判断三角形

Description

输入三角形的3条边a,b,c,如果能构成一个三角形,则输出面积,否则输出Error。

Input

输入三个数a,b,c(浮点类型)。

Output

如果这三条边能构成一个三角形就计算并输出这个三角形的面积,保留2位小数。如果不能构成三角形就输出Error。

Sample Input

3 1 4

C++资料复习

Sample Output

Error

#include #include int main() { double a,b,c,p,s; scanf(\ if(a+b>c&&fabs(a-b)

1013 两点的距离

Description

从键盘输入数据表示平面上任意两点。计算并输出这两点之间的距离。保留2位小数。

Input

依次输入x1,y1和x2,y2分别表示平面上的两点。

Output

输出这两点间的距离。保留2位小数。

Sample Input

C++资料复习

3.1 4.2 5.0 6.0

Sample Output

2.62

#include #include int main() { double x1,x2,y1,y2,l; scanf(\ l=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); printf(\ return 0; }

1014 数值类型转换

Description

输入一个双精度数,输出它的整型值。

Input

输入一个双精度数

Output

输出该数的浮点数形式(保留2位小数)和它对应的整型形式。两数之间以空格间隔。

Sample Input

C++资料复习

1.22

Sample Output

1.22 1

#include #include int main() { double a; int b; scanf(\ b=a; printf(\ return 0; }

1015 两数交换

Description

从键盘输入两个整数x,y,然后交换它们的顺序并输出。

Input

输入两个整数x,y(以空格间隔)。

Output

首先输出x,y的初始值,然后换行输出交换后的两数。同一行内的数据以空格间隔。

Sample Input

12 23

C++资料复习

计算并输出多项式的结果,保留1位小数。

Sample Input

1

Sample Output

10.0

HINT

建议用double

#include #include int main() {

double x,y;

scanf(\

y=3*pow(x,4)-2*pow(x,3)-pow(x,2)+10; printf(\return 0; }

1026 居民电费

Description

某地居民用电是这样计算的,正常使用部分每度0.538元,阶梯部分每度0.03元。某用户家9月份正常部分用电量为x度,阶梯部分y度,请编程计算该用户9月份应该缴纳的电费。从键盘输入x和y,输出应缴纳电费,保留2位小数。

Input

输入x和y的值。

C++资料复习

Output

输出应缴纳的电费,保留2位小数。

Sample Input

10 10

Sample Output

5.68

#include #include int main() {

double x,y,m;

scanf(\m=x*0.538+y*0.03; printf(\return 0; }

1027 存款利息(1)

Description

输入存款金额money、存期year和年利率rate,根据公式计算存款到期时的利息interest(税前)。公式如下: interest=money(1+rate)^year-money

Input

输入存款金额money、存期year和年利率rate。

C++资料复习

Output

输出到期时的利息,保留2位小数。

Sample Input

1000 3 0.0415

Sample Output

129.74

HINT

建议用double

#include #include int main() {

double money,year,rate,interest;

scanf(\interest=money*pow(1+rate,year)-money; printf(\ return 0; }

1028存款利息(2)

Description

输入人民币存款年利率I和存款总额S,计算满一年后本息合计并输出。

Input

输入年利率和存款总数。

C++资料复习

Output

计算满一年后本息合计,保留两位小数。

Sample Input

0.03 100000

Sample Output

103000.00

#include #include int main() {

double I,S;

scanf(\S=S*(1+I);

printf(\return 0; }

1029 三位数的数位分离

Description

从键盘输入一个任意的3位整数,分别求出其个位、十位和百位上的数字。

Input

输入任意的一个三位整数

C++资料复习

Output

依次输出个位、十位、百位上的数字。以空格间隔。

Sample Input

367

Sample Output

7 6 3

#include #include int main() {

int a,b,c,d;

scanf(\b=a;

c=(a/10); d=a/100;

printf(\return 0; }

1030 棋盘上的麦粒

Description

舍罕是古印度的国王,据说他十分好玩。宰相依达尔为了讨好国王,发明了现今的国际象棋献给国王。国王非常喜欢,决定嘉奖宰相,许诺满足宰相提出的任何要求。宰相指着棋盘要求:“陛下,请您按棋盘的格子赏赐我一点小麦吧,第一个小格赏我1粒麦子,第二个小格赏我2粒,第三个小格赏4粒,以后每一小格都比前一个小

C++资料复习

Output

输出位数

Sample Input

0

Sample Output

1

#include #include int main() { int a,i=1; scanf(\ while(!(a>=0&&a<=9)) { a=a/10; i+=1; } printf(\ return 0; }

1035 求整数的绝对值

Description

输入一个整数,输出它的绝对值

Input

输入一个整数n

C++资料复习

Output

输出该数的绝对值

Sample Input

-2

Sample Output

2

#include #include int main() {

int n,a;

scanf(\a=fabs(n);

printf(\return 0; }

1036 符号属性判断

Description

从键盘输入任意数x,根据其符号属性,输出对应的y值。 y=-1 (x<0) y=0 (x=0) y=1 (x>0)

C++资料复习

Input

输入x。

Output

输出y的值

Sample Input

10

Sample Output

1

HINT

x取浮点类型

#include #include int main() {

double x; int y;

scanf(\if(x<0) y=-1;

else if(x==0) y=0; else y=1;

printf(\return 0; }

1037 正数负数

Description

输入一个整数,判断该数是正数还是负数。

Input

输入整数n。

C++资料复习

Output

如果该数是正数就输出“positive”,负数就输出“negative”(输出不含双引号)。

Sample Input

8

Sample Output

positive

#include #include int main() { int n;

scanf(\if(n>0)

printf(\else if(n<0)

printf(\return 0; }

1038 奇数偶数

Description

输入一个整数,判断该数是奇数还是偶数。

Input

输入整数n。

C++资料复习

Output

如果该数是奇数就输出“odd”,偶数就输出“even”(输出不含双引号)。

Sample Input

8

Sample Output

even

#include #include int main() { int n;

scanf(\if(n%2==0) printf(\else if(n%2==1) printf(\return 0; }

1039 奇数和与偶数和(1)

Description

输入正整数n,计算1~n中的奇数和以及偶数和并输出。

Input

输入一个正整数n。

本文来源:https://www.bwwdw.com/article/0kx3.html

Top