c语言 如何从键盘中输入若干个数保存到数组中

如题所述

1、首先在电脑中打开编译器(vc++6.0),新建一个将1到100保存到数组中项目,如图所示。

2、添加一个 assignment.c 文件,如图所示。

3、包含stdio.h和stdlib.h头文件,如图所示。

4、输入main函数主体及返回值,如图所示。

5、定义一个char数组,长度为100,最后使用while循环进行赋值,如图所示,就完成了。

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-10-11

程序代码:

#include<stdio.h>

#define N 10

int main()

{int a[N]={0};

int i=0;

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

{scanf("%d",&a[i]);}

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

{printf("%d ",a[i]);}

return 0;

扩展资料:

C语言中数组的输入和存放可通过scanf()函数来实现。首先要定义一个数组a[],根据需要定义数组类型,必须定义数组长度,可使用宏定义#define N 10来定义数组长度,方便在修改,也可直接定义为a[10];通过for循环依次将数据存入数组,键盘输入时数据之间以空格间隔。

数据存入数组后可进行调用,这里以printf()函数调用输出为例,输出格式要记得加空格使数据隔开,避免数据连在一起。

本回答被网友采纳
第2个回答  推荐于2017-10-11

从键盘输入若干数据到数组中,可选用的方法:

    预估最大数据个数,按此数值定义数组空间,完成数据输入

    #define MAX_NUM 1000

    int a[MAX_NUM];  这种方法定义数组,方便,安全。缺陷是数组空间大小受系统限制,数据太多了,就不能这样定义了。

    运行时,确定输入数据个数,采用指针动态定义数组,或C99提供的动态数组的方法实现

    int *p;

    int n;  printf ("input n: "); scanf("%d", &n); //输入数据个数

    (1)p=(int *)malloc(n*sizeof(int) ); //动态分配空间    不用了记得要释放free(p)

    或  

    (2)int pa[n] ;  //C99支持的动态数组,按n值动态定义数组

    还可以采用指针动态扩充数组方法:先分配一定的大小,当数组不够用时,再重新分配空间。

    #define INIT_LEN 100        预分配空间

    #define INCE_LEN 10         每次扩充空间

    int *p=(int *) malloc(INIT_LEN *sizeof(int) );

    int length=INIT_LEN ;

    不足时, length+=INCE_LEN ;  p=(int *)realloc( p, length) ; //扩充空间

第3个回答  推荐于2017-10-08
int a[100],i=0;
while(scanf("%d",&x)!=EOF)
{
a[i]=x;

i++;

}//这样是输入文件结束后停止输入
或者是
int a[100],i=0;
while(scanf("%d",&x)!=-1)
{
a[i]=x;
i++;
}//这样的话就是输入-1时停止输入追问

不能有啊a[100],要任意多少个数,输入多少个数。a[n]中的n就是多少?

追答

骚年,这是不可能滴,计算机内存是有限的,数组只能定义一个固定值,不然的话要用链表(虽然也不可以输无限多个数)。像这种问题,一般都是这么写的
#define MAXSIZE 10000 //在这里定义大小,以后修改会方便点
int a[MAXSIZE],i=0;
while(scanf("%d",&x)!=-1)
{
a[i]=x;
i++;
}
数组大小定义好像是最大可以定义几百万吧,你把MAXSIZE 定义为10000 ,基本就不会越界了

本回答被提问者采纳
第4个回答  2012-11-19
输入N 以后,都动态开个数组。也可以建个链表模拟数组,随意加人一个元素,要返回某个元素,可以用个函数来代替

c语言 如何从键盘中输入若干个数保存到数组中
1、首先在电脑中打开编译器(vc++6.0),新建一个将1到100保存到数组中项目,如图所示。2、添加一个 assignment.c 文件,如图所示。3、包含stdio.h和stdlib.h头文件,如图所示。4、输入main函数主体及返回值,如图所示。5、定义一个char数组,长度为100,最后使用while循环进行赋值,如图所示,就完成...

如何输入键盘数组c语言
c语言如何从键盘中输入若干个数保存到数组中程序代码:#includestdio.h#defineN10intmain(){inta[N]={0};inti=0;for(i=0;iN;i++){scanf("%d",a[i]);}for(i=0;iN;i++){printf("%d",a[i]);}return0;}扩展资料:C语言中数组的输入和存放可通过scanf()函数来实现。首先要定义一个...

C语言怎么让键盘输入数字到数组里?
1、首先打开电脑的编辑软件。然后创建编辑项目。2、创建文件指针和字符型char。再读取文件内容。3、然后用for语句进行接受数据。再用getchar语句接受键盘的输入。4、然后用foput函数。再将数据写入到文件。5、然后用fclose函数关闭文件。再返回数值。6、运行程序,输入数值。再打开文件,就可以发现键盘输入...

C语言数组从键盘输入10个整数存入数组,找出其中最大和最小值,并输出...
在C语言中,一个程序可以通过键盘输入10个整数,并将它们存储在一个数组中。接着,程序会找出数组中的最大值和最小值,并将这两个数值输出。以下是这个过程的代码实现:#include<stdio.h> intmain(){ inti;floatnum[10];printf("请输入10个数,每输入一个数按回车键结束:\\n");for(i=0;in...

C语言里如何输入几个字符串放到一个数组中
方法如下:include <stdio.h> void main(){ char s[10][80];for(i=0;1<10;i++){ gets(s[i]);} }

如何用c语言从键盘输入10个数存入数组并求和?
1、首先打开c语言编辑器,新建一个C语言的文件,文件中引入C语言的头文件,新建一个main函数,函数中设置一个10个元素的数组以及一个用来求和的变量:2、之后用一个for循环遍历数组,每次都从scanf中取到用户输入的数并存入数组中,存完后再用sum加这个数,如此便能求出数组内元素的和了:3、最后...

C语言如何把输入进去的数放到数组中
有两种方式:1 先输入数值,在存放在数组的对应位置中,即赋值给对应元素。如 scanf("%d",&i);a[k] = i;就是先输入到变量i中,然后把i存储在a的第k个元素中。2 直接输入到数组对应元素中。如 scanf("%d",&a[k]);与1中的例子是相同效果,只是减少了中间变量的使用。

c语言,如何将键盘输入的n个整数存入一个数组中,n的大小未知?
h> void main(){ int a[50];int i=0,j=0;printf("请输入数据,中间用空格间隔,用回车结束输入:\\n");do { scanf("%d",&a[i++]);}while(getchar()!='\\n');for(j=0;j

怎么用C语言的scanf实现一次输入若干个数据
这里我们先建一个固定长度的数组,如下图,数组长度为1000 然后就需要用到循环了,并且设置一个按键“回车键”跳出循环。这样,不断循环就可以不断地将数字存进数组里。当我们按回车键的时候就会跳出循环,结束输入。而输入的数据就会保存在num数组之中,唯一的缺点就是数组长度是固定的。

C语言题:一行输入多个数字,空格分开,回车结束,结果保存到数组
你好,我是2年前学的c与c++,具体怎么编写可能出错误,我告诉你我的思路吧;定义数组,double数据类型以及char类型,将空格,回车(属于char类型数据)作为判断依据,用if语句就好,如果遇到space则将得到数据保存数组,遇到回车结束。得到字符貌似可以用getchar()语句。愿对你有所帮助。

相似回答