当前位置:文档之家› 100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)
100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)

1:计算 A+B 的问题

时间限制:1000MS 内存限制:10000K

总提交数:1347 正确数:655

问题描述

输入两个整数 a 和 b ,计算 a+b 的结果并输出。

输入

两个整数

输出

一个整数

输入样例

1 2

输出样例

3

2:Hello World!

时间限制:1000MS 内存限制:65536K

总提交数:848 正确数:693

问题描述编写第一个C语言程序。在屏幕上输出:Hello World!

输入

程序没有输入

输出

Hello World!

输入样例

输出样例

Hello World!

提示

1、输出的内容要与题目的要求完全一样,不能多字符也不能少字符。3:两个整数的值互换

时间限制:1000MS 内存限制:65536K

总提交数:1235 正确数:530

问题描述

输入两个整数a,b ,将 a 和 b 的值互换,并输出。

例如:

输入: 2 5

输出: 5 2

输入

两个整数

输出

两个整数

输入样例

2 5

输出样例

5 2

提示

注意输入和输出的格式,两个数据之间用一个空格隔开。

问题来源

4:计算三门课程总分和平均分

时间限制:1000MS 内存限制:65536K

总提交数:1190 正确数:482

问题描述

输入三门课程的成绩,输出总分和平均分。

要求:

(1)输入三个数,用空格隔开。输入的数可以是小数。(2)输出两个数,用空格隔开。输出的数保留两位小数。

例如:

输入: 75 80 90

输出: 245.00 81.67 输入

输入三个数,用空格隔开。输入的数可以是小数。

输出

输出两个数,用空格隔开。输出的数保留两位小数。

输入样例

75 80 90

输出样例

245.00 81.67

问题来源

5:鸡兔同笼问题

时间限制:1000MS 内存限制:65536K

总提交数:872 正确数:443

问题描述

这个问题,是我国古代著名趣题之一。大约在1500年前,《孙子算经》中就记载了这个有趣的问题。书中是这样叙述的:“今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?这四句话的意思是:有若干只鸡兔同在一个笼子里,从上面数,有35个头;从下面数,有94只脚。求笼中各有几只鸡和兔?

先要求编写一个程序求解这个问题。要求:输入头和脚的个数,输出鸡和兔子的个数。

输入

两个整数

输出

两个整数

输入样例

20 50

输出样例

15 5

提示

注意输出和输出格式。不能附加题目要求之外的其它内容。

问题来源

6:输出一个自然数的百位十位和个位上的各个数字

时间限制:1000MS 内存限制:65536K

总提交数:695 正确数:437

问题描述

输入一个自然数,输出这个整数的百位、十位和个位上的数字。

例1:

输入: 8

输出: 0 0 8

例2:

输入: 26

输出: 0 2 6

例3:

输入: 347 输出: 3 4 7

例4:

输入: 1234

输出: 2 3 4

输入

一个正整数

输出

三个0-9之间的数(空格分隔)

输入样例

1234

输出样例

2 3 4

提示

1、输入的数可能是0-32767之间的任何一个数;

2、输出必须是三个0-9之间的数,三个数用空格分隔。

3、输出不能有其它多余的内容;

4、本程序的关键在于使用 % 和 / 运算。

问题来源

7:输出字符(A-F)代表的十六进制数所对应的十进制值

时间限制:1000MS 内存限制:65536K

总提交数:462 正确数:387

问题描述

输入一个字符(A-F之间),输出该字符所代表的十六进制数所对应的十进制数的值。

例1:

输入: A

输出: 10

例2:

输入: B

输出: 11

例3:

输入: F

输出: 15

输入

一个字符

输出

一个10-15之间的十进制整数

输入样例

B

输出样例

11

提示

1、输入的内容必须是 A - F之间,可以作为字符输入,也可以作为一个十六进制数输入;

2、输出的必须是一个10-15之间的十进制整数。

问题来源

8:求华氏温度所对应的摄氏温度

时间限制:1000MS 内存限制:65536K

总提交数:556 正确数:407

问题描述

输入一个华氏温度值,求其所对应的摄氏温度。计算公式为:摄氏温度=5/9*(华氏温度-32)

输出的摄氏温度保留2位小数。

输入输出举例:

例1:

输入: 100

输出: 37.78

例2:

输入: 40

输出: 4.44

输入

一个小数

输出

一个小数(保留2位小数)

