大家帮小弟我看看是哪里的有关问题?结果就是出不来。崩溃了
大家帮我看看是哪里的问题?结果就是出不来。。。崩溃了
------解决方案--------------------
double a,b,c;
scanf("%lf%lf%lf",&a,&b,&c);
printf中double和float都可以用“%f”
scanf中double要用“%lf”
------解决方案--------------------
scanf("%lf%lf%lf",&a,&b,&c);
------解决方案--------------------
问题就在于单双精度,呵呵! scanf("%f%f%f",&a,&b,&c);
------解决方案--------------------
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
- C/C++ code
#include <stdio.h> #include <iostream> using namespace std; void main() { double a,b,c; scanf("%f%f%f",&a,&b,&c); if(a>=b) if(a>=c) { if(a>0&&a<=0.3) printf("一般\n"); else if(a==0.5||a==0.4) printf("良好\n"); else if(a>=0.6&&a<=1) printf("优秀\n"); } else { a=c; if(a>0&&a<=0.3) printf("一般\n"); else if(a==0.5||a==0.4) printf("良好\n"); else if(a>=0.6&&a<=1) printf("优秀\n"); } else if(b>=c) { a=b; if(a>0&&a<=0.3) printf("一般\n"); else if(a==0.5||a==0.4) printf("良好\n"); else if(a>=0.6&&a<=1) printf("优秀\n"); } else { a=c; if(a>0&&a<=0.3) printf("一般\n"); else if(a==0.5||a==0.4) printf("良好\n"); else if(a>=0.6&&a<=1) printf("优秀\n"); } system("pause"); return; }
------解决方案--------------------
double a,b,c;
scanf("%lf%lf%lf",&a,&b,&c);
printf中double和float都可以用“%f”
scanf中double要用“%lf”
------解决方案--------------------
scanf("%lf%lf%lf",&a,&b,&c);
------解决方案--------------------
问题就在于单双精度,呵呵! scanf("%f%f%f",&a,&b,&c);
------解决方案--------------------
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。