int main()
{
int a, b;
float x, y;
char c1, c2;
scanf("a=%db=%d", &a, &b);
scanf("%f%e", &x, &y);
scanf("%c%c", &c1, &c2);
printf("%d%d\n%f%f\n%c%c", a, b, x, y, c1, c2);
return 0;
}
第七行中scanf里面的%e是什么意思,我只查到输出时候的%e,并且,我把%e换成%f再运行,系统就会出现乱码并且报错,请问这是为什么,求解答,谢谢
假设要使x=8, y=71.82
则应输入8.0000007.182e+001
% e是指e格式符,用格式声明%e指定以指数形式输出实数
指数形式:由于在计算机输入或输出时无法表示上角或下角,故规定以字母e或E代表以10为底的指数。但应注意:e或E之前必须有数字,且e或E后面必须为整数。
%e:把输入值解释成一个浮点数,以科学计数法表示
第一个输入你有按照你定义的格式输入吗?
a=多少b=多少
这样很可能会出错
改成这样scanf("%d,%d",&a,&b);