本文目录一览:
- 1、C语言1乘到100怎么编写
- 2、C语言编程1乘到100怎么写
- 3、c语言从1乘到100代码问题?
- 4、c语音代码1*100(累成)
- 5、C语言1乘到100怎么些啊
- 6、编写计算1到100的连乘的C语言程序
C语言1乘到100怎么编写
100的阶乘已经是大数相乘了,在c语言中没有现成的数据型可以用,所以用数组模拟计算
#include stdio.h
#define MAXN 1000
int a[MAXN],b[MAXN];
void pwrite(int *a,int k,int c)//将计算的结果数组[a]按每一位输出,k为所计算数字,i为计算所得位数,计算后所得结果是按从最后一位到第一位,故应该倒序输出
{
int i;
printf("%4d != ",k);
for(i= c-1;i=0;i--)
{
printf("%d",a[i]);
}
printf("\n\n");
}
void pnext(int k,int *cp);
int main(void)
{
int n,c,k;
printf("Enter the number n(n=100):");
scanf("%d",n);
a[0]=1;
c=1; //初始化长度为1,随计算位数增加
/*pwrite(a,1,c);*/
for(k=2;k=n;k++)
{
pnext(k,c); //此处计算结果,计算1*2*3*...*n
//pwrite(a,k,c);
if (k==n)
{
pwrite(a,k,c);//计算到n时输出
}
}
system("pause");
return 0;
}
void pnext(int k,int *cp) //cp此处代表计算的位数,n代表将要乘的数字
{
int i, j;
int temp = *cp;
for ( i=0; itemp; i++ )
{
b[i] = a[i]; //利用b[i]作为暂时记录的数组
}
for ( i=1; ik; i++ )// add for k-1 times
{
for ( j=0; jtemp; j++ )
{
a[j] += b[j]; //每一位对齐相加,
if ( a[j] 9 )
{
a[j+1] += a[j]/10;
a[j] = a[j]%10; //如果大于9则进位
if ( j == *cp-1 )// add *cp for only once
{
(*cp)++; //如果是最高位,则自加即可,不必进位
}
}
}
}
while ( a[*cp-1] 9 )
{
a[*cp] += a[*cp-1]/10;
a[*cp-1] = a[*cp-1]%10;
(*cp)++; //对最高位进行处理,此时n值已变,故应自加
}
}
C语言编程1乘到100怎么写
sum 应定义为unsigned long 型,且i也不能这么大(大致最大12吧),否则sum放不下的,最后输出时用%ld格式。
c语言从1乘到100代码问题?
您好,很高兴回答您的问题。
您直接在定义i和s时就定义成double类型即可。或者i还是定义为int,s定义为double型。赋初始值还是要做的哦。然后在最后输出是把%d改成%lf即可哦。
以上就是我的回答,希望能帮助到您。
c语音代码1*100(累成)
这一死循环啊。。。while (2101) 会永远执行下去的!
改成 while (i101) 通过变量i控制循环执行99次。
另外,1累乘到100,其结果int型完全存储不下。。。。你确定题目要求这么搞??
#include stdio.h
int main(void) {
int i=2;
int num=1;
while (i11) { /*累乘到100,int存储不下,这里先改为累乘至10*/
num*=i;
printf ("%d\n",num);
i++;
}
getch (); /*屏幕暂留*/
return 0;
}
运行结果
C语言1乘到100怎么些啊
用for 方便.
1乘到100,数的精度可能不足.
long double a=1.0;
long int i;
for (i=1;i=100;i++) a = a * (long double) i;
编写计算1到100的连乘的C语言程序
/*computing the sum of 1 to 100and the factorial of 100*/
#include stdio.h
int main()
{
int count;
int sum=0;
double fac=1;
for (count=1;count=100;count++)
{
sum=sum+count;
fac=fac*count;
}
printf("The sum of 1 to 100 is %d\n",sum);
printf("The factorial of 100 is %e",fac);
return(0);
}