c#中怎么编个数组可以存放无限个整数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中怎么编个数组可以存放无限个整数相关的知识,希望对你有一定的参考价值。

就是不限制数组的长度 随便
放多少整数都可以
我是新手 不会用ArryList 请说仔细点

参考技术A using System.Collections;//引用这个空间,
ArraryList alist = new ArraryList();
alist.Add(11);
alist.Add("string");
alist.Add('char');
alist.Count;//获取元素个数,3个。
性能较低,这个数组存储的object,涉及装箱/拆箱。
建议改用System.Collections.Generic.IList
IList<int> list = new List<int>();
方法同上。不用类型转换,这是泛型的好处。
参考技术B ArrayList VS都帮我们写好了
实例化一下就OK
可以无限增加只要你内存足够大

其实最大也大不过你的内存容量因为一个数组必须放在内存里创建后就在内存里给你划分出一片区域供你使用不管你用完用不完他都在那放着别的程序都没法使用。
所以数组不宜过大,太大的东西用流比较好

参考资料:http://bbs.bccn.net/thread-237292-1-1.html

参考技术C ArrayList alist = new ArrayList();
list.Add(1);
list.Add(3);
list.Add(2);
//使用sort();排序本回答被提问者采纳
参考技术D ArrayList arr = new ArrayList();
list.Add(1);
可以一直添加下去
第5个回答  2009-09-15 是啊
初始化的时候不要限制数组的长度就O了

C语言编程:任意输入10个整数放入数组中,然后求其中的最大值和最小值

1、任意输入10个整数放入数组中求其中的最大值和最小值的源代码如下:

#include <stdio.h>

void main()

 int array[10];//用来存储输入的数据

int max;//用来存放最大的数

int i;//用于循环

 for(i=0;i<10;i++)   //一次输入10个数

 

//输入一个数并按回车键

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

 

max=a[0];//先假设最大值为第一个元素

for(i=1;i<10;i++)

if(a[i]>max)       //如果发现有比max大的数,修改max的值

max=a[i];

printf("是个数中最大的数是:\\n");

printf("%d",max);


2、任意输入10个整数放入数组中求其中的最小值的源代码如下:

#include<stdio.h>

main()

int i,a[10],min;

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

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

min=a[0];

for(i=1;i<10;i++)

if(a[i]<min)

min=a[i];

printf("%d\\n",min);


扩展资料

任意输入10个整数放入数组中求其中的最小值的源代码方法二如下:

#include<stdio.h>

int main()

//首先读入一个数作为最小值

int min;

scanf( "%d", &min );

//接下来读入九个数更新最小值

int i;

for( i = 1 ; i <= 9 ; ++i )

int num;

scanf( "%d", &num );

if( num < min )

min = num;

printf( "最小值为:%d\\n", min );

return 0;


参考技术A

#include "stdio.h"

//从键盘输入10个数存入一维数组,求这10个数中的最大值和最小值并输出

int main()

int i;

float max,min,num[10];

printf("请输入10个数,每输入一个数按回车键结束:\\n");

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

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

max=min=num[0];

for(i=1;i<10;i++)   

if(max<num[i])

max=num[i];

else if(min>num[i])

min=num[i];

printf("最大为:%f\\n最小为:%f\\n",max,min);

return 0;

 

扩展资料

使用其他方法得到10个数中的最大值与最小值:

#include<stdio.h>

int main()

int arr[10] = 0;

int i = 0;

int max = 0;

int min = 0;

printf("请输入10个整数:");

for (i = 0; i < sizeof(arr)/ sizeof(arr[0]); i++)

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

max = arr[0];

for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)

if (max < arr[i])

max = arr[i];

min = arr[0];

for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)

if (min > arr[i])

min = arr[i];

printf("max=%d\\n", max);

printf("min=%d\\n", min);

return 0;

参考技术B

程序:

#include&lt;stdio.h&gt;

int main()

int arr[10]=0;

int i=0;

int max=0;

int min=0;

printf("请输入10个整数:");

