简单c语言程序编写 用C语言编写一个递归程序用来计算:1*2+2*3+3*4+.+(n-1)*n
用C语言编写一个递归程序用来计算:1*2+2*3+3*4+.+(n-1)*n
用C语言编写一个递归程序用来计算:1*2+2*3+3*4+.+(n-1)*n
int fun(int n){
if(n==2){
return 2;
}else{
return fun(n-1)+(n-1)*n;
}
}
int main(int argc, char* argv[])
{
printf("fun(3)=%dn", fun(3));
return 0;
}
编写一个递归子程序 计算N! (N)=0)的程序 最好用C语言
这样写: #include<stdio.h> long fun(int n); void main() { int n; printf("请输入n的值:n"); scanf("%d",&n); printf("这个数的阶乘是:%dn",fun(n)); } long fun(int n) { if(n==1 || n==0) return 1; else return n*fun(n-1); }
采纳哦
用汇编语言编写“计算1+2*3+3*4.+N*(N+1)”的程序
M equ 自行定义,界定循环次数
N equ #2
S equ #1
Start:LDA #(N-1)
Loop:INCA ;A寄存器值加一
MOV A,B ;把A寄存器值放到B寄存器中
INCB
JSR Count ;跳转到Count子程序,进行计算
CMPA #M ;判断循环条件
BLO loop ;小于M的话继续循环
Print:输出
Count:MUL A,B
RTS
对应C代码如下:
#Define M 自行定义,界定循环次数
main()
{
int S=1;
int N;
for(N=2;N<M;N++)
{
S+=N*(N+1);
}
printf("d%",S);
}
谁能跟我编写一个程序(C语言)题目是编写一个函数计算sum(n)=1+2+3+。+n(n>=1)
int Cal(int n)
{
sum=0;
for(int i= 1;i<=n;++i)
sum+=i;
return sum;
}
求1×2+2×3+3×4+.+(n-1)×n
先提供一个特殊数列的前n项和公式:
1+4+9+16+……+n² = n(n+1)(2n+1)/6
再看题目中的
(n-1)×n = n² - n
因此,
原式= [1+4+9+16+……+n²] - [1+2+3+4+……+n]
=n(n+1)(2n+1)/6 - n(n+1)/2
=n(n+1)(n-1)/3
用汇编语言编写“计算1+2*3+3*4.+N*(N+1)且N*(N+I)<200”的程序
code segment
assume cs:codestart:
mov cx,1
mov ax,2
next:
cmp cx,200
jge exit
inc al
mov bl,al
dec bl
mul bl
add cx,ax
mov ax,0
mov al,bl
inc al
jmp next
exit:
mov al,bl AAM
mov dl,ah
mov bl,al
add dl,30h
mov ah,2
int 21h
mov dl,bl
add dl,30h
mov ah,2
int 21h
mov ah,4ch
int 21h
code ends
end start
编写递归程序,计算n! m!
看到有人写帖子问如果从m个数组中取N个原始的算法,要求一个是递归的,一个不是递归的。
递归的解法:(比较笨)
void getn(int a[], int b[] , int m, int n, int index,int lastindex)
{
int i = lastindex + 1;
if(index == n )
{
int x;
for(x = 0 ; x <</span> n ;x ++)
{
printf(" %d ",a[b[x]]);
}
printf(" ");
return ;
}
while( i <</span> m)
{
b[index] = i;
getn(a,b,m,n,index + 1,i);
i ++ ;
}
}
非递归的解法:
void agen(int a[],int m, int n)
{
int i ,j ;
int b[100] = {0};
i = j = 0;
while(b[0] <</span> m ) {
while( i <</span> m) {
if(j == n - 1 ) {
int x ;
for( x = 0 ; x <</span> n ; x ++) {
printf(" %d ",a[b[x]]);
}
printf(" ");
} else {
j ++;
}
i ++;
b[j] = i;
}
do {
j --;
b[j] ++ ;
} while(b[j] >= m );
i = b[j] ;
}
}
测试的主程序:
int main()
{
int a[10] = {0, 1,2,3,4,5,6,7,8,9};
int b[20] ={0};
getn(a,b,10,5,0,-1);
agen(a,10,5);
return 0;
}
用PASCAL语言编写一个求1+2+3+.+N的程序
var s,i,n:long;
begin
write('N=');
readln(n);
s:=0;
for i:=1 to n do
s:=s+i;
writeln(s);
end.

编写计算(1+2-3+4-5+。-(n-1)+n)的程序
你好 我来回答你的问题
其实很好解决 用-1这个特殊的数来做
main()
{ int i,j=1,k=0;
for(i=1;i<=100;i++)
{ j=-1*j;
k=j*i+k; }
printf("%d",k);
getch();
}
看懂了吗 每回循环j都乘一次-1 也是j就从-1,1,-1,1来回变幻
你再乘以i i不就是正数负数的各一个变一次了吗 对吧?
我的C语言群34811055有什么问题可以加 还有我的QQ415654090
用VB程序编写一个过程来计算1+2+3+4+……+100的值。
Dim a As Integer '首项
Dim b As Integer '末项
Dim c As Integer '项数
Dim d As Integer '结果
Public Sub Add()
a = InputBox("首项", "")
b = InputBox("末项", "")
c = InputBox("项数", "")
d = (a + b) * c / 2
MsgBox d
End Sub
Private Sub Form_Load()
Call Add
End Sub
针对这个问题首项=1,末项=100,项数=100
end sub
相关文章
- 水仙花数c语言程序 用c语言编写程序:输入两个复数,计算并输出它们的和及乘积
- C语言编写的程序被称为 编写一个C语言程序:求S=1/1+1/2+1/3+…+1/n
- 用c语言编写的代码是一个 我是一名C语言初学者,请各位大虾帮帮忙,用C语言编写一个程序,求1+2+3+4+5+6·····+100
- 编程实现n的阶乘 编程计算1+ 1/2+ 1/3 +.+ 1/n,用C语言
- c语言编写fibonacci数列 C语言程式设计序:计算数列1+1/2+1/3+1/4+.+1/100的和并输出 帮一下 吧
- c语言计算字符串长度 (C语言)计算1+1/2+1/3+1/4+.+1/n其中n从键盘输入
- c语言整数类型 C语言程式设计:输入一个整数并能逐位正序或反位输出,用递回完成。
- c语言实现计算器 C语言计算s=1+1*3+1*3*5+1*3*5*7+1*3*5*7*9+.前20项的和 怎么做啊?
- 使用c语言编写程式,实现计算1*2*3+4*5*6+7*8*9+……+28*29*30的值
- c语言中一行写不下 用C语言写程序求s。s=3/(2^2)-5/(4^4)+7/(6^6)……+[(-1)^(n-1)]*(2*n+1)/(2*n)^2
爱学记

微信收款码
支付宝收款码