編寫完整的組合語言程式,要求從鍵盤輸入數N,如果N

2021-03-04 08:54:31 字數 1828 閱讀 4616

1樓:匿名使用者

data segment

inmsg db 'input n(0 '9'

mov n, al

lea dx, crlf

mov ah,9

int 21h

mov al, n

mov ah,0eh ; output nint 10h    ;

jmp exit

err:

lea dx, ermsg

mov ah,9

int 21h

jmp again

exit:

mov ax, 4c00h

int 21h

ends

end start

用c語言編寫程式從鍵盤輸入乙個正整數數n,輸出n!

2樓:匿名使用者

程式設計實現計算n!,也就是n*(n-1)*(n-2)*....*1,可以通過遞迴函式來實現,具體實現方法:

#include

int func(int n)

void main()

在以上程式**中,func()為遞迴函式,主函式main()中接收鍵盤輸入整數值後,呼叫func()遞迴函式,首層m=n*(n-1)!,繼續遞迴呼叫,m=n*(n-1)(n-2)!,這樣逐層遞迴,直到計算出n!。

程式輸出結果如下:

3樓:跪著作揖

#include //定義標頭檔案

int main(  )                   //宣告主函式

輸出j

return 0;                        //返回主函式值

}擴充套件資料

其他方法得到n的階乘:

#include

int prime(int x);

void main(  )

int prime(int x)

else

return s;

4樓:匿名使用者

源程式如下:

#include //定義標頭檔案

int main()//宣告主函式

printf("%d!=%d\n",n,jc);//輸出jcreturn 0;//返回主容函式值

} vc++測試如下:

5樓:匿名使用者

晚上好樓

來主,我自已經編譯通過請看

圖 謝謝採納!

#include

int cacu(int n)

void main()圖:

6樓:匿名使用者

#include

int main()

printf("%d的階乘 = %d\n", input, result);}

7樓:德勝介休

考慮資料

溢位#include

void cheng(int a,int n)}}void jiecheng(int a,int n)}void main()

a[0]=1;

scanf("%d",&n);

jiecheng(a,n);

for(i=0;i<1000;i++)

for(j=s;j>=0;j--)

printf("%d",a[j]);

}執行效果:

輸入回:34

輸出答:295232799039604140847618609643520000000

用組合語言程式設計,用組合語言編寫乙個簡單程式

寫一下簡單的演算法吧,先提供乙個簡單的畫點子程式 在螢幕顯示一點或一畫素子程式 輸入引數 bx 行位址 0 479 si 列位址 0 639 dl 顏色 0 15 640 480顯示模式 dot proc near push cx 儲存顏色 push dx mov ax,80 行位址 mul bx ...

電子時鐘程式(微控制器組合語言編寫,不要C語言)

keyval equ 30h keytm equ 31h keyscan equ 32h dat equ 33h scanled equ 39h clk equ 77h sec equ 78h min equ 79h hour equ 7ah pause bit 00h dot bit 01h or...

C語言編寫完整程式計算兩個矩陣的乘積

include include include void caidan define max 12500 typedef structtriple typedef structts 矩陣的轉置實現函式 p,q t.m m.n t.n m.m t.t m.t if t.t 矩陣的乘法y m q實現函式...