當前位置:首頁 » 編程語言 » 計算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;
}