| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 22 人关注过本帖
标题:这里的a,b为什么要定义longlong
只看楼主 加入收藏
bug芒果核
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2025-9-12
结帖率:100%
收藏
 问题点数:20 回复次数:1 
这里的a,b为什么要定义longlong
输入
一行三个正整数 a b,n
输出
一行,输出 a÷b四舍五入保留到小数点后第n位后的结果
输入样例
8 3 6
输出样例
2.666667
数据范围
1⩽a⩽109,1⩽b⩽109,1⩽n⩽100

#include<stdio.h>
int main(){
    long long a,b,c;
    int n;
    int ans[105];
    scanf("%lld%lld%d",&a,&b,&n);
    for(int i=0;i<=n;i++){
        ans[i]=a/b;
        c=a%b*10;
        a=c;
    }
    if(a/b>=5) ans[n]++;
    for(int i=n;i>0;i--){
        if(ans[i]>=10){
            ans[i]-=10;
            ans[i-1]++;
        }
        else break;
    }
    printf("%d.",ans[0]);
    for(int i=1;i<=n;i++){
        printf("%d",ans[i]);
    }
    return 0;
开始我定义int提交是wa
搜索更多相关主题的帖子: 定义 int 输出 long for 
9 小时前
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9070
专家分:54431
注 册:2011-1-18
收藏
得分:0 
a%b*10 最大是
999999999%1000000000*10
需要至少 34bits 的有效位
1 小时前
快速回复:这里的a,b为什么要定义longlong
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017880 second(s), 10 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved