这个C语言中有什么错误??

来源:百度知道 编辑:UC知道 时间:2024/05/25 05:32:13
#include<stdio.h>
void main()
{int a=0xaf;
b=01234567;
char c='a';
char d='\101';
float m=1.456e6;
printf("%d\n",a+b);
printf("%d\n",c);
printf("%c\n",d);
printf("%d\n",32678+1);
printf("%f\n",m+35);
printf("%f\n",123456*6);
}
是在Microsoft Visual C++ 6.0中运行C语言的 为什么运行printf("%f\n",123456*6);的结果是0.000000

正确的程序:
#include<stdio.h>
void main()
{
int a=0xaf,b=01234567;

char c='a';

char d='\101';

float m=1.456e6;

printf("%d\n",a+b);

printf("%d\n",c);

printf("%c\n",d);

printf("%d\n",32678+1);

printf("%f\n",m+35);

printf("%f\n",123456*6);
}
你自己对照看一下吧,格式上有错误!

int a=0xaf;
b=01234567;
之间应该用逗号吧?你用了分号

0xaf;是什么意识哦?

b=01234567;这句前面没加数据类型,可以参照三楼的意见.
0Xaf是十六进制的表示(af)16.

还有就是变量b=01234567;这句超出int的范围int 取值为-32768到32767
改为long b=01234567;
还有float m=1.456e6;
这句也一样.长量不够应用double型
改成double m=1.456e6