用c语言编一个1+2+3...+n 要用whil语句

作者&投稿:仝寿 (若有异议请与网页底部的电邮联系)
怎么用C语言编写1!+2!+3!+...+100!(用for语句)~

#include

int main()
{
int i,j,count;
long sum=0;
for(i=1;i<=100;i++)
{
count=1;
for(j=1;j<=i;++j)
count*=j;
sum+=count;
}

printf("1!+2!+3!+...+100!=%ld
",sum);

return 0;
}
注意一个问题,结果可能无法显示,因为越界了

答:提问者主动声明排除了书写时出现输入法切换导致的书写错误的可能,单从这句来看语法方面没有任何错误,错误关键在于你问题补充时的一句“外部数组”!
说明:
1.C语言中二维数组初始化时第二维不可以省略,而第一维是可以省略的;
2.外部数组只能在原文件中加外部全局变量extern初始化后在外部引用,因此不能在此程序中对外部数组变量进行初始化;

以下为测试源代码以及 Linux GCC下编译运行结果:
#include
int main()
{
int i,j;
int a[][3] = {{1,0,2},{},{2,3}};
for(i = 0;i < 3;i ++)
{
for(j = 0;j < 3;j ++)
printf("%3d",a[i][j]);
printf("
");
}
return 0;
}

运行结果:
1 0 2
0 0 0
2 3 0

以事实说话,实践才是真理……

#include <stdio.h>

int main()
{
int n;
int i = 1;
int sum = 0;
printf("请输入一个数:");
scanf("%d",&n);
while(i<=n)
{
sum += i;
i++;
}
printf("1到%d之间数字相加的和为:%d",n,sum);
return 0;
}


# include<stdio.h>
int main (void)
{
int sum = 0,i = 1;
int n;
printf("请输入数字:");
scanf("%d",&n);
while(i <= n)//循环
{
sum += i;
i++;
}
printf("%d",sum);
return 0;
}

while(n>0){
total += n;
n--;

}


C语言编程“一个数列的前三项为1,2,3,以后各项是其前三项之和,求该数列...
include<stdio.h>int main(){int arr[21], i;arr[0] = 1;arr[1] = 2;arr[2] = 3;for(i = 3; i < 20; ++i)arr[i] = arr[i - 1] + arr[i - 2] + arr[i - 3];for(i = 0; i < 20; ++i)printf("%d ", arr[i]);printf("\\n");return 0;} ...

1 21 321 4321 54321 c语言编程
思路:观察数据规律可知,先输出一个数1,接着输出2个数最大数2递减到1,接着输出3个数从3递减到1……,所有可以通过两个for循环,对个控制次数,一共输出5组,第二个for控制输出个数。参考代码:include <stdio.h>int main(){ int i,j; for(i=1;i<=5;++i) { for(j=i;j>=1...

怎么用C语言编写一个和电脑玩石头剪刀布的程序
用1、2、3来表示剪刀、石头、布,然后先用scanf函数读取用户的输入,再用rand函数产生一个随机数,最后进行比较就可以了。include <stdio.h> include include <stdlib.h> void main(){ int com,user;char c;srand((unsigned)time(NULL)); \/\/初始化随机数,如果没有这条语句,每次运行电脑产生...

用c语言编程计算1*2*3*……*n的值超过100时的第一个n值
include<iostream>using namespace std;int main(){int n,s=1; \/\/s表示乘积 for(n=1;(s*=n)<=100;n++); \/\/n从1开始,如果阶乘不大于100就一直循环 printf("%d\\n",n); \/\/结束循环之后的n就是阶乘超过100的第一个数 system("PAUSE"); \/\/暂停屏幕,以看清运行结果 retur...

一个两位纯数字密码破解程序怎么编,用C语言
2、例程:char a,b,c='1',d='2'; \/\/这里变量c,d表示密码的第一位和第二位。char key[2];for(a='0';a<='9';a++){ for(b='0';b<='9';b++){ key[0]=a; key[1]=b; \/\/这就是一个密码 if(key[0]==c && key[1]==d) printf("密码是:%s",key...

用C语言编写一个车票管理系统
1、首先打开CodeBlocks,新建一个空白文件。先定义头文件和主函数。2、定义所需要的变量,因为有除法,肯定会有小数出现,所以将变量定义为浮点型。3、定义输入函数,将刚才的x和y定义为计算的变量,将c定义为选择计算方式的变量。scanf("%f%c%f",&x,&c,&y)。4、添加switch函数,将c作为选择变量。

c语言:编写一个c程序,输入两点坐标,求这两点的距离
声明x1、y1、x2、y2浮点型变量为点p1和p2的座标,输入数值后直接由公式√(x1-x2)^2+(y1-y2)^2求出。代码如下:include "stdio.h"#include "math.h"\/\/调用sqrt需要包含此文件int main(int argc,char *argv[]){double x1,y1,x2,y2;printf("Please enter the coordinates of 2 points....

c语言编程题:输入一个长整形数,从高位开始逐步输出,例如输入123456,输出...
while (number) { \/\/ 提取各位数字(个位开始),存于数组中array[i] = number % 10;number \/= 10;i--;}for (i = 0; i < digits; i++) { \/\/ 从数组中打印出数字if (i == digits - 1)printf("%d", array[i]); \/\/ 最后一个数字不需要逗号分隔else printf("%d, "...

用C语言编写程序,从键盘输入两个字符串,输出第一个字符串在第二个字 ...
include <stdio.h>int main(){ char str1[100],str2[100]; char *p,*p1,*p2; gets(str1); gets(str2); for(p=str1;*p!='\\0';p++) { for(p1=p;p2=str2;*p1==*p2;p1++,p2++); if(*p2=='\\0') { printf("%d",p-str1); return 0...

如何用C语言从1,2,3三个数中出现一个随机数
include <stdlib.h> include <stdio.h> include main( ){int i;srand( (int)time( NULL ) );printf( "%d\\n", rand()%3+1);} 这样只产生一个随机数,这个数是1,2,3中的一个,你可以运行几次,可看到不同的结果。另外下面这个也是产生随机数 include <stdlib.h> include <stdio.h...

茄子河区13674039744: C语言编程:求1!+2!+3!+、、、+n!的值? -
尧食二盐: #include<stdio.h> main() { int i,b,sum=1,g;/*定义各个需要的元素,sum初值化,就拿1-4的阶乘的和来试炼*/ for(i=2;i<5;i++) { g=i; /*切记要赋值一下,因为下面要改变*/ for(b=1;b<=i-1;b++) { g*=b; } sum+=g; } printf("总和是%d\n",sum); }

茄子河区13674039744: 用c语言编程实现求1!+2!+3!+...+n!的值,其中n值由键盘输入 -
尧食二盐: #include <stdio.h>//求n!的值 int func(int n) { if(n == 1) return 1; else return n*func(n-1); } int main() { int n,i,sum=0; printf("输入n的值: "); scanf("%d",&n); if(n<=0) { printf("Input Error!\n"); return -1; } for(i=1;i<=n;i++) { sum+=func(i); } ...

茄子河区13674039744: c语言递归编写1+2+3+......+n
尧食二盐: #include int getResult(int n) { if(n==1) return 1; return n+getResult(n-1); } void main(void) { int n,num; scanf("%d",&n); num=getResult(n); printf("Result is: %d",num); getch(); }

茄子河区13674039744: C语言:请分别用三种循环结构编程计算: 1!+2!+3!+...+n! , n的值由键盘输入. -
尧食二盐: C语言#include<stdio.h> void main() { int n=1,i,sum=0,num=1; do { num=1; for(i=n;i>0;i--) num*=i; sum=sum+num; n++; } while(n<=10); printf("(1->10)! is %d\n",sum);}C++编写#include<iostream> using namespace std; void main() { int n=1,i,...

茄子河区13674039744: 1!+2!+3!+...+n!的c语言程序怎么编译? -
尧食二盐: // 1 + 2 + 3 + ... + n的c源代码.cpp : 定义控制台应用程序的入口点.//#include "stdio.h" int main(void) { int n,i; int sum = 0; printf("请输入n的值:\n"); printf("n = "); scanf("%d",&n); for(i=0; i<=n; ++i) { sum = sum + i; } printf("sum = %d\n",sum); return 0; } 如若还有不懂,百度hi我,如对楼主有所帮助望尽快采纳,谢谢!

茄子河区13674039744: 1+2!+3!+......+n!怎么用C语言程序编写 -
尧食二盐: #include<stdio.h> void main() { int n,sum=0; printf("输入n的值:"); scanf("%d",&n); for(i=1;i<=n;i++) { int m=1; for(j=1;j<=i;j++) m*=i; sum+=m; } printf("%d",sum); }

茄子河区13674039744: C语言,编写函数f(n)计算1+2+3+...+n.要求返回double类型. 利用函数编程:输入一个整数n,计 -
尧食二盐: #include void main() { int Num,i,j; double dResult; dResult = 0; printf("Please Enter a Number:\n"); scanf("%d",&Num); j = 0; for(i=1;i j = j + i; dResult += (i+0.0)/j; } printf("The Result is %lf",dResult); getch(); return; } 其中dResult += (i+0.0)/j; ...

茄子河区13674039744: C语言编写程序求1!+2!+3!+...+n!,n为输入并且3〈=n〈=20. -
尧食二盐: #includevoid main() { int i,a; float n=1,sum=0; while(1) { scanf("%d",&a); if(a<3||a>20) printf("repeat input"); else break; } for(i=1;i<=a;i++) { n=n*i; sum=sum+n; } printf("1!+2!...+%d!=%.0f",a,sum); }

茄子河区13674039744: 1!+2!+3!+...+n!的c语言程序怎么编译?
尧食二盐: #include <stdio.h> int main() { unsigned i = 1,n,fact = 1,sum = 0; printf("n = "); scanf("%d",&n); if(n < 0) { printf("数据有错!\n\n"); return 1; } n = (n > 14) ? 14 : n; while(i <= n) { fact *= i++; sum += fact; } printf("1! + 2! + 3! + ...... +%d! = %u\n\n",n,sum); return 0; }

茄子河区13674039744: 1!+2!+3!+……+n!,怎么用c语言写出来,且只用一个循环 -
尧食二盐: #include <stdio.h> int fun(int n){if(n==1||n==0)return 1;elsereturn n*fun(n-1); }//递归调用得到n! int main(){int n,sum,i;while (~scanf("%d",&n)) {sum=0;for (i=1; i<=n; i++) {sum=sum+fun(i);}//循环取得i!的值,用sum记录和printf("%d\n",sum);} }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网