输入样例

100

输出样例

37.78

提示

注意输出的格式:只能保留2位小数

问题来源

9:已知斜边和一直角边计算三角形的另一直角边

时间限制:1000MS 内存限制:65536K

总提交数:547 正确数:415

问题描述

已知斜边和一直角边,计算三角形的另一直角边。

输入

两个数,第一个数为斜边,第二个数为一直角边。两个数以空格分隔。输出

一个数(保留2位小数)

输入样例

5 4

输出样例

3.00

提示

1、注意数据类型;

2、要使用到数学函数,必须包含相应的头文件;

3、注意输出格式。

问题来源10:已知三边计算三角形的面积

时间限制:1000MS 内存限制:65536K

总提交数:585 正确数:374

问题描述

输入三角形的三条边的值,计算三角形的面积。

要求:

(1)输入三个数(可以是小数),用空格隔开;(2)输出一个数,保留6为小数。

(3)数据采用double类型。

输入

三个数,用空格隔开。可以是小数

输出

一个数,保留6为小数。

输入样例

3 4 5

输出样例

6.000000

提示

(1)使用海伦公式;

(2)注意需要头文件。

问题来源

11:输出小写字母的ASCII码及对应大写字母

时间限制:1000MS 内存限制:65536K

总提交数:602 正确数:378

问题描述

从键盘输入一个小写字母,输出其ASCII和对应的大写字母。

输入

一个字符(小写字母)

输出

一个整数(ASCII码的值)和一个字符(对应的大写字母),用空格分隔开输入样例

a

输出样例

97 A

问题来源

12:保留两位小数

时间限制:1000MS 内存限制:65536K

总提交数:467 正确数:335 问题描述

从键盘输入一个小数,使该数保留小数点后两位,对第三位小数进行四舍五入处理,然后输出此数以便验证是否正确。

要求:

(1)输入一个小数;

(2)输出一个小数,输出有六位小数。

例1:

输入:123.4567

输出:123.460000

例2:

输入:123.4447

输出:123.440000

输入

一个小数

输出

一个小数

输入样例

123.4567

输出样例

123.460000

提示

注意:使用数据使用double类型。

问题来源

13:判断输入的一个字符是否是小写字母

时间限制:1000MS 内存限制:65536K

总提交数:492 正确数:373

问题描述

从键盘输入一个字符,若是小写字母,输出其对应的 ASCII 码值;若不是则输出“ERROR”。

输入输出举例如下:

例1:

输入: a

输出: 97

例2:

输入: z

输出: 122

例3:

输入: ?

输出: ERROR

输入

一个字符

输出

一个十进制的整数或 ERROR 输入样例

a

输出样例

97

提示

1、使用简单分支结构进行编程。也可使用 ? : 运算符。

2、注意输入和输出格式,输出中不能有其它多余的内容。

问题来源

14:简单字符加密变换 A->F

时间限制:1000MS 内存限制:65536K

总提交数:450 正确数:322

问题描述

现需要对输入的字符进行加密变换。加密变换的基本方法如下:输入 A ,输出 F ;输入 B ,输出 G; ...... ;输入 Y ,输出 D ;输入 Z ,输出 E 。编写一个程序实现该加密变换。

举例:

例1:

输入: A

输出: F

例2:

输入: B

输出: G

例3:

输入: Z

输出: E

输入

输入一个字母

输出

一个字母

输入样例

A

输出样例

F

提示

可行的方案有很多。例如可以使用条件运算符?:进行程序设计,也可使用 % 运算符进行程序设计。

问题来源

15:判断输入的一个字符是什么类型的字符

时间限制:1000MS 内存限制:65536K

总提交数:583 正确数:337 问题描述

从键盘上输入一个字符,判断输入的字符是字母、数字、还是其它。若输入的是字母,则输出capital;若输入的是数字,则输出 number ;若输入的是其它字符,则输出 other 。

输入输出举例:

例1:

输入: G

输出: capital

例2:

输入: f

输出: capital

例3:

输入: 8

输出: number

例4:

输入: !

输出: other

输入

一个字符

输出

apital 或 number 或 other

输入样例

G

输出样例

capital

提示

注意输出的内容一定要与题目的要求一致,包括大小写。

问题来源

16:判断一个学生的成绩等级

时间限制:1000MS 内存限制:65536K

总提交数:536 正确数:375

问题描述

