| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1733 人关注过本帖
标题:十进制转二进制
取消只看楼主 加入收藏
李少iii
Rank: 4
来 自:KUNMING
等 级:业余侠客
威 望:2
帖 子:67
专家分:245
注 册:2018-10-4
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
十进制转二进制
问题如下
大家都知道,数据在计算机里中存储是以二进制的形式存储的。
有一天,小明学了C语言之后,他想知道一个类型为unsigned int 类型的数字,存储在计算机中的二进制串是什么样子的。
你能帮帮小明吗?并且,小明不想要二进制串中前面的没有意义的0串,即要去掉前导0。
输入格式
第一行,一个数字T(T<=1000),表示下面要求的数字的个数。
接下来有T行,每行有一个数字n(0<=n<=10^8),表示要求的二进制串。
输出格式
输出共T行。每行输出求得的二进制串。​
输入样例
5
23
535
2624
56275
989835
输出样例
10111
1000010111
101001000000
1101101111010011
11110001101010001011

代码如下:
#include <stdio.h>
int main()
{
    int t, n;
    int str[105];
    int arr[4];
    scanf_s ("%d", &t);
    for (int j = 0; j < t-1; j++)
    {
        scanf_s("%d", arr[j]);//请问哪个环节出错了???
    }
    while (t--)
    {
        int num = 0;
        int d=0;
        n = arr[d];
        if (d < 4)
            d++;
        while (n != 0)
        {
            str[num++] = n % 2;
            n = n / 2;
        }
        for (int i = num - 1; i >= 0; i--)
        {
            printf("%d", str[i]);
        }
        printf("\n");

    }
}
搜索更多相关主题的帖子: 输出 进制转 二进制 int str 
2020-09-28 21:06
李少iii
Rank: 4
来 自:KUNMING
等 级:业余侠客
威 望:2
帖 子:67
专家分:245
注 册:2018-10-4
收藏
得分:0 
回复 3楼
图片附件: 游客没有浏览图片的权限,请 登录注册

就是改了之后,的确编译成功了
但是出现了上面的状况,是算法不对还是啥子问题呢

我不曾拥有梦想,但我坚信我有未来……
2020-09-29 10:27
李少iii
Rank: 4
来 自:KUNMING
等 级:业余侠客
威 望:2
帖 子:67
专家分:245
注 册:2018-10-4
收藏
得分:0 
#include <stdio.h>
int main()
{
    int t, n;
    int str[105];
    int arr[4];
    int d = 0;
    scanf_s ("%d", &t);
    for (int j = 0; j < t; j++)
    {
        scanf_s("%d",&arr[j]);
    }
    while (t--)
    {
        int num = 0;
        long n = 0;//在这个位置,int类型最大只能存储数256,要用long类型
                   //此处,定义d变量应该在while(t--)之外,否则每次循环d的值都会重置为0
        if (d < 5) {
            n = arr[ d++ ];
        }
        while (n != 0)
        {
            str[num++] = n % 2;
            n = n / 2;
        }
        for (int i = num - 1; i >= 0; i--)
        {
            printf("%d", str[i]);
        }
        printf("\n");

    }
    return 0;
}

//终于问题解决了,感谢大家的帮助

我不曾拥有梦想,但我坚信我有未来……
2020-09-29 14:24
快速回复:十进制转二进制
数据加载中...
 
   



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

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