C语言中关于long和float两种数据类型

为什么像这样写
# include <stdio.h>
void main()
{ long r,h,cl,cs,cvz;
printf("请输入圆的半径r和高h:");
scanf("%l,%l",&r,&h);
printf("r=%l,h=%l\n",r,h);
}

结果和下面这样写不一样
# include <stdio.h>
void main()
{ float r,h,cl,cs,cvz;
printf("请输入圆的半径r和高h:");
scanf("%f,%f",&r,&h);
printf("r=%f,h=%f\n",r,h);
}
看清楚以长整形输出的时候等号后面根本没数据!我是指这个不一样,不知道看图片没有!

long和float两种数据类型军师C语言中常见数据类型:
long数据类型
1.long 是C语言的一个关键字,代表一种数据类型,中文为长整型。
2. long是long int的简写,也就是说,在C语言中long int类型和long类型是相同的。
3. long型可以表示的整型数字范围为-2,147,483,648 ~ 2,147,483,647, 即-2^32 ~ 2^32-1
5.在用在C的格式化输入输出时,long型的格式化字符为"%ld"。
float数据类型

1.float是C语言中的一个数据类型的关键字,表示单精度浮点型(双精度浮点型为double)。
2.定义格式为:float a; // a表示一个浮点型的变量
3.C语言规定浮点型在内存占用4个字节,精度为7位,取值范围为:3.4*10^-38 ~3.4*10^38或者-(3.4*10^-38 ~3.4*10^38)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-08-10
FLOAT 是浮点型 你以%f 格式输出 即使 带小数点 精确到小数点以后几位输出了, long 是长整形 即使 以整数格式输出了 所以不一样啊本回答被提问者采纳
第2个回答  2009-08-10
#include <stdio.h>
void main()
{ long r,h,cl,cs,cvz;
printf("请输入圆的半径r和高h:");
scanf("%ld,%ld",&r,&h);
printf("r=%ld,h=%ld\n",r,h); //长整型是%ld吧
}
第3个回答  2009-08-10
你前面那个图,接收长整形数据的时候应该是%ld,不是%l
第4个回答  2009-08-10
难道你以为输出格式就是%+首字母?long用%d输出的。。