小粒径空气离子检测仪:c语言编的程序错误

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/28 17:40:46
#include "stdio.h"
main()
{
double a,b,c,s,v;
scanf("input a,b,c:%lf%lf%lf",&a,&b,&c);
s=a*b;
v=a*b*c;
printf("%lf %lf %lf",a,b,c);
printf("s=%lf,v=%lf\n",s,v);
}
我用C语言编写了一个求长方体占地面积和体积的小程序,可是在运行时所有结果都是0.000000,大家帮我看看这段程序到底有什么问题,我是在XP中运行C的,谢谢大家!
星际蓝剑的回答还是有问题,不过谢谢你!

你的问题出在语句 scanf("input a,b,c:%lf%lf%lf",&a,&b,&c); 上:
执行时你看不到
input a,b,c:
估计是你输入时只通过空格间隔三个数字,然后回车,得到错误的额结果。
其实只要你原原本本的输入
input a,b,c:1 2 3
然后回车,也得到正确结果。scanf函数用法是,其内部的任何内容你都要敲入电脑,如果你的语句是scanf("%lf,%lf,%lf"); 而你执行时输入三个数字,格式为
12 23 24
也是错误的,正确的是:
12,23,24
要和scanf语句的格式完全一致。
你的程序中这一句可以改为以下两句:
printf("Please input a,b,c:\n");
scanf("%lf%lf%lf");

#include "stdio.h"
main()
{
double a,b,c,s,v;
scanf("%lf,%lf,%lf",&a,&b,&c);
s=a*b;
v=a*b*c;
printf("%lf %lf %lf",a,b,c);
printf("s=%lf,v=%lf\n",s,v);
}

看起要好看点
#include<stdio.h>
main()
{
double a,b,c,s,v;
scanf("%lf %lf %lf",&a,&b,&c);
s=a*b;
v=a*b*c;
printf("%lf\n%lf\n%lf\n",a,b,c);
printf("s=%lf\tv=%lf\n",s,v);
}


#include<stdio.h>

main()
{
double a,b,c,s,v;
clrscr();
printf("input a,b,c:\n");
scanf("%lf%lf%lf",&a,&b,&c);
s=a*b;
v=a*b*c;
printf("%lf %lf %lf\n",a,b,c);
printf("s=%lf\nv=%lf\n",s,v);
} 
注意输入的时候abc之间用空格隔开哦
或者输入一个回车一次

初学者一定要注意scanf的格式啊