定义一个整型数组num[10],随机初始化数组中元素值,然后利用冒泡法将数组中的元素值从小到大排序输出。

#include<stdio.h>
int main(void)
{
int num[10];
int i,j,t,a;
printf("请输入10个数字:\n");
for(a=0;a<10;a++)
{
scanf("%d",&num[a]);
}
for(i=0;i<10;i++)
{
for(j=0;j<10-i-1;j++)
{
if(num[j]>num[j+1])
{
t=num[j+1];
num[j+1]=num[j];
num[j]=t;
}
}

}
for(i=0;i<10;i++)
printf("%d",num[i]);
printf("\n");

return 0;
}
实在是不知道问题出现在哪里了,各位帮我看看吧

没有错,程序是对的,printf("%d",num[i]);在%d后面加个空格吧,这样显示都在一起了追问

运行了 有问题,我也不知道问题出在哪里,要不你运行一下试试

追答

我运行了没有问题的

追问

我输入完了10个数字之后,按enter没反应啊。。。

追答

这个程序肯定是没有问题的,代码没有问题,编译运行也没有问题的,我用CL和GCC两套编译器试了,都没错的,你是连续输入的十个数字么。。。要空格或者回车的哦。。。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-21
你这个程序 是正确的
不过输出的各个数字是连在一起的
在printf("%d",num[i]);改为printf("%d\n",num[i]);
相似回答