题解 | #创建动态数组#
创建动态数组
https://www.nowcoder.com/practice/218b577112a24c23a41bdc01f28c18ac
#include <stdio.h>
int main() {
int n;
scanf("%d\n",&n);
int a[]={0};
int j=n;
for (int i=1;i<=n;i++){
a[i-1]=j;
printf ("%d ",a[i-1]);
j++;
}
return 0;
}
本人大一纯新手就简单分享一下我的想法,我本身对数组没有一个很深的理解,就给新手一些需要注意的地方,首先定义数组给数组一个初始化{0}才可以继续给数组分别进行定义(很菜的理解),我对循环进行几次不是特别的清楚,也错误了很两次,定义i=1,到i<=n就是循环n次,所以输出的值就是n个,我觉得这样比较好理解(不喜勿喷),这道题要弄清楚到底输出多少个数字是一个关键,从n到2n-1,如果一个个加一的话,两个数字的差值是n-1,那么就是输出n个数字。毕竟定义的是数组,所以根据i的变化去改变a[x],x是一直在变的,最好就是根据i的变化去改变,i从一开始,但是数组是从0开始的,所以就是i-1.
其实本来我的j,是用n写的,后面发现如果进入循环的条件中有n的话,他在改变就有可能去改变循环的发生,所以在循环外面提前给定义一个数字j和n本身的值相同,从而就不会破坏循环。
深信服公司福利 851人发布