C语言:一道一维数组的编程题
编写一程序P412.C实现以下功能①程序运行时先显示Pleaseinputnumbers:,再从键盘上读入一组整数(只考虑int型),数与数之间只使用空格或回车作分隔。数...
编写一程序P412.C实现以下功能 ①程序运行时先显示Please input numbers:,再从键盘上读入一组整数(只考虑int型),数与数之间只使用空格或回车作分隔。数可正可负,最多10000个,但若读入的数为-222时,则表示输入结束且-222不算在该组数内。 ②对这一组数按从小到大的顺序进行排序。 ③将排序后的这一组数输出到屏幕上,输出格式为每行6个数,数与数之间使用逗号(,)分隔,两个逗号之间的宽度(不算逗号)为6且使用左对齐格式。注意,行尾没有逗号。 编程可用素材:printf("Please input numbers: ")...、printf("\nOutput:\n")...。 程序的运行效果应类似地如图1所示,其中的红色部分是从键盘输入的内容。
展开
1个回答
展开全部
#include<stdio.h>
int main()
{int a[10000],i=0,j,k,l;
printf("Please input numbers:");
while(scanf("%d",&k))
{
if(k==-222)
break;
a[i]=k;
i++;
}
for(j=0;j<i;j++)
{
for(l=j+1;l<i;l++)
{
if(a[j]>a[l])
{
k=a[j];
a[j]=a[l];
a[l]=k;
}
}
}
printf("Output:\n");
for(j=0;j<i-1;j++)
{
if((j+1)%6==0)
printf("%-6d\n",a[j]);
else
printf("%-6d,",a[j]);
}
printf("%-6d\n",a[i-1]);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询