文章

1

粉丝

34

获赞

1

访问

867

头像
北邮2019 二进制 题解:纯C,注意如上溢,则总共输出33位,进位的1不能扔掉
P1647 北京邮电大学2019年机试题
发布于2024年2月15日 15:18
阅读数 867

#include<stdio.h>
#include<math.h>
int main()
{
    int T;
    long long sum,tmp;
    char c;
    scanf("%d",&T);
    for(int i=0;i<T;i++)
    {
        sum=0;
        getchar(); 
        for(int k=31;k>=0;k--)
        {
            c=getchar();
            if(c=='1')//(int)'0'=48,(int)'1'=49
                sum+=(long long)pow(2,k);
        }
        if((sum+1)/(long long)pow(2,32)==1)//如上溢,则总共输出33位,进位的1不能扔掉 
            printf("1")...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发