#include<stdio.h>
int main()
{
int a,b,m;
double e,c,f;
c=0;
f=0;
scanf("%d",&a);
m=a;
if(a<0)
a=-a;
do
{
b=a%10;
if(b==2)
c++;
a=a/10;
f++;
}while(a!=0);
e=c/f100;
if(m<0)
e=e1.5;
if(m%2==0)
e=e*2.0;
printf("%.2f%%",e);
return 0;
}
题
a定义为int型是不够的,题目提示改值可以是50位之多。
建议用字符串来接收,然后逐个判断字符是否为数字就可以了