请输入一个学生的 C 语言考试成绩,如果成绩少于 60 分,则输出“ failed”;如果成绩大于等于 60 ,且小于 80 ,则输出“middle”;如果成绩大于等于 80 分,则输出“excellent”;

输入输出举例:

例1:

输入: 55

输出: failed

例2:

输入: 75

输出: middle

例3:

输入: 85

输出: excellent 输入

一个数值

输出

failed 或 middle 或 excellent

输入样例

85

输出样例

excellent

提示

输出的内容一定要与题目要求一致,包括大小写。

问题来源

17:输出数字(1-7)对应的英文星期名称的简写

时间限制:1000MS 内存限制:65536K

总提交数:536 正确数:337

问题描述

从键盘输入一位整数( 1-7 ),输出对应的英文星期名称的简写( Mon, Tues, Wed, Thu, Fri, Sat, Sun )

输入输出举例:

例1:

输入:1

输出:Mon

例2:

输入:4

输出:Thu

输入

一个整数(1-7之间)

输出

Mon 或 Tues 或 Wed 或 Thu 或 Fri 或 Sat 或 Sun

输入样例

2

输出样例

Tues

提示

1、可使用 if ... else if 结构,也可使用switch结构。

2、输出的内容必须与题目要求的一致,包括大小写。

问题来源

18:给定三个边长的值判断是否能够构成三角形时间限制:1000MS 内存限制:65536K

总提交数:650 正确数:347

问题描述

输入三个数作为三角形的边长 (a,b,c) ,判断是否能构成一个三角形(两边之和大于第三边,两边之差小与第三边),若能构成三角形输出 YES ,若不能构成三角形则输出 NO

输入输出举例:

例1:

输入: 3 4 5

输出: YES

例2:

输入: 8 2 5

输出: NO

输入

三个数(用空格分隔)

输出

YES 或 NO

输入样例

3 4 5

输出样例

YES

问题来源

19:将输入的三个数按从小到大的顺序输出

时间限制:1000MS 内存限制:65536K

总提交数:460 正确数:308

问题描述

输入三个整数 x,y,z ,请把这三个数由小到大输出。

举例:

例1:

输入: 6 3 9

输出: 3 6 9

输入

三个整数(用空格分隔)

输出

三个整数(用空格分隔)

输入样例

6 3 9

输出样例

3 6 9

提示

我们想办法把最小的数放到 x 上:先将 x 与 y 进行比较,如果 x>y 则将 x 与 y 的值进行交换,然后再用 x 与 z 进行比较,如果 x>z 则将 x 与 z 的值进行交换,这样能使 x 最小;

问题来源

20:编程计算一个分段函数

时间限制:1000MS 内存限制:65536K

总提交数:428 正确数:319

问题描述

有一个函数如下:

y = x (x<1)

= 2x-1 (1≤x<10)

= 3x-11 (x≥10)

编写一个程序,要求输入 x, 输出 y 的值。( y保留2位小数)

输入输出举例:

例1:

输入:0.2

输出:0.20

例2:

输入:5.5

输出:10.00

例3:

输入:12

输出:25.00

输入

一个数

输出

一个数

输入样例

5.5

输出样例

10.00

问题来源

21:这个数能被3整除吗?

时间限制:1000MS 内存限制:65536K

总提交数:546 正确数:374

问题描述

从键盘输入一个整数,判别它是否能被3整除。若能被3整除,打印出YES,否则打印出NO。

要求:

输入:一个整数

输出:YES 或 NO

例1:

输入: 9 输出: YES

例2:

输入: 8

输出: NO

输入

一个整数

输出

YES 或 NO

输入样例

9

输出样例

YES

问题来源

22:这个月有多少天?

时间限制:5000MS 内存限制:65536K

总提交数:542 正确数:290

问题描述

输入年和月,计算这年的这月有多少天,并输出。

要求:

输入:两个数,分别代表年和月。两个数间用空格分隔;

输出:一个数,代表天数

例1:

输入:2009 12

输出:31

例2:

输入:2008 2

输出:29

例3:

输入:2007 2

输出:28

例4:

输入:2008 4

输出:30

输入

两个数,分别代表年和月。两个数间用空格分隔;输出

一个数,代表天数

输入样例

2008 2

输出样例

29

提示注意:需要进行闰年的判别。

问题来源

23:模拟加减乘除计算器

