mian() {int k; float a; double x; scanf("%d%f%lf",&k,&a,&x); printf("k=%d,a=%f,x=%lf\n"k,a,x) ; }
运行后我输入 100 25.81 1.89234
结果得出 k=100,a=15.809999,x=1.892340
第2次我又输入 100 15.81 1.89234
结果却是 k=100,a=15.810000,x=1.892340
我想问的是为什么第一次会变而第2次不变呢?
mian() {int k; float a; double x; scanf("%d%f%lf",&k,&a,&x); printf("k=%d,a=%f,x=%lf\n"k,a,x) ; }
运行后我输入 100 25.81 1.89234
结果得出 k=100,a=15.809999,x=1.892340
第2次我又输入 100 15.81 1.89234
结果却是 k=100,a=15.810000,x=1.892340
我想问的是为什么第一次会变而第2次不变呢?
#include <stdio.h>
main() {int k; float a; double x; scanf("%d%f%lf",&k,&a,&x); printf("k=%d,a=%f,x=%lf\n",k,a,x) ;
return 0; }
实型数据是有7位小数点的精确度的,你输入的小于7位,则后面的位是系统随机加的,无意义。应避免。
如
include<math.h>
main()
{
float a,b,c;
scanf("%f%f%f",&a,&b,&c);/*输入使判别式等于零的一组值*/
if(sqr(b*b-4*a*c)==0) printf("there is only one answer\n");/*这个语句不妥,应改为if(fabs(sqr(b*b-4*a*c))<=1e-6)*/
}
世事难料 说的有道理,不过关于对内存中相关类型的存储我没有弄的太明白,
我记得上次在原论坛就说过了,关于这个的问题!
那个return 0;应该是和斑竹使用的是C++有关系,不是C吧!
就是在C++中主函数也是有类型的!!!
#include<stdio.h>
void main() {
int k;
float a;
double x; scanf("%d %f %lf",&k,&a,&x); printf("k=%d,a=%f,x=%lf\n",k,a,x); getch(); }
楼主好象基本的语法错误了吧? main都错了