我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

一道有关十进制转二进制后0的个数的题

输入一行一个正整数,该整数的大小在10^9以内。
输出一行一个整数,表示该整数变为二进制数后末尾0的个数。
例子输入:12 输出:2

#include <stdio.h>

int main()
{
    int t;
    int res[100]={};
    scanf("%d",&t);
    int count=0,i;
    if(t%2==1)printf("0");
    else {
        while(t>0){
            res[++res[0]]=t%2;
            t/2;
        }
        for(i=1;i<=res[0];i++){
            if(res[i]==0)count++;
            else if(res[i]!=0)break;
        }
        printf("%d",count);
    }
    return 0;
}

我这样写输出的是103.请问错在了哪里?

近期文章

  • Java这串怎么解的,求指导
  • linux 5.10 获取系统函数调用表的问题
  • 讲指针指向字符数组,再给指针赋值,为何字符数组未被赋值?
  • 为什么while关键代码不执行
  • 用二维数组打印输出图形
  • 把外键的值传到form表单 我是直接传了外键的实体类但报错了
  • 编写一个程序输入一个字符串输出字符串中字母a的个数
  • 每位学生的平均成绩输出
  • arduino+cnc步进电机4988换成8825,跳帽没动,细分怎么变了。
  • c++关于一个学生管理系统
  • 商品顺序问题,如何用C++实现
  • 求一段能把得分写入数据库的代码
  • 大二数据结构 希望给出规范答案
  • 这里为什么找不到我的文件路径哪里错了?
  • 升级win1021H2出现了问题
  • 安卓如何同步获取webapi?
  • 前端el-tree树形控件
  • opencl中的.cl文件是如何编译出来的?
  • 蓝桥杯 基础练习 Huffuman树 Python
  • C语言用for循环实现进制转换

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华