一、数组的常见定义方式
char str1[] = { 'h','e', 'l', 'l', 'o', '\0' };
char str2[] = "hello";
char str3[20];
char str4[20] = { 0 };
可见,在定义数组时,必须给出数组的长度。要么像str1和str2那样给出具体有那些元素,要么像str3和str4那样给出数组的确切长度。如果用变量定义动态长度的数组,则必须使用malloc函数,见文章动态内存分配 malloc函数
二、scanf的常见用法
1.输入一系列整数
int arr[5];
for (int k = 0;k < 5;k++)
scanf("%d", &arr[k]);
注意:(1)scanf输入值存储至数组单个元素中时,必须加&
(2)输入方式可以为:1 \n 2 \n 3 \n 4 \n 5 \n ,每个输入值之间都敲回车。 也可以为:1 2 3 4 5\n,每个输入值之间都敲空 格,最后敲回车输入。
2.输入字符串
char str1[20];
scanf("%s", str1);
注意:(1)此时的str1代表首元素地址,无需加&
(2)字符串只能用此方法输入,无法用for循环逐个输入字符,因为回车\n,空格都会被视为普通字符,存入数组中。