c语言的输入数组,c语言的输入数组是什么

kodinid 10 0

大家好,今天小编关注到一个比较意思的话题,就是关于c语言输入数组问题,于是小编就整理了5个相关介绍c语言的输入数组的解答,让我们一起看看吧。

  1. c语言数组输入方式?
  2. C语言结构体数组,的输入方式?
  3. 如何按行输入一个二维数组?
  4. c语言输入数组需要取地址么?
  5. c语言中怎么用数组输入浮点数?

c语言数组输入方式?

在C语言中,有两个函数可以用户从上输入数组数据,它们分别是gets()和scanf()。scanf()是通过格式符%s输入数组字符串,除了字符串,还能输入其他类型的数据;gets()是直接输入数组字符串,并且只能输入字符串。

但是,scanf()和gets()是有区别的。

c语言的输入数组,c语言的输入数组是什么-第1张图片-安济编程网
图片来源网络,侵删)

scanf()读取字符串时以空格为分隔,遇到空格就认为当前字符串结束了,所以无法读取含有空格的字符串。

gets()认为空格也是字符串的一部分,只有遇到回车键时才认为字符串输入结束,所以,不管输入了多少个空格,只要不按下回车键,对 gets() 来说就是一个完整的字符串。换句话说,gets() 用来读取一整行字符串。

C语言结构体数组,的输入方式?

for (int p=0; p<3; p++) { scanf("%d %d %s", &a[p].i, &a[p].j, a[p].k); } 输入时,i,j,k用空格隔开。输入字符串k时,中间不要有空格。完成后,用回车确定

c语言的输入数组,c语言的输入数组是什么-第2张图片-安济编程网
(图片来源网络,侵删)

如何按行输入一个二维数组?

按行输入一个二维数组,可使用双重循环,外循环控制行,内循环控制列。例如对于二维数组int b[3][4],如果要按行输入,可以使用下面的代码(C语言):

for(i=0;i<3;i++)

{

c语言的输入数组,c语言的输入数组是什么-第3张图片-安济编程网
(图片来源网络,侵删)

for(j=0;j<4;j++)

{

scanf("%d",&b[i][j]);

}

}

二维数组也可以按列输入,若要按列输入,也是使用双重循环,只不过用外循环控制列,用内循环控制行而已。

scanf那行里的a[i][j]要写成&a[i][j],输入就正常的输入就行了,其实scanf读入数字的时候,数字可以用空格、回车或者TAB间隔,比如说一个2x2的数组,你输入 10 11 12 13 或者输入10 11 12 13都是可以的。

c语言输入数组需要地址么?

数组名是指向数组第一个元素指针,所以如果你直接使用数组名的时候是不需要取地址符的。

如果你用了下标操作那就需要取地址符,比如:int num[10];直接使用num,那么不用取地址符。

如果你用num[1],通过scanf给其赋值,是需要取地址符的

c语言中怎么用数组输入浮点数

在C语言中,可以使用数组来输入浮点数。首先,定义一个浮点数类型的数组,例如`float numbers[10];`表示可以存储10个浮点数的数组。然后,使用循环结构(如for循环)来逐个输入浮点数,可以使用`scanf`函数来接收输入的浮点数,并将其存储到数组中的相应位置。例如,可以使用以下代码来输入10个浮点数:

```c

#include <stdio.h>

int main() {

float numbers[10];

int i;

printf("请输入10个浮点数:\n");

for (i = 0; i < 10; i++) {

scanf("%f", &numbers[i]);

}

到此,以上就是小编对于c语言的输入数组的问题就介绍到这了,希望介绍关于c语言的输入数组的5点解答对大家有用。

标签: 数组 输入 字符串