是不是t接收的值有问题哟。。。加个取整的函数再试试耶。。。
还有几个符号是全角的。。。
[ 本帖最后由 zj26074 于 2009-11-15 12:24 编辑 ]
还有几个符号是全角的。。。
[ 本帖最后由 zj26074 于 2009-11-15 12:24 编辑 ]
#include<stdio.h> main() { double i,q; scanf("%lf",&i); if(i<0) { printf("it is not riight\n"); } else{ if(i<=100000)q=0.1*i; else if(i<=200000)q=0.1*100000+0.075*(i-100000); else if(i<=400000)q=0.1*100000+0.075*100000+0.05*(i-200000); else if(i<=600000)q=0.1*100000+0.075*100000+0.05*200000+0.03*(i-400000); else if(i<=1000000)q=0.1*100000+0.075*100000+0.05*200000*0.03*200000+0.015*(i-600000); else q=0.1*100000+0.075*100000+0.05*200000+0.03*200000+0.015*400000+0.01*(i-1000000); printf("q=%lf\n",q); } }这个是照你的要求改下······
#include<stdio.h> main() { double I,Q; int t; scanf("%lf",&I); if(I<0)printf("it is not right\n"); else{ if(I>=1000000)Q=0.1*100000+0.075*100000+0.05*200000+0.03*200000+0.015*400000+0.01*(I-1000000); else t=(int)I/100000; switch(t) { case 0:Q=0.1*I;break; case 1:Q=0.1*100000+0.075*(I-100000);break; case 2: case 3:Q=0.1*100000+0.075*100000+0.05*(I-200000);break; case 4: case 5:Q=0.1*100000+0.075*100000+0.05*200000+0.03*(I-400000);break; case 6: case 7: case 8: case 9:Q=0.1*100000+0.075*100000+0.05*200000+0.03*200000+0.015*(I-1000000);break; } printf("Q=%lf\n",Q); } }大写看的不顺溜·····