文章

21

粉丝

76

获赞

1

访问

14.8k

头像
十进制和二进制 题解:还是写不出来
P1176 清华大学上机题
发布于2024年3月22日 18:01
阅读数 635

#include<stdio.h>
#include<string.h>
char s[1005];
int arr[1005];
int ans[5000];
int convert(int arr[],int ans[],int len){
    int j,num=0,i = 0,k = 0;
    int quotient,reminder;
    while(i<len){
        for(j=i;j<len;){
            reminder = arr[j]%2;
            quotient = arr[j]/2;
            arr[j] = quotient;
            num = reminder*10+arr[j+1];
            arr[++j] = num;
        }
        ans[k++] = reminder;
        while(arr[i] == 0){
            i++;
        }
   ...

登录查看完整内容


登录后发布评论

2 条评论
snake VIP
2024年3月22日 18:53

answer不能用long long int

因为数字很大,会超出这个范围

整个过程都要用数组来存储,可以看一下书上进制转换那一节的例题代码

赞(0)

渐鸿于陆 : 回复 snake: 好的,我重新去试试

2024年3月22日 19:30