在c语言里怎么从键盘输入一个较大数字,如10^100

2024-11-19 12:21:31
推荐回答(5个)
回答1:

用字符串的方法 先用字符串输入一个很大的数 任意
然后一个个转换成整型 附上一部分代码
int num1[1000],num2[1000];
main()
{
int i=0,count1=0,count2=0,len=0;
char a[1000],b[1000];
scanf("%s%s",a,b);
count1=strlen(a);
count2=strlen(b);

for(i=count1-1;i>=0;i--)
num1[++num1[0]]=a[i]-'0';
for(i=count2-1;i>=0;i--)
num2[++num2[0]]=b[i]-'0';
}
这样你就可以输入 100000000000000000000000000000000000000000000000000000000无限个0 只要定义字符串数组的时候更改一下位数就可以了
请采纳^ _ ^

回答2:

使用scanf("%e",&a)语句 
%a,%A 读入一个浮点值(仅C99有效)
  %c 读入一个字符
  %d 读入十进制整数
  %i 读入十进制,八进制,十六进制整数
  %o 读入八进制整数
  %x,%X 读入十六进制整数
  %c 读入一个字符
  %s 读入一个字符串,遇空格、制表符或换行符结束。
  %f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。
  %p 读入一个指针
  %u 读入一个无符号十进制整数
  %n 至此已读入值的等价字符数
  %[] 扫描字符集合
  %% 读%符号

回答3:

double a=1e100;
键盘直接输入的话,只有用数字字符串来代替了。

回答4:

c库函数有个pow(x,y) 表示x^y,可以这样做
scanf("%d %d",&x,&y);
long n = pow(x,y);

回答5:

如果仅仅是输入的话,用字符串就可以输入你想要长度的数字...