C语言初学的一道题!
写一个程序:用于接收用户输入的两个小数(可以是整数也可以是小数),对其执行加、减、乘、除及求余运算,然后以格式化的方式计算结果,要求小数点保留两位有效数字。
[解决办法]
#include <stdio.h>
int main(void)
{
float a, b;
char c;
puts ( "请输入两操作数: ");
scanf ( "%f %f ", &a, &b);
getchar ();/* 吃掉多余的那个回车 */
puts ( "请输入操作符(+ - * / %): ");
scanf ( "%c ", &c);
switch (c)
{
case '+ ':
printf ( "\n%2.2f %c %2.2f = %2.2f\n ", a, c, b, a+b);
break;
case '- ':
printf ( "\n%2.2f %c %2.2f = %2.2f\n ", a, c, b, a-b);
break;
case '* ':
printf ( "\n%2.2f %c %2.2f = %2.2f\n ", a, c, b, a*b);
break;
case '/ ':
printf ( "\n%2.2f %c %2.2f = %2.2f\n ", a, c, b, a/b);
break;
case '% ':
printf ( "\n%2.0f %c %2.0f = %d\n ", a, c, b, (int)a%(int)b); /* 求余的时候要转化一下 */
break;
default:
printf ( "操作输入有! ");
}
return 0;
}
[解决办法]
#include<stdio.h>
void main()
{
float a,b;
printf("请输入两个数(可以是整数或小数):");
scanf("%f%f",&a,&b);
/*接收*/
printf("两数相加为:%5.3f\n",a+b);
printf("两数相减为: %5.3f\n",a-b);
printf("两数相乘为: %5.3f\n",a*b);
printf("两数相除为: %5.3f\n",a/b);
printf("两数相除余数为: %d\n",(int)a%(int)b);
}