C语言,输入不定个数数字,当输入0时停止输入。如何构建编程?
1、思路:使用while(scanf(%d,&n)&&n),表示输入正确并且输入的数不等于0时继续循环,否则跳出循环。
2、建议你先全部初始化为,再用do while 或者先输入a[0] 再循环。而且,最近老是看见人用 fflush(stdin); 有必要吗。。
3、int a,b;//定义两个变量,供输入。while(1)//死循环{ scanf(%d%d,&a,&b);//读入两个数。 if(a == 0 && b == 0) break;//均为0,结束输入。 //这里放对a和b不全为0时的处理。
C语言怎么输入不确定个数的数组
1、用malloc函数。。比如你要申请int型的未知个数数组。
2、如果限制于C语言的话。那么就不是很方便了。但是是有方法的:有叫malloc,realloc的函数,在头文件stdlib.h或者malloc.h里面(看编译器)。给你一个我写的代码。你看着怎么用。
3、你可以先malloc一个比较大点的空间,比如20个int的数组空间,当输入个数超过20时,realloc一片20+10的空间,也就是一次性增大10个int的空间,再输入到30个了,就再realloc一片30+10的空间。
4、一维数组程序举例:冒泡法。得到结果进行输出。二维数组常称为矩阵。把二维数组写成行列的排列形式,可以形象的理解二维数组的逻辑结构。
5、如果行数确定了,那么可以定义一维指针数组,然后再通过malloc或者calloc函数动态分配多个数组。
6、对于输入的数据的个数不确定的情况,一般会预设一个特殊的非法值(这个值是属于论域之外的一个值)作为终止值,例如如果论域是正整数,则通常会将0作为终止值,即当输入0时结束,且0不作为有效数据。
用C语言实现从键盘上输入不确定个数的数字,将数字从小到大排序后输出…
{num=a;a=b;b=num;} /*因为a值大,把a值先赋给num,然后把b值赋给a,a就变小,然后把num也就是之前a的大值赋给b,这个时候就把a和b的值交换了。
C语言 从键盘输入10个整数,将这10个整数按从小到大的顺序输出。
(1)交换排序:参照求最大值和最小值的思想,按升序排序的基本过程是将第一个数字与下一个数字进行比较。如果后面的数字很小,那么交换和第一个数字的位置。否则,不要交换。
定义变量和数组的数据输入10个数:int a[10],i,t;/*定义变量和数组数据类型为整型*/printf(输入10个整数:);/*输出文字提示*/for(i=0;i=9;i++) /*输入10个数*/scanf(%d,&a[i]);。