请教数组的问题
一维数组main()
{
int a[11];
int i,j,t;
printf("input 10 numbers :\n");
for(i=1;i<11;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=1;j<=9;j++)
for(i=1;i<=10-j;i++)
if(a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
printf("the sorted numbers;\n");
for(i=1;i<11;i++)
printf("%d ",a[i]);
}
我想实现:不管输入多少个数都能打印,怎么做啊?
搜索更多相关的解决方案:
numbers
----------------解决方案--------------------------------------------------------
怎么没人看啊,有没有人会的啊,......................
----------------解决方案--------------------------------------------------------
同学,首先很抱歉的告诉你,c语言数组你得好好学学
我给你改了一下,仔细看看:
main()
{
int N=11;
int a[N];
int i,j,t;
printf("input 10 numbers :\n");
for(i=0;i<N-1;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=0;j<N-2;j++)
for(i=0;i<N-2-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("the sorted numbers:\n");
for(i=0;i<N-1;i++)
printf("%d ",a[i]);
}
大概给你说一下数组得知识:
举个例子:
int array[11];
它一共分配11个内存空间,
空间: 1 2 3 4 5 6 7 8 9 10 11
数组: a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]
其中a[0]--a[9]用来存放数据,a[10]不能赋值,只能为'\0'(字符串结束标志)
数组应该从a[0]开始,a[9]结束,a[10]不能用
----------------解决方案--------------------------------------------------------