image

编辑人: 未来可期

calendar2025-12-05

message7

visits536

2020年12月C语言一级答案及解析

一、编程题

1、描述
给定3个整数a、b、c,计算表达式(a+b)/c的值,/是整除运算。

参考答案:

解析:【喵呜刷题小喵解析】本题是一道编程题,要求计算表达式(a+b)/c的值,其中/是整除运算。首先,我们需要从用户输入中读取三个整数a、b、c。然后,计算(a+b)/c的值,注意这里需要使用整除运算符//。最后,将结果输出到控制台。在Python中,可以使用input()函数从用户输入中读取字符串,然后使用int()函数将字符串转换为整数。另外,需要注意Python中整除运算符为//,而不是/。最后,使用print()函数将结果输出到控制台。

2、 反向输出一个三位数
描述
将一个三位数反向输出。
总时间限制: 1000ms
内存限制: 65536kB

参考答案:

解析:【喵呜刷题小喵解析】:本题要求将一个三位数反向输出,即把三位数的个位、十位、百位数字颠倒顺序。首先,我们需要将输入的整数转换为字符串,然后利用字符串切片功能,将字符串反转,再将反转后的字符串转换回整数。在Python中,字符串切片功能非常强大,可以通过步长参数实现字符串的反转。具体地,`str[::-1]`表示从字符串的末尾到开头,步长为-1,即反转字符串。因此,我们可以定义一个函数`reverse_number`,接收一个整数作为参数,返回其反转后的整数。在主程序中,我们通过`input`函数获取用户输入的一个三位数,调用`reverse_number`函数将其反转,然后输出结果。

3、 打印字符
描述
输入一个ASCII码,输出对应的字符。
总时间限制: 1000ms
内存限制: 65536kB

参考答案:

解析:【喵呜刷题小喵解析】:此题要求输入一个ASCII码,输出对应的字符。可以使用Python的内置函数`chr()`将ASCII码转换为对应的字符。首先,定义一个函数`print_char(ascii_code)`,接受一个参数`ascii_code`,返回对应的字符。在函数内部,使用`chr(ascii_code)`将输入的ASCII码转换为对应的字符。然后,通过`input()`函数获取用户输入的ASCII码,并使用`int()`函数将其转换为整数类型。最后,调用`print()`函数输出对应的字符,并将`print_char(ascii_code)`的返回值作为字符串输出。由于`print_char()`函数返回的是字符,所以需要在输出时使用逗号将其与前面的字符串拼接起来。完整代码如上所示。

4、 输出保留12位小数的浮点数
描述
读入一个双精度浮点数,保留12位小数,输出这个浮点数。
总时间限制: 1000ms
内存限制: 65536kB

参考答案:

解析:【喵呜刷题小喵解析】该题目要求输入一个双精度浮点数,然后保留12位小数进行输出。由于Python的双精度浮点数默认为双精度,我们可以直接使用 `float()` 函数进行输入。然后,使用 Python 的字符串格式化方法 `format()`,并指定 `.12f` 格式,就可以将浮点数保留12位小数输出。其中,`{:.12f}` 中的 `.12` 表示保留的小数位数,`f` 表示浮点数。

5、 判断能否被3,5,7整除
描述
给定一个整数,判断它能否被3,5,7整除,并输出以下信息:
1、能同时被3,5,7整除(直接输出3 5 7,每个数中间一个空格);
2、只能被其中两个数整除(输出两个数,小的在前,大的在后。例如:3 5或者 3 7或者5 7,中间用空格分隔);
3、只能被其中一个数整除(输出这个除数);
4、不能被任何数整除,输出小写字符‘n’,不包括单引号。
总时间限制: 1000ms
内存限制: 65536kB

参考答案:

