shanhai847 2020-02-13 23:02 采纳率: 0%
浏览 4276

C语言输出小数点后第n位数字

图片说明

要求输出结果依次为2 4 6
我输出结果和这个题目要求一致,但是OJ提交却显示失败,求大佬帮助

#include
#include

int main()
{int t,n,i,m,j,k;
char a[50];
scanf("%d",&t);
while(t--){
scanf("%s%d",a,&n);
m=0;
m=(int)strlen(a);
k=0;
j=0;
for(i=0;i if(a[i]=='.'){
k=i+n;
j=m-i-1;
break;
}
}
if(j>=n){
if(n>=1&&n<=6){
printf("%d\n",a[k]-'0');
}

        }

}

return 0;

}


  • 写回答

2条回答

  • threenewbee 2020-02-14 09:52
    关注

    for(i=0;i if(a[i]=='.'){
    这代码根本就是错的。

    要保留3位小数,可以用 double,printf中使用 %.3lf

    评论

报告相同问题?

问题事件

  • 请采纳用户回复 10月23日

悬赏问题

  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常
  • ¥15 关于风控系统,如何去选择
  • ¥15 这款软件是什么?需要能满足我的需求
  • ¥15 SpringSecurityOauth2登陆前后request不一致