1327
计算位数
描述;给你一个整数N请计算出这个数的位数
输入;整数N
输出;输出整数N的位数占一行
10
2
#include
#include
int main()
{
int a,t=0;
scanf("%d",&a);
if(a==0)
printf("1");
else
{
while(a!=0)
{
t++;
a=a/10;
}
printf("%d",t);
}
return 0;
}
注释;当用while是格式是while(判断式)
1328
四则运算
描述;
给你一个简单的四则运算表达式,包含两个实数和一个运算符,请编程计算出结果
输入;表达式格式为:s1$s2,s1和s2是两个实数,“$表示的是运算符(+-*/)也有可能是其他字符
输出;如果运算符合法,输出表达式的值:如运算符不合法或者是除数是0,输出wrong input.最后结果小数点后保留两位
1.0+1.0
2.00
#include
#include
int main()
{
char ch;
double a,b,c;
scanf("%lf %c %lf",&a,&ch,&b);
if(ch==42)
{
c=a*b;
printf("%.2lf
",c);
}
else if(ch==43)
{
c=a+b;
printf("%.2lf
",c);
}
else if(ch==45)
{
c=a-b;
printf("%.2lf
",c);
}
else if(ch==47)
{
if(abs(b)<1e-10)
printf("Wrong input!
");
else
{
c=a/b;
printf("%.2lf
",c);
}
}
else
{
printf("Wrong input!
");
}
return 0;
}
应根据ch的ascii码值来单独求解
或者是
#include
#include
int main()
{
double a,b,c;
char d;
scanf("%lf%c%lf",&a,&d,&b);
if(fabs(b)<1e-10&&d==47)
printf("Wrong input!");
else
{
{
if(d==42)
c=a*b;
else if(d==43)
c=a+b;
else if(d==45)
c=a-b;
else if(d==47)
c=a/b;
else
printf("Wrong input!");
}
if(d==42||d==43||d==45||d==47)
printf("%.2lf",c);
}
return 0;
}
注释;先求b是否等于零求解,殊途同归
b==可以写为fabs(b)<1e-10
1329
最大字符
描述;
给你三个ASCII字符(不