时间限制:1000MS 内存限制:65536K

总提交数:361 正确数:274

问题描述

编写一个程序模拟一个计算器,能够实现两个数的加减乘除运算。

要求:

(1)输入一个表达式。该表达式包含两个数和一个运算符,运算符处在两个数中间,表达式中没有空格。只考虑 +、-、*、/ 四种运算符。

(2)输出计算结果,保留六位小数。

例1:

输入: 1.2+2.3

输出: 3.5000000

例2:

输入: 2.3-1.2

输出: 1.1000000

例3:

输入: 2.3*1.2

输出: 2.760000

例3:

输入: 2.3/1.2

输出: 1.916667

输入

输入一个表达式。该表达式包含两个数和一个运算符,运算符处在两个数中间,表达式中没有空格。只考虑 +、-、*、/ 四种运算符。

输出

输出一个数,保留六位小数。

输入样例

1.2+

2.3

输出样例

3.500000

提示

注意输入语句中的格式控制。试试:

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

问题来源

24:输出三个数中的最大数和最小数

时间限制:1000MS 内存限制:65536K

总提交数:386 正确数:298

问题描述

输入三个整数,输出其中的最大数和最小数。要求输入和输出的数据之间用空格分隔。

例1:输入: 1 5 3

输出: 5 1

例1:

输入: 6 5 3

输出: 6 3

输入

三个整数,用空格分隔

输出

两个整数,用空格分隔。大的数放在前面

输入样例

1 5 3

输出样例

5 1

问题来源

25:个人所得税问题(1)

时间限制:1000MS 内存限制:65535K

总提交数:389 正确数:275

问题描述

输入一个职工的月薪salary,输出应当缴纳的个人所得税tax(输出时保留2位

小数)。

个人所得税计算方式如下:(注意:不需要进行分段计税,每个人的税率只有一种)

tax = rate x ( salary - 850 ) / 100

当:

salary ≤ 850 , rate=0 ;

850 < salary ≤ 1350, rate=5 ;

1350 < salary ≤ 2850, rate=10 ;

2850 < salary ≤ 5850, rate=15 ;

5850 < salary, rate=20 .

例1:

输入:600

输出:0.00

例2:

输入:850

输出:0.00

例3:

输入:1200

输出:17.50

例4:

输入:1350

输出:25.00

例5:

输入:1455.6

输出:60.56

例6:

输入:2850

输出:200.00

例7:

输入:2987.5 输出:320.63

例8:

输入:5850

输出:750.00

例9:

输入:6001.1

输出:1030.22

输入

一个数

输出

一个数,保留两位小数

输入样例

1455.6

输出样例

60.56

问题来源

26:出租车收费问题

时间限制:1000MS 内存限制:65536K 总提交数:340 正确数:226

问题描述

某市出租车起步里程为 3 公里,起步费 10 元;超起步里程后,10公里以内(含10公里),2元/公里;超10公里以上部分,加收 50% 的回空补贴,即 3元/公里。另,因路阻和乘客要求的临时停车,每 5 分钟按 1 公里租费计(2分钟则计为0.4公里)。

现请编写程序,输入出租车行使的公里数和等待时间(分钟),输出应付车费(元)。

要求:

(1)输入要求:公里数可为小数,等待时间为整数;两数用空格分隔;(2)输出要求:按元计算。(即没有小数部分,小数部分实现四舍五入)

例1:

输入: 2 4

输出: 10

例2:

输入: 3 0

输出: 10

例3:

输入: 3.5 4

输出: 13

例4:

输入: 6 8

输出: 19

例5:

输入: 10 0

输出: 24

例6:

输入: 11.2 8

输出: 32

输入

两个数。第1个数为公里数(可为小数),第2个数为等待时间(为整数)。两个数用空格分隔。

输出

一个数,没有小数部分,小数部分实现四舍五入。

输入样例

3.5 4

输出样例

13

问题来源

27:学生综合测评问题

时间限制:1000MS 内存限制:65536K

总提交数:525 正确数:259

问题描述

某班综合考评,根据参加集体活动的次数加分,规则如下:没有参加活动,不加分;

参加1次活动,加1分;

参加2次或3次活动,加2分;

参加4次到7次活动,参加几次加几分;

参加8次到10次活动,加8分;

参加10次以上,加10分;

编程要求输入参加活动的次数,输出加的分数。

输入

一个整数,表示参加活动的次数