解析:【喵呜刷题小喵解析】首先,我们需要理解题目要求。题目要求我们判断一个整数能否被3,5,7整除,并输出相应的信息。根据题目要求,我们可以将问题分解为以下四个部分:1. 如果整数n能同时被3,5,7整除,那么输出"3 5 7"。2. 如果整数n只能被其中两个数整除,那么输出这两个数,小的在前,大的在后。3. 如果整数n只能被其中一个数整除,那么输出这个数。4. 如果整数n不能被任何数整除,那么输出'n'。为了实现这个功能,我们可以编写一个函数`check_divisibility`,接受一个整数n作为输入,返回相应的字符串。在函数中,我们可以使用模运算符`%`来判断一个数是否能被另一个数整除。如果n能被3整除,那么`n % 3`的结果为0。同样地,我们可以判断n是否能被5或7整除。根据题目的要求,我们可以使用条件语句来实现上述逻辑。如果n能同时被3,5,7整除,那么返回"3 5 7"。如果n只能被其中两个数整除,那么找出这两个数,排序后返回。如果n只能被其中一个数整除,那么返回这个数。如果n不能被任何数整除,那么返回'n'。最后,我们使用`input()`函数获取一个整数n,调用`check_divisibility`函数,并将结果打印出来。

6、 骑车与走路
描述
在北大校园里,没有自行车,上课办事会很不方便.
但实际上,并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间.
假设找到自行车,开锁并车上自行车的时间为27秒;停车锁车的时间为23秒;步行每秒行走1.2米,骑车每秒行走3.0米。
请判断走不同的距离去办事,是骑车快还是走路快。
总时间限制: 1000ms
内存限制: 65536kB

参考答案:

解析:【喵呜刷题小喵解析】本题考察的是基础的编程与计算能力,需要我们编写程序来判断在不同距离下是走路快还是骑车快。首先,我们定义了一个函数`judge_speed`,它接受一个参数`distance`,表示需要走的距离。然后,我们计算走路和骑车所需的时间。走路所需的时间等于距离除以步行的速度(每秒1.2米),骑车所需的时间等于找车、开锁、停车、锁车的时间(共50秒)加上骑车的时间(每秒3米)。最后,我们比较走路和骑车所需的时间,如果走路所需的时间小于骑车所需的时间,则返回"走路快",否则返回"骑车快"。如果两者所需的时间相等,则返回"一样快"。在主函数中,我们调用`judge_speed`函数,传入100作为参数,并打印结果。注意,由于题目中并没有明确说明距离的单位,我们默认距离的单位是米。如果距离的单位不是米,需要根据实际情况进行调整。

7、 画矩形
描述
根据参数,画出矩形。
总时间限制: 1000ms
内存限制: 65536kB

参考答案:

解析:【喵呜刷题小喵解析】:该题目要求根据参数画出矩形。矩形由行和列组成,根据输入的行数和高数,可以画出一个相应大小的矩形。代码使用C++语言,首先输入矩形的宽度和高度,然后使用两个嵌套的for循环,分别控制矩形的行和列,输出相应的星号(*)表示矩形的每一个格子。最后输出一个换行符,使得每一行都能对齐。该代码在控制台上输出矩形,可以直观地看到矩形的形状和大小。

8、 含k个3的数
总时间限制: 1000ms
内存限制: 65536kB

参考答案:

解析:【喵呜刷题小喵解析】:本题要求找出在1到n之间(包含n)含有k个3的数字有多少个。我们可以使用一个循环,从1遍历到n,对于每个数字,我们将其转换为字符串,然后统计字符串中3的个数。如果3的个数等于k,则计数器加1。最后返回计数器的值即可。具体的Python代码如下所示:```pythondef count_nums(n, k):count = 0for i in range(1, n+1):if str(i).count('3') == k:count += 1return countn = int(input())k = int(input())print(count_nums(n, k))```其中,`count_nums(n, k)`函数接受两个参数,n和k,分别表示要遍历的数字范围的上限和3的个数。函数内部使用一个循环遍历1到n之间的所有数字,对于每个数字,我们将其转换为字符串,然后统计字符串中3的个数。如果3的个数等于k,则计数器加1。最后返回计数器的值即可。在函数外部,我们先读入n和k的值,然后调用`count_nums(n, k)`函数,并打印出返回值。

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:2020年12月C语言一级答案及解析

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share