提交说我浮点错误,哪位大佬帮我指明一下,谢谢


提交说我浮点错误,哪位大佬帮我指明一下,谢谢
#include<stdio.h>
int p(int a,int b,int c){
    int s=1,i;
    while(a!=0){
        for(i=1;i<=b;i++){
            s=s*10;
        }
        if(a%s==c) return 1;
        else{
            a=a/10;
        }
    }
    return 0;
}
int main(){
    int n,i,j,q,m,log=0;
    int a[1000];
    scanf("%d %d",&n,&q);
    int b[1000],k;
    for(i=0;i<n;i++){
        scanf("%d",&a[i]);
    }
    for(j=0;j<q;j++){
        k=0;
        log=0;
        scanf("%d %d",&m,&n);
        for(i=0;i<q;i++){
            if(p(a[i],m,n)==1) {
                b[k++]=a[i];
                log++;
            }
        }
        int min=b[0];
        for(i=0;i<log;i++){
            if(min>b[i])
            min=b[i];
        }
        if(log==0) printf("-1");
        else{
            printf("%d",min);
        }
    }
    return 0;
}
全部评论
浮点错误一般都是除0了。你看下你代码里%s,s是否变0导致的
点赞
送花
回复
分享
发布于 2019-05-25 20:41

相关推荐

头像
05-14 12:29
安卓
点赞 评论 收藏
转发
头像
04-09 14:29
Java
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务