首页 > 编程知识 正文

关于然后在java中输出结果为5的信息

时间:2023-12-29 20:32:07 阅读:331241 作者:GPRR

本文目录一览:

c语言中int a=1 a+=(a++)+(++a) 再printf (%d/n,a); 结果为7, 然后在java中输出结果为5,为什么不同?

在c中,先执行后面的(++a),这样a=2呢,在执行(a++),这时先赋值a为2,再加一,就为三,式子变成了a+=3+2 a+=a+5 此时a还为2,就是2+5=7

在java中 展开为a=a+(a++)+(++a),java中++和其他运算符混用时结合性不同的a+(a++)是左结合,(++a)是右结合,这答案为啥是5你就应该懂了吧

在c中没区别,在jav中就有区别,这就是为啥结果不同的原因

1 2 3 4 5输出结果是5的java

你好,提问者:

由于问题描述不准确,我提供两种解决案例,供您参考:

        //字符串形式

        String str = "1 2 3 4 5";

        System.out.println(str.substring(str.length() - 1, str.length()));

        

        //数组形式

        int[] arr = {1,2,3,4,5};

        System.out.println(arr[arr.length - 1]);

这是一道java题目,为什么输出是5 6 7 8 9.循环的执行过程是怎么样的?

int a[] = {5,9,6,8,7};

 int i,j;

 for(i = 0;ia.length-1;i++){//1层循环取元素

 int k = i;

 for(j=i;ja.length;j++){//二层循环,取剩余部分(除去前一个元素)

 if(a[j]a[k]){//如果前一个元素后面的元素

 k=j;//交换下标

 }

 }

 //冒泡排序 主题思想就是临时变量temp永远代表最小的值,然后将这个最小值赋给下标较小的

 int temp = a[i];

 a[i] = a[k];

 a[k]= temp;

 }

 for(i=0;ia.length;i++){

 System.out.println(a[i] + " ");

 }

 System.out.println();

 }

Java 请问为什么以下程序段的输出结果为 5 6 7 8 9?

就是简单的排序程序啊,就是想近的两个数做比较(j和k),大的放到一个变量里面,然后这个大的又和下一个数比较。等这一轮比较完了,然后又把剩下的数按相同的方式一一比较。以此类推。

有点像冒泡排序法。你可以查一下"冒泡排序法",网上有详细解释

如果你是运行问题,我反正发现你程序里好像少了一个大括号{

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。