編寫九九乘法表主要是通過循環(huán)語句進(jìn)行控制輸出乘法表中各項(xiàng)。將實(shí)現(xiàn)九九乘法表的程序單獨(dú)寫成一個(gè)函數(shù),就可以在主函數(shù)利用函數(shù)調(diào)用的形式來實(shí)現(xiàn)了。
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比克井網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式克井網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋克井地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。
具體實(shí)現(xiàn)方法可以參考如下程序:
#includestdio.h
void YangMultiplicationTable() // 實(shí)現(xiàn)九九乘法表的函數(shù)
{
int i=1,j=1;
for(i=1;i=9;i++) // 控制行數(shù),共9行
for(j=1;j=i;j++) // 控制列數(shù),每列的列數(shù)與行號(hào)一致
{
printf("%d*%d=%d",j,i,i*j); // 輸出九九乘法表的每一項(xiàng)
if(i!=j) printf("\t"); // 每行中相鄰兩項(xiàng)隔開
if(i==j) printf("\n"); // 每行輸出完畢后進(jìn)行換行
}
}
void main()
{
YangMultiplicationTable(); // 通過函數(shù)調(diào)用的方式實(shí)現(xiàn)九九乘法表
}
函數(shù)類型是根據(jù)有無返回值判斷的,無返回值就把函數(shù)定義為void類型
如果是單純輸出矩陣那就不用返回了,如果還要傳回主函數(shù)有其它應(yīng)用那就返回吧
兩數(shù)相乘的C語言編程:
擴(kuò)展資料:
C語言是一門通用計(jì)算機(jī)編程語言,應(yīng)用廣泛。C語言的設(shè)計(jì)目標(biāo)是提供一種能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言。
C 語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結(jié)構(gòu)化。
#includestdio.h
int i;
int n;
int aa[1000]; /*最多1000個(gè)數(shù)相乘,可以自己修改*/
int sum=1;
void main()
{
printf("請(qǐng)輸入要求相乘數(shù)的個(gè)數(shù):");
scanf("%d",n);
printf("請(qǐng)輸入要求相乘數(shù)的數(shù)字:");
printf("\n");
for(i=0;in;i++)
{
scanf("%d",aa[i]);
sum=sum*aa[i];
}
printf("計(jì)算結(jié)果為%d:",sum);
printf("\n");
}
大數(shù)乘法基本上是乘法豎式筆算的代碼化。
基本功能有3個(gè)
1. 大數(shù)的數(shù)組表示。
2. 大數(shù)乘以小數(shù),得到大數(shù)。
3. 大數(shù)加大數(shù),得到大數(shù)。
對(duì)于1,其實(shí)就是int數(shù)組的每個(gè)元素存儲(chǔ)若干位。比如每個(gè)元素保存4個(gè)十進(jìn)制位。[0]存儲(chǔ)個(gè)十百千,[1]存儲(chǔ)萬、十萬、百萬、千萬,諸如此類。一個(gè)數(shù)組保存一個(gè)大數(shù)。因此需要一個(gè)額外的int變量記錄當(dāng)前數(shù)組用了多少個(gè)元素(類似于字符串長(zhǎng)度)。
對(duì)于2,“小數(shù)”指的是能用一個(gè)int保存的數(shù)。注意這里只限4個(gè)二進(jìn)制位(和1里提到的位數(shù)一致)。
比如1 2345 6789這個(gè)數(shù)字,[0]保存6789,[1]保存2345,[2]保存1。長(zhǎng)度3。
這個(gè)大數(shù)乘以小數(shù),比如9999,過程就是[0] * 9999,即6789 * 9999 = 6788 3211,積的低四位(%10000)3211保存到積(大數(shù))的[0],剩下6788的進(jìn)位到[1]。
然后2345 * 9999 = 2344 7655,加上剛才進(jìn)位上來的6788得到2345 4443,其中4443保存到積(大數(shù))的[1]中,2345進(jìn)位到[2]。
以此類推。
對(duì)于3,基本只要一個(gè)for,對(duì)位相加然后注意進(jìn)位就行了。
大數(shù)乘以大數(shù),其實(shí)就是第一個(gè)大數(shù)先乘以第二個(gè)大數(shù)的[0](大數(shù)乘小數(shù),上面的2),得到一個(gè)大數(shù)A0;然后第一個(gè)大數(shù)乘以第二個(gè)大數(shù)的[1],又得到一個(gè)大數(shù)A1……最后再將A0、A1、……加起來(也就是大數(shù)加法,上面的3)。加的時(shí)候要注意,A1的[0]要和A0的[1]對(duì)齊,A2的[0]要和A1的[1]和A0的[2]對(duì)齊……這個(gè)也和我們豎式筆算一樣。
PS:上面的算法基本上是“10000進(jìn)制數(shù)”的計(jì)算方式。如果數(shù)組的每個(gè)元素只保存1個(gè)十進(jìn)制位,那就是10進(jìn)制數(shù)。之所以用10000進(jìn)制,純粹是程序員感覺上好一些。最有效的利用,是每個(gè)int保存2的15次方,也就是32768進(jìn)制。要注意到,如果用10進(jìn)制計(jì)算的話,程序的計(jì)算耗時(shí)會(huì)變成10000進(jìn)制的16倍,也就是效率變成1/16。
PS2:用int數(shù)組的話,位數(shù)最多只能是4位。因?yàn)?位數(shù)相乘可能得到11位數(shù),超出了int表示范圍。
1、首先使用vs2017新建一個(gè)c語言的文件,引入頭文件并寫好main主函數(shù):
2、接著編寫程序的主體部分,這里的第一個(gè)for循環(huán)給x和y循環(huán)賦值,第二個(gè)for循環(huán)中y=x的時(shí)候,會(huì)使x的值在第二個(gè)for循環(huán)中大于等于y的值。最后的printf語句寫在第二個(gè)for循環(huán)的后面,目的是換行:
3、最后編譯運(yùn)行程序,即可看到乘法表的效果。以上就是用C語言輸出九九乘法表的步驟:
當(dāng)前標(biāo)題:c語言乘法函數(shù)如何表示 c語言算乘法
鏈接地址:http://aaarwkj.com/article32/doodgsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、靜態(tài)網(wǎng)站、網(wǎng)站策劃、小程序開發(fā)、企業(yè)建站、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)