c语言若不知道要输入多少组数据进行处理,应该怎么输入,该怎么写?

作者&投稿:邗邹 (若有异议请与网页底部的电邮联系)
C语言中,我想要输入多组数据,请问要怎么输入,不用EOF~

不用EOF的一个比较简易的方法就是输入正是数据之前先说明数据量有多少.

不知道量的话可以自己约定一个结束符. 比如遇到#就表示结束.

第一行是不是输入n(将来要输入的数字个数)?如果,不是的话你需要定义一个符号用来结束。

main()
{
int ary[A];
int i=0,j=0,m;
int SIZE;
printf("Please input the size of the array:");
scanf("%d",&SIZE);
for(i=0;i<SIZE;i++)
{
printf("Please input number %d:",i+1);
scanf("%d",&ary[i]);
}
上面这个例子中利用SIZE大小控制for循环 来控制数组大小。这是第一种,比较简单
第二种是分配动态内存 例如:
#include <stdio.h>
#include <stdlib.h>
void main()
{
int i,j;
int **a;
int nrows,ncolumns;

printf("Input rows and columns length: ");
scanf("%d%d",&nrows,&ncolumns);
printf("\n");

a=(int**)malloc(nrows*sizeof(int *)); //////////int *

for(i=0;i<nrows;i++)
{
a[i]=(int*)malloc(ncolumns*sizeof(int));

for(j=0;j<ncolumns;j++)
{
scanf("%d",&a[i][j]);
}
}

for(i=0; i<nrows;i++)
for(j=0;j<ncolumns;j++)
{
printf("%d ",a[i][j]); /////////////remove &
}

free(a);
printf("\n");

数组设定维度足够大
vector容器

while(scanf(" ", )!=EOF)

做一个链表吧少年


c语言若不知道要输入多少组数据进行处理,应该怎么输入,该怎么写?
main(){ int ary[A];int i=0,j=0,m;int SIZE;printf("Please input the size of the array:");scanf("%d",&SIZE);for(i=0;i<SIZE;i++){ printf("Please input number %d:",i+1);scanf("%d",&ary[i]);} 上面这个例子中利用SIZE大小控制for循环 来控制数组大小。这是第一种...

C语言中,如果不知道要输入几个数,怎么才能保证输入的数赋值给数组...
动态分配内存... 从输入是可以得到输入的数字的个数的(虽然不是常数), 然后为它动态分配一个特定大小特定类型的指针(其实就是数组)

C语言的编程,不知道为什么要输入两遍数字才会运行,大神求解。
scanf("%d%d",&a); 改成scanf("%d",&a); ,scanf是阻塞函数,接收到东西才会结束

C语言 在不知道用户输入的是字母还是数字的情况下 用int 还是char...
在需要接受用户不确定输入类型的前提下,如果只需要输入一个字符或者一个数字,使用int类型比较简单,不容易发生错误,使用单个字符变量,输入缓冲区里的字符有时候会对输入产生影响。但此时获取到的是字符内码,作为字符应用时需要按内码处理。而且在程序内,仅仅根据获取到的数据,很难区分获取到的是以一个...

在C语言中,如果要输入一串数字,其中每个数字用逗号隔开,且不知道总共...
然后循环:读1个字符,如果字符是逗号则读1个整型数,如果不是逗号,循环就结束。如果读整型数有错,循环也结束。include<stdio.h> include<stdlib.h> main(){ int x[100],n=0,i;int c;if ( scanf("%d",&x[n])==1) n++;while(1){ scanf("%c",&c);if (c != ',') break...

c语言中不知道输入的类型跟个数时,怎么判断输入的类型是什么
自己解析输入流即可,你可以先读取一个字符,看看它是什么,如果是运算符,则进行相应处理,如果是数字,则放回去,读取一个整数,示例代码如下:c=getchar();if(isdigit(c)){ ungetc(c,stdin);scanf("%d",&n);} else ...而LZ的要求可以像下面这样:假设输入格式为:1 2 3 4 5 + i=0;w...

C语言怎么让键盘输入数字到数组里,事先不知道要输入多少个数,按回车结...
include<stdio.h>int main(){int i,n=0,a[999];for(i=0;;i++){scanf("%d",&a[i]);n++; \/\/计算输入个数if(getchar()=='\\n')break; \/\/遇回车中断}for(i=0;i<n;i++)printf("%d ",a[i]);printf("\\n");return 0;} ...

编写一个C语言程序:从键盘输入一个字符串,删除该字符串所有首部和尾部的...
include <stdio.h>#include <string.h>int main(){int len,j;char a[100];scanf("%s",a);\/\/由于不知道要输入多少,所以以字符输入len=strlen(a);for(int i=1;i<(len-1);i++){printf("%d",a[i]-'0');\/\/再转化成数字}return 0;} ...

c语言输入等式若错误还要输入正确的加或减等式?
以下是一个简单的C语言程序,可以实现输入等式,如果等式不正确则提示错误并让用户输入正确的等式,直到输入正确为止:include <stdio.h> int main() { int a, b, c; \/\/ 用于存放等式的三个数 char op1, op2; \/\/ 用于存放两个运算符 int result; \/\/ 用于存放等式的计算结果 int is_correct ...

C语言中,对于不知道长度的数组怎样输入。。。
数组名[常量表达式]。2、一维数组程序举例:冒泡法。3、得到结果进行输出。4、二维数组常称为矩阵。把二维数组写成行列的排列形式,可以形象的理解二维数组的逻辑结构。5、字符数组的定义,引用和初始化:C语言中没有字符串类型,字符串是存放在字符型数组中的。6、字符数组综合举例。输出一个菱形。

老城区13220307716: 关于c语言 怎么在不确定数据个数的情况下输入数据并运行 -
牟选对氨: 肯定是有终止条件的,比如回车、文件结束符(ctrl+z)等.你的问题可以通过将输入作为一个字符串整体读入,然后在程序中对字符串进行解析分离出数据来解决.

老城区13220307716: C语言怎么让键盘输入数字到数组里,事先不知道要输入多少个数,按回车结束. -
牟选对氨: #include int main() { int i,n=0,a[999];for(i=0;;i++) { scanf("%d",&a[i]); n++; //计算输入个数 if(getchar()=='\n')break; //遇回车中断 } for(i=0;i printf("\n"); return 0; }

老城区13220307716: C语言定义一个一维数组,用来储存用户输入的数据,但又不知道对方要输入多少个,怎么定义? -
牟选对氨: 你应该先定义一个较大的数组,比如a【1000】,然户输入,只要比这个最大数小的个数个数据都可以.比如可以输入10个,可以输入100个等等

老城区13220307716: c语言问题,我输入一行数,用for循环和scanf函数输入,但是我事先不知道要输入多少个数字(少于 -
牟选对氨: int n; int a[100],i = 0; for( i= 0; ;i++) { printf("请输入数字:(-1代表结束)\n"); scanf("%d",&a[i]); if(a[i] == -1) break; } 输出的时候也使用n做判断条件,这样就好了.

老城区13220307716: C语言中,如果不知道要输入几个数,怎么才能保证输入的数赋值给数组 -
牟选对氨: 数组的大小是有限的 int a[10]; 你可以while(scanf("%d",a[i]) != EOF){ i++; }//然后再输入结束的时候按ctrl+z

老城区13220307716: C语言中,如果不知道要输入几个数,怎么才能保证输入的数赋值给数组呢? -
牟选对氨: 动态分配内存...... 从输入是可以得到输入的数字的个数的(虽然不是常数), 然后为它动态分配一个特定大小特定类型的指针(其实就是数组)

老城区13220307716: C语言,不知道会输入多少个数,我想输入0或负数的时候程序就结束输出奇数的和 sum,该怎么弄呀? -
牟选对氨: #include int main() {int N,i,sum=0; scanf("%d",&N);while(N>0){if(N%2!=0){sum +=N;}scanf("%d",&N);}printf("%d",sum);return 0;

老城区13220307716: C语言不知道将要输几个数 但要最后求他们的和该咋整
牟选对氨: 如果是文件输入的话,可以用EOF(end of file),其他方式的话就不知道了

老城区13220307716: 请问C语言如何在一个整形变量中输入多个数据,不用数组形式因为我也不知道用户会输入多少个数据. -
牟选对氨: 两种方法:第一,指针 int*p; int i; for(i=1;i<=3;i++) {*(p++)=i; } 最后,值1,2,3放入p指针里 第二:如果不用指针,必须用数组

老城区13220307716: c++在不知道要输多少个数的情况下,怎么定义数组 -
牟选对氨: 创建的动态数组--即是你想要多大的数组由你输入决定 下面我创建一个简单的一维数组测试程序 #include using namespace std; int main() { int n; cout << "请输入一维数组的大小:"; cin >> n; int *p = new int[n]; // 创建的动态数组 int i; for(i = 0...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网