返回题目列表
COMP1521
指针与堆 · 数组翻倍
指针与堆 · 数组翻倍
把一段需要手动管理内存的指针练习交给你。
任务
- 读入一个整数
n,再读入n个整数。 - 用
malloc在堆上分配一个能放n个int的数组,把这n个数存进去。 - 通过函数
double_all(int *arr, int n),用指针把数组里每个元素翻倍。 - 按原顺序输出翻倍后的结果,空格分隔,行尾换行。
- 用完
free掉堆内存。
输入:第一行 n;接着是 n 个整数(空白分隔)。
输出:n 个翻倍后的整数,空格分隔。
例:输入 3 / 1 2 3 → 输出 2 4 6
用c-dcc编译:忘记free、越界、用了未分配的指针都会被当场抓出来。这道题是指针讲义里"压轴写码挑战"的真·沙盒版。
样例
stdin
3 1 2 3
期望输出
2 4 6
stdin
1 10
期望输出
20
c-dcc
14