题目:
给定一个三位数,判断其每一位数字,若为偶数,则进行累加,如:124,其第1、2位为偶数,所以其偶数位之和为2+4=6。
一、一开始打算用数组写一个循环,但是运行结果是错误的,有没有佬看看是啥毛病qwq
#include <stdio.h>
int main() {
int arr[2];
int size = sizeof(arr) / sizeof(arr[0]);
int j;
for(j=0;j<3;j++)
{
scanf("%d",&arr[j]);
}
int sum = 0;
for (int i = 0; i < 3; ++i) {
if (arr[i] % 2 == 0) {
sum += arr[i];
}
}
printf("%d\n", sum);
return 0;
}
二、然后用了最笨的方法,用个十百计算相加,运行出了正确结果:
#include<stdio.h>
int main()
{
int x;
int sum=0;
int ge,shi,bai;
scanf("%d",&x);
ge=x%10;
int x1=x/10;
shi=x1%10;
int x2=x1/10;
bai=x2%10;
if(ge%2==0)
{
sum=ge;
if(shi%2==0)
{
sum=sum+shi;
}
if(bai%2==0)
{
sum=sum+bai;
}
}
printf("%d",sum);
}
运行结果: