Secret Number
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 7370 Accepted Submission(s): 3126
Problem Description
有一天, KIKI 收到一张奇怪的信, 信上要KIKI 计算出给定数各个位上数字为偶数的和.
eg. 5548
结果为12 , 等于 4 + 8
KIKI 很苦恼. 想请你帮忙解决这个问题.
eg. 5548
结果为12 , 等于 4 + 8
KIKI 很苦恼. 想请你帮忙解决这个问题.
Input
输入数据有多组,每组占一行,只有一个数字,保证数字在INT范围内.
Output
对于每组输入数据,输出一行,每两组数据之间有一个空行.
Sample Input
415326 3262
Sample Output
12 10
Author
kiki
Source
Recommend
这个题目应该说还是很简单的,但是PE了很多遍,如果我们直接在后面打上斜杠的话,就会导致最后一组数据也会有一个斜杠,不会符合
两个之间有一个空行了
我的水代码
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
int i,j,k;
char a[1000];
int T=0;
scanf("%s",a);
int l=strlen(a);
int sum=0;
for(i=0;i<l;i++)
{
if((a[i]-'0')%2==0)
{
sum=sum+a[i]-'0';
}
}
printf("%d\n",sum);
while(scanf("%s",a)!=EOF)
{
T++;
int l=strlen(a);
int sum1=0;
for(i=0;i<l;i++)
{
if((a[i]-'0')%2==0)
{
sum1=sum1+a[i]-'0';
}
}
printf("\n%d\n",sum1);
}
return 0;
}
简单的代码
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
int i,j,k;
int flag=0;
char a[1000];
while(scanf("%s",a)!=EOF)
{
if(flag)
{
printf("\n");
}
int sum=0;
int l=strlen(a);
for(i=0;i<l;i++)
{
if((a[i]-'0')%2==0)
{
sum=sum+a[i]-'0';
}
}
flag=1;
printf("%d\n",sum);
}
return 0;
}