• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

冒泡法排序为什么不能运行出正确的结果?

大少爷安安 2019-05-09 浏览量:914
为什么不对.PNG程序为什么不能运行出正确的结果?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 主要问题就是你输入数据的那个for后面多了个分号,其实数据只输入了1个,其他都是随机值(没有初始化数值的,如果你初始化化了,比如int a[10]={0};则可以看出来全是0啦。)
    • 发布于 2019-05-09
    • 举报
    • 评论 1
    • 1
    • 0
xdsnet 回复了 xdsnet:而且就是这个也是越界写入的,因为这时是写的a[10],已经越界啦。 回复

其他答案 数量:3
  • 你的程序中没用大括号,其实程序很容易就混乱啦。

    #include <stdio.h>
    
    int main(){
    	int a[10];
    	int ijt;
    	printf("input 10 num:\n");
    	for(i=0;i<10;i++){
    		scanf("%d"&a[i]);
    	}
    	printf("\n");
    
    	for(i=0;i<9;i++){
    		for(j=0;j<9-i;j++){
    			if(a[j]>a[j+1]){
    				t=a[j];
    				a[j]=a[j+1];
    				a[j+1]=t;
    			}
    		}
    	}
    
    	printf("Out:\n");
    	for(i=0;i<10;i++){
    		printf("%d "a[i]);
    	}
    	printf("\n");
    	return 0;
    }
    

    • 发布于2019-05-09
    • 举报
    • 评论 0
    • 0
    • 0

  • 你是不是之前用python编程的,{}不舍得用

    1第四行最后分号去掉

    2你的代码里面少了n多个{}

    • 发布于2019-05-10
    • 举报
    • 评论 0
    • 0
    • 0

  • 第四行那里的分号没有意义,加个分号,只是在那里空循环10次,并没有运行后面的语句

    此外,这个a[10]如果没有被正确赋值,那么它初始化之后,就是随机的数据

    • 发布于2019-05-13
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

冒泡法排序为什么不能运行出正确的结果?