为什么相加后结果是错的!
为什么相加后结果是错的!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);
}}
----------------解决方案--------------------------------------------------------
程序代码:
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);
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);
}}
----------------解决方案--------------------------------------------------------