当前位置: 代码迷 >> Java相关 >> 为什么相加后结果是错的!
  详细解决方案

为什么相加后结果是错的!

热度:7   发布时间:2012-11-04 12:28:46.0
为什么相加后结果是错的!
为什么相加后结果是错的!
public class Demo {

    /**
     * 字符串:“123456789012”
     * 将字符串的奇数位数字相加c1=1+3+5+7+9+1
     * 将字符串的偶数位数字想加c2=2+4+6+8+0+2
     */
    public static void main(String[] args) {
        int c1=0,c2=0;
        String st="123456789012";
        for (int i = 0; i < st.length(); i++) {
            int c=(st.charAt(i));
            if(i%2!=0){
                c1+=c;               
            }else {c2+=c;}
        
        }System.out.println("奇数="+c1+" "+"偶数="+c2);   
}}
搜索更多相关的解决方案: public  字符串  

----------------解决方案--------------------------------------------------------
程序代码:
int c1 = 0, c2 = 0;
        String st = "123456789012";
        for (int i = 0; i < st.length(); i++) {
            int c = Integer.parseInt(st.substring(i, i+1));
            if (i % 2 != 0) {
                c1 += c;
            } else {
                c2 += c;
            }

        }
        System.out.println("奇数=" + c1 + " " + "偶数=" + c2);

----------------解决方案--------------------------------------------------------
谢谢版主
----------------解决方案--------------------------------------------------------
public class Example19 {

    /**
      * 字符串:“123456789012”
      * 将字符串的奇数位数字相加c1=1+3+5+7+9+1
      * 将字符串的偶数位数字想加c2=2+4+6+8+0+2
      */
     public static void main(String[] args) {
         int c1=0,c2=0;
         String st="123456789012";
         for (int i = 0; i < st.length(); i++) {
             int c=Integer.parseInt(""+st.charAt(i));
             if(i%2!=0){
                 c1+=c;               
            }else {c2+=c;}
         
         }System.out.println("奇数="+c1+" "+"偶数="+c2);   
}}
----------------解决方案--------------------------------------------------------
  相关解决方案