for(i=0;i&lt;sizeof(arr)/sizeof(arr[0]);i++)

scanf("%d",&arr&lt;i&gt;);

max=arr[0];

for(i=0;i&lt;sizeof(arr)/sizeof(arr[0]);i++)

if(max&lt;arr&lt;i&gt;)

max=arr&lt;i&gt;;

min=arr[0];

for(i=0;i&lt;sizeof(arr)/sizeof(arr[0]);i++)

if(min&gt;arr&lt;i&gt;)

min=arr&lt;i&gt;;

printf("max=%d\\n",max);

printf("min=%d\\n",min);

return 0;

结果:

请输入10个整数:1 2 3 56 23 6 767 32 11 567

max=767

min=1

请按任意键继续...

扩展资料:

方法二、

#include"stdio.h"

//从键盘输入10个数存入一维数组,求这10个数中的最大值和最小值并输出

int main()

int i;

float max,min,num[10];

printf("请输入10个数,每输入一个数按回车键结束:\\n");

for(i=0;i&lt;10;i++)

scanf("%f",&num&lt;i&gt;);

max=min=num[0];

for(i=1;i&lt;10;i++)

if(max&lt;num&lt;i&gt;)

max=num&lt;i&gt;;

else if(min&gt;num&lt;i&gt;)

min=num&lt;i&gt;;

printf("最大为:%f\\n最小为:%f\\n",max,min);

return 0;

参考技术C #include <stdio.h>

#define LEN 100 /*数组长度*/
#define elemType int /*元素类型*/

/*录入数组*/
void inputArr (elemType arr[], int len) 
int i;
for (i=0; i<len; i++)
scanf ("%d",&arr[i]);
putchar ('\\n');


/*打印数组*/
void printArr (elemType arr[], int len) 
int i;
for (i=0; i<len; i++)
printf ("%-4d",arr[i]);
putchar ('\\n');


/*求数组最大值、最小值等*/
void calcMaxAndMinEtc (elemType arr[], int len, elemType *max, elemType *min, int *maxIndex, int *minIndex) 
int i;

*max = *min = arr[0];
*maxIndex = *minIndex = 0;

for (i=0; i<len; i++) 
if (arr[i]>*max)  /*求最大值、元素编号*/
*max = arr[i];
*maxIndex = i;

if (arr[i]<*min)  /*求最小值、元素编号*/
*min = arr[i];
*minIndex = i;


 

int main (void) 
elemType arr[LEN];
elemType max,min,maxIndex,minIndex;
int len,i;

len = 10; /*指定数组元素个数*/ 
printf ("请输入包含%d个元素的整型数组:\\n",len);
inputArr (arr,len);
puts ("================================================================\\n");
    
calcMaxAndMinEtc (arr, len, &max, &min, &maxIndex, &minIndex);

puts ("此前输入数组:");
printArr (arr, len);
putchar ('\\n');

printf ("最大值:Max = arr[%d] = %d\\n",maxIndex,max);
printf ("最小值:Min = arr[%d] = %d\\n",minIndex,min);
putchar ('\\n');

fflush (stdin); /*清除缓冲区*/
getch (); /*屏幕暂留*/
return 0;

运行结果

参考技术D # include <stdio.h>
int main()
int i,max,min,a[10];
scanf("%d",&a[0]); //读入首个元素的值
max=min=a[0]; //只有一个元素时,它既是最大值,又是最小值
for(i=1;i<10;i++)
scanf("%d",&a[i]); //继续读入其余的9个数
if(a[i]>max)max=a[i]; //打擂台,继续比较,得出到当前为止的最大与最小值
else if(a[i]<min)min=a[i];

printf("最大值=%d\n最小值=%d\n",max,min); //输出结果
return 0;

以上是关于c#中怎么编个数组可以存放无限个整数的主要内容,如果未能解决你的问题,请参考以下文章

7F - 无限的路

HDU-2073 无限的路

无限的路

腾讯算法岗一面算法题——计数排序

Codeforces 1295B Infinite Prefixes

向量组的秩