C语言程序设计 键盘输入和屏幕输出(4.2.9)--5.9节-5.10节
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
100--A
(12)Please enter score:-10↙
Input error!
(13)Please enter score:200↙
Input error!
(14)Please enter score:105↙ Input error!
(15)Please enter score:-5↙ Input error!
2100 is a not leap year! ④ Input a year:2000↙
2000 is a leap year!
5.7 在例 4.2 和第 4 章实验程序的基础上,从键盘输入一个英文字母,如果它是大写英
文字母,则将其转换为小写英文字母,如果它是小写英文字母,则将其转换为大写英文字
母,然后将它及其 ASCII 码值显示到屏幕上,如果不是英文字母,则不转换直接输出到屏
换成相应的五分制成绩 grade 后输出。已知转换标准为:
A
90 score 100
grade
B C
80 score 90 70 score 80
D
60 score 70
E
0 score 60
【参考答案】程序的运行结果应为:
(1) Please enter score:0↙
2 main()
3{
4
int year, flag;
5
printf("Input a year:");
6
scanf("%d", &year);
7
if (
①
)
8
{
9
flag = 1;
/* 如果year是闰年,则标志变量flag置1 */
10
}
11
else
12
{
13
flag = 0;
/* 否则,标志变量flag置0 */
5.5 阅读下面程序,按要求在空白处填写适当的表达式或语句,使程序完整并符合题目
要求。已知下面程序的功能是:从键盘任意输入一个年号,判断它是否是闰年。若是闰年输
出“Yes”,否则输出“No”。已知符合下列条件之一者是闰年:(1)能被 4 整除,但不能被
100 整除;(2)能被 400 整除。
1 #include <stdio.h>
14
}
15
if (
②
)
16
{
17
printf("%d is a leap year!\n", year);
/* 打印"是闰年" */
18
}
19
else
20
{
21
printf("%d is not a leap year!\n", year); /* 打印"不是闰年" */
22
}
23 }
【参考答案】
2 0 == year%4 && 0 != year%100 || 0 == year%400
5.10 参考习题 5.5 中判断闰年的方法,编程从键盘输入某年某月(包括闰年), 用 switch 语句编程输出该年的该月拥有的天数。要求考虑闰年以及输入月份不在合法范围内的 情况。已知闰年的 2 月有 29 天,平年的 2 月有 28 天。
【参考答案】程序的运行结果应为:
① Input year,month:2004,2↙ 29 dBiblioteka Baiduys
It is a digit character!
④ Press a key and then press Enter: ↙
It is a space character!
⑤ Press a key and then press Enter: #↙
It is other character!
5.9 参考例 5.8 程序的测试结果,改用 if-else 语句编程根据输入的百分制成绩 score,转
幕上。
【参考答案】程序的运行结果应为:
① Press a key and then press Enter: A↙ a, 97
② Press a key and then press Enter: a↙
A, 65
5.8 从键盘任意输入一个字符,编程判断该字符是数字字符、大写字母、小写字母、空格
还是其他字符。
【参考答案】程序的运行结果应为:
① Press a key and then press Enter: A↙
It is an English character!
② Press a key and then press Enter: a↙
It is an English character!
③ Press a key and then press Enter: 9↙
② flag
5.6 将习题 5.5 程序中的第 7 到第 14 行的 if 语句改用条件表达式重新编写该程序。
【参考答案】程序的运行结果应为:
① Input a year:2004↙
2004 is a leap year! ② Input a year:2009↙
2009 is a not leap year! ③ Input a year:2100↙
② Input year,month:2009,2↙
28 days ③ Input year,month:2100,2↙
28 days ④ Input year,month:2000,2↙
29 days ⑤ Input year,month:2000,11↙
30 days ⑥ Input year,month:2000,13↙
Input error!
0--E
(2) Please enter score:15↙
15--E
(3) Please enter score:25↙
25--E
(4) Please enter score:35↙
35--E
(5) Please enter score:45↙
45--E
(6) Please enter score:55↙
55--E
(7) Please enter score:65↙
65--D
(8) Please enter score:75↙
75--C
(9) Please enter score:85↙
85--B
(10)Please enter score:95↙
95--A
(11)Please enter score:100↙