当前位置:首页 » 编程语言 » 计算100个数位的整数和C语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

计算100个数位的整数和C语言

发布时间: 2022-10-04 06:24:32

c语言如何求一个整数的各个位数之和

可以参考下面的代码:

#include "stdio.h"

int main()

{

int number,i=0,sum=0;

printf("please input a number:");

scanf("%d",&number);

while(number!=0)

{

sum+=number%10;

number/=10;

i++;

}

printf("sum=%d ",sum);

printf("位数=%d ",i);

return 0;

}

(1)计算100个数位的整数和C语言扩展阅读:

递归函数定义

一种计算过程,如果其中每一步都要用到前一步或前几步的结果,称为递归的。用递归过程定义的函数,称为递归函数,例如连加、连乘及阶乘等。凡是递归的函数,都是可计算的,即能行的。

一个直接的例子:

//代码1

voidfunc()

{

//...

if(...)

func();

else

//...

}

㈡ 编写c语言程序计算1~100中含有8的整数和

思路是先计算个位为8的和,共10个数
再计算十位为8的和,共10个数,88计算两次
main()
{
int sum, i;
sum = 0;
** calculate sum of 8, 18, ...98
for(i=8;i<100;i+=10)
sum += i;
**calculcate sum of 80,81,...89
for( i = 80; i < 90;i++)
sum +=i;
**88 is added twice
sum -= 88;
printf("sum = %d\n",sum);
}

㈢ c语言用函数计算100以内整数和,并输出

#include<stdio.h>
void main()
{
int integer,i,sum;
sum=0;
printf("请输入一个整数:\n");
scanf("%d",&integer);
for(i=0;i<=integer;i++)
{
sum=sum+i;
}
printf("1到%d整数和为%d\n",integer,sum);
}

㈣ C语言如何写出计算100位大数的算法

#include"stdio.h"

int getlength(char a[]){
int i=0;
while(a[i])
i++;
return i;
}/*返回字符串的长度*/

int chartoint(char a){
return a-48;
}/*将字符编程整形*/

void creatarray(char a[],char b[]){
printf("请输入第一个数:");
scanf("%s",a);
printf("请输入第二个数:");
scanf("%s",b);
}/*创建数组*/

void go(char a[],char b[],int s[]){
int alength=getlength(a);
int blength=getlength(b);
int i=alength-1;
int j=blength-1;
int k;/*s数组下标*/
int slength;
if(alength>blength)
slength=alength;
else
slength=blength;
k=slength;
while(i>=0&&j>=0)
s[k--]=chartoint(a[i--])+chartoint(b[j--]);
while(i>=0)
s[k--]=chartoint(a[i--]);
while(j>=0)
s[k--]=chartoint(b[j--]);
k=slength;
while(k>=2){
if(s[k]>=10){
s[k-1]++;
s[k]-=10;
}
k--;
}
printf("两数之和为:");
if(s[1]>=10){
s[0]=1;
s[1]-=10;
for(i=0;i<=slength;i++)
printf("%d",s[i]);
}
else{
for(i=1;i<=slength;i++)
printf("%d",s[i]);
}
printf("\n");
}

void main(){
char a[1000],b[1000];
int s[1000];
int lab;
lab1: creatarray(a,b);
go(a,b,s);
printf("请输入1继续(想退出按其他数字键):");
scanf("%d",&lab);
if(lab==1)
goto lab1;
}

//该程序最高可求1000位数的加法运算(更高位数你可相应设置),对于求减法和乘法也就大同小异了,这里不再赘述,你自己模仿修改一下吧

㈤ 计算两个100位的整数之和(c语言 )

#include <stdio.h>

int main(){
char a[100] = {""};
char b[100] = {""};
char c[101];
int i, u=0;
for(i=99;i>=0;i--){
c[i+1]=u+a[i]+b[i]-'0';
if(c[i+1]>'9'){
c[i+1]-=10;
u=1;
} else
u=0;
}
if(u)
c[0]='1';
else
c[0]=' ';
for(i=0;i<101;i++)
printf("%c", c[i]);
return 0;
}
转发拿分

㈥ 利用C语言怎样求整数的位数以及各位数之和

#include <stdio.h>

int main(int argc, char **argv)
{
int a;
int sum = 0; //这是各位数的和
int NumWidth =0;//这是位数和
scanf("%d",&a);
while(a != 0)
{
sum += a%10 ; //求余可以得到这个数个位上的数字,然后把它加到sum中
a /= 10; //把这个数字除以10,然后再求余,可以得到10位
NumWidth ++;//每次循环,就可以得到位数。
}
printf("the number you input width= %d, sum = %d",NumWidth,sum);
return 0;
}

㈦ c语言输入任意多个整数100个 并输出这些数的和

#include <stdio.h>
int main()
{
int sum = 0,t,num;
printf ("输入整数个数:\n");
scanf ("%d", &num);
for(int i=0;i<n;i++)
{
scanf ("%d", &t);
sum+=t;

}

printf ("总和是:%d\n", sum);

return 1;
}
只要总和不超过int的最大值,算的结果都能正常

㈧ 用C语言编一个程序: 计算100!的整型值结果和这个结果的位数。输出时每行输出50个数字。

#include <stdio.h>
int main()
{
char ra[10000]={0};
ra[0]='1';
int n;
int j;
int t;
int l;
printf("请输入一个数:");
scanf("%d",&n);

for(int i=1;i<=n;i++)
{
for(l=0;ra[l];l++);

for(j=l-1;j>=0;j--)
{

t=(ra[j]-'0')*i;
ra[j]=t%10+'0';
t=t/10;

for(int jf=1;t;jf++)
{

if(ra[j+jf]==0)
{
ra[j+jf]='0';
}
ra[j+jf]=ra[j+jf]+t%10;
t=t/10;
if(ra[j+jf]>'9')
{
ra[j+jf]-=10;
t++;
}

}
}
}
for(l=0;ra[l];l++);
printf("%d的阶乘有%d位\n",n,l);
for(t=1,l=l-1;l>=0;l--,t++)
{
printf("%c",ra[l]);
if(t%50==0)
printf("\n");
}
printf("\n");
return 0;
}

请输入一个数:100
100的阶乘有158位00000000
请按任意键继续. . .

㈨ c语言求所有位数上的数字之和

#include <stdio.h>

int main(int argc, char **argv)
{
int a;
int sum = 0; //这是各位数的和
int NumWidth =0;//这是位数和
scanf("%d",&a);
while(a != 0)
{
sum += a%10 ; //求余可以得到这个数个位上的数字,然后把它加到sum中
a /= 10; //把这个数字除以10,然后再求余,可以得到10位
NumWidth ++;//每次循环,就可以得到位数。
}
printf("the number you input width= %d, sum = %d",NumWidth,sum);
return 0;
}