HM043 货架铭牌

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\)。

输出格式

共四行,每行结尾换行:

  1. sizeof(shelf) / sizeof(shelf[0]) 得到的定义长度;
  2. 实际使用的元素个数 \(n\);
  3. 首元素 shelf[0]
  4. 前 \(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
通过率
?
上传者