输出

一个整数,表示加的分数

输入样例

3

输出样例

2

问题来源

28:个人所得税问题(2)

时间限制:1000MS 内存限制:65536K

总提交数:327 正确数:247

问题描述

输入一个职工的月薪salary,输出应当缴纳的个人所得税tax(输出时保留2位小数)。

个人所得税计算方式如下:

当:

salary ≤ 850 , rate=0 ;

850 < salary ≤ 1350, rate=5% ;

1350 < salary ≤ 2850, rate=10% ;

2850 < salary ≤ 5850, rate=15% ;

5850 < salary, rate=20% . 注意:需要进行分段计税。

例如;某人的工资为6000元,则:

6000元中的850元部分不用缴税;

850-1350元部分按 5% 缴税,即需要缴纳(1350-850)x 5% = 25 ; 1350-2850元部分按 10% 缴税,即需要缴纳(2850-1350)x 10% = 150 ; 2850-5850元部分按 15% 缴税,即需要缴纳(5850-2850)x 15% = 450 ; 5850-6000元部分按 20% 缴税,即需要缴纳(6000-5850)x 20% = 30 ; 因此,总共需要缴纳的个人所得税为:25+150+450+30 = 655

例1:

输入:600

输出:0.00

例2:

输入:850

输出:0.00

例3:

输入:1200

输出:17.50

例4:

输入:1350

输出:25.00

例5:

输入:1455.6

输出:35.56

例6:

输入:2850

输出:175.00

例7:

输入:2987.5

输出:195.63

例8:

输入:5850

输出:625.00

例9:

输入:6000

输出:655.00

输入

一个数

输出

一个数,保留2位小数

输入样例

2987.5

输出样例

195.63

问题来源

29:他(她)的实足年龄是......

时间限制:1000MS 内存限制:65536K

总提交数:438 正确数:243

问题描述

编写程序:输入一个人的出生日期(年月日),以及当前的日期(年月日);输出他(她)的实足年龄。要求:

(1)输入的数据分为两行,第1行为出生日期,顺序为年月日,用空格分隔;第2行为当前日期,顺序为年月日,用空格分隔;

(2)输出实足年龄。

例1:

输入:

1992 12 31

2011 3 28

输出:

18

例2:

输入:

1992 3 31

2011 3 28

输出:

18

例3:

输入:

1992 3 28

2011 3 28

输出:

19

例4:

输入:

1992 3 27

2011 3 28

输出:

19

例5:

输入:

1992 1 30

2011 3 28

输出:

19

输入

总共6个整数,数据分为两行,第1行为出生日期,顺序为年月日,用空格分隔;第2行为当前日期,顺序为年月日,用空格分隔;

输出

一个整数,表示实足年龄。

输入样例

1982 12 31

2011 3 28

输出样例

18

问题来源

30:将一个小整数逆序输出

时间限制:1000MS 内存限制:65536K

总提交数:425 正确数:298

问题描述

输入一个不多于5位的正整数,按逆序打印出各位数字。

例1:

输入:321 输出:123

例2:

输入:120

输出:21

例3:

输入:1002

输出:2001

输入

一个正整数

输出

输出一个正整数

输入样例

321

输出样例

123

提示

1、注意个位是零的情况,如:120。

2、注意中间数字有零的情况,如:1002

问题来源

31:计算一个数字的各位数字之和

时间限制:1000MS 内存限制:65536K

总提交数:466 正确数:328

问题描述

从键盘输入一位整数,计算其各位数字之和。比如输入整数 31421 ,则打印结果为 11 (3+1+4+2+1)。

输入

一个整数

输出

一个整数

输入样例

31421

输出样例

11

提示

输入采用长整形数。

问题来源

32:求两个数之间有多少个数的各位上数字之和为7

时间限制:1000MS 内存限制:65536K

总提交数:412 正确数:209 问题描述

从键盘输入两个数字,求在这两个数字之间有多少个数其各位数字之和为7。输出求得的个数。

例如10-100之间有7个数字,其各位数字之和为7。(分别为:

16,25,34,43,52,61,70)

输入输出举例:

例1:

输入:10 100

输出:7

例2:

输入:100 10

输出:7

例3:

输入:10 9999

输出:119

输入

两个整数(用空格分隔)

输出

一个整数

输入样例

10 100

输出样例

相关主题
文本预览
相关文档 最新文档