如何将10^100的值赋给C中的整数变量?

如何将10^100的值赋给C中的整数变量?,c,C,我正在解决一个问题,计算一个数字的位数,但是根据限制条件,这个数字应该在10^10010到100次方之间。我试过使用极限。h,但不起作用。有人能建议一种方法吗 int main(){ int n=LONG_MAX; int count; scanf("%d",&n); while(n!=0) { n=n/10; count++; } printf("%d",count); return

我正在解决一个问题,计算一个数字的位数,但是根据限制条件,这个数字应该在10^10010到100次方之间。我试过使用极限。h,但不起作用。有人能建议一种方法吗

int main(){  

    int n=LONG_MAX;
    int count;
    scanf("%d",&n);
    while(n!=0)
    {
        n=n/10;
        count++;
    }
    printf("%d",count);
    return 0;
}

正如其他人所说,您不需要将其存储为数字。制作一个长度为100的字符数组。将值初始化为非数字的值。通过CIN或其他方式获取数字,将其保存到该字符数组中。然后数一数有多少个数字,然后再得到一个非数字

伪代码:
在C10中,可以很容易地将^100存储为int:

之后,xored将存储110

1100100
0001010
-------
1101110

如果你把数字作为文本,你可以直接数数数字。否则,您将需要一个bignum库,10^100远远超出任何内置整数类型的范围。您可以使用GMP在C中处理大整数,并且C++10^100保证适合C int类型。无符号整数表示中10到100的幂需要333位。你需要一个用于不定整数的库。我正在解决一个问题,如何计算数字->显示代码中的位数。我尝试过使用限制。h,但不起作用。->这个代码是C,不是C++,不是我的DV。其他人确实这么说,但是问题标签不是C++。说伪代码是对不准确实现的一种掩饰。这只是逻辑的一个例子。我也没有定义变量类型或初始化值。我不写C代码,但过程非常基本。我写Psedocode是因为它就是这样。。。不是完整的工作代码,而是代码逻辑的表示。伪代码可以看起来像任何东西。10**100有101个数字加上一个空终止符。分配的阵列太小,这是令人难以置信的迂腐。我喜欢!语言/编译器很迂腐。我认为这个答案没有问题。不过,我确实看到了这个问题的一个大问题:这个答案完全回答了这个问题!更重要的是,这是唯一的答案…@Xentros谢谢你的回复。但是我要求存储一个整数值到一个10到100次方范围的变量。您误解了^作为位异或运算符。@NeerajSewani原始post缺少10到幂100,并且^被C指定为位异或运算符,因此Xentros没有误解^。
int xored = 10^100;
1100100
0001010
-------
1101110