HM043 货架铭牌
HM043 货架铭牌
来源: 第 43 集 数组-一维数组-数组名
难度: 入门
时间限制: 1s
空间限制: 64MB
题目描述
一维数组的**数组名**有两个用途:统计整段货架占了多少内存,以及代表这段连续内存的**首地址**。
在 main 里把货架声明成 int shelf[10]。sizeof(shelf) 量的是整段货架,sizeof(shelf[0]) 量的是第一格。两者相除,得到定义时的元素个数,以后就不必把这个个数手写死。本题不要求输出任何一个类型占几个字节,也不许打印地址编号。
首地址和**下标 0** 那一格在同一位置,所以访问第一个元素就是访问货架开头。下标 1 紧挨着下标 0,整段货架是连续的线性空间。
数组名是常量,已经指向这段首地址,不能再写成 shelf = 100 之类的赋值,否则会报「表达式必须是可修改的左值」。
把货架交给函数时,数组名不再表示整段货架,必须把**元素个数**一齐传入,函数里用这个个数做循环,不能再靠数组名自己量长度。
读入实际使用的格数 \(n\) 和 \(n\) 个整数,写入货架前 \(n\) 格。请输出定义长度、实际使用个数、首元素,再由函数按个数打印前 \(n\) 个元素,最后输出 CONST 表示数组名不可赋值。
输入格式
第一行一个整数 \(n\)(\(1 \le n \le 10\))。
第二行 \(n\) 个整数,绝对值不超过 \(10^9\)。
输出格式
共四行,每行结尾换行:
- 用
sizeof(shelf) / sizeof(shelf[0])得到的定义长度; - 实际使用的元素个数 \(n\);
- 首元素
shelf[0]; - 前 \(n\) 个元素,相邻整数之间一个空格,行末再输出一个空格和单词
CONST。
样例
输入 #1
10
1 2 3 4 5 6 7 8 9 10
输出 #1
10
10
1
1 2 3 4 5 6 7 8 9 10 CONST
输入 #2
5
1 2 3 4 5
输出 #2
10
5
1
1 2 3 4 5 CONST
说明
货架按 int shelf[10] 定义,所以第一行恒为 \(10\)。样例 2 只填了前 5 格,第二行仍是实际个数 \(5\)。不要输出十六进制或十进制地址。第四行的 CONST 表示禁止对数组名赋值。
信息
- ID
- 1042
- 难度
- (无)
- 分类
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者