if(i=k+1)printf(“%d is a prime number\n”,m);else printf(“%d is not a prime number\n”,m);} 【例】求100至200間的全部素?cái)?shù)。
創(chuàng)新互聯(lián)公司是一家從事企業(yè)網(wǎng)站建設(shè)、成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營銷網(wǎng)站建設(shè)、行業(yè)門戶網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)制作的專業(yè)網(wǎng)站建設(shè)公司,擁有經(jīng)驗(yàn)豐富的網(wǎng)站建設(shè)工程師和網(wǎng)頁設(shè)計(jì)人員,具備各種規(guī)模與類型網(wǎng)站建設(shè)的實(shí)力,在網(wǎng)站建設(shè)領(lǐng)域樹立了自己獨(dú)特的設(shè)計(jì)風(fēng)格。自公司成立以來曾獨(dú)立設(shè)計(jì)制作的站點(diǎn)上千多家。
對1-100的所有數(shù)進(jìn)行遍歷,逐一判斷每個(gè)數(shù)是否為素?cái)?shù)。判斷素?cái)?shù)的算法有很多,比較基礎(chǔ)的是逐一求余,如果除了1和本身外,還有其它數(shù)可以整除那么就不是素?cái)?shù)。
使用篩法篩選出 1-100 之間的素?cái)?shù),并輸出每個(gè)素?cái)?shù)。需要注意的是,C 語言沒有內(nèi)置的 bool 類型,需要使用頭文件 stdbool.h 來支持 bool 類型。在上面的代碼中,需要包含頭文件 stdio.h 和 stdbool.h。
1、for(i=100;i=999;i++)是取100到999其中的一個(gè)數(shù)i,針對i,進(jìn)行素?cái)?shù)判斷,不同i值的leap值是不同的,之間沒有影響,判斷完一個(gè)之后當(dāng)然要將leap恢復(fù),再對下一個(gè)i值進(jìn)行判斷。
2、素?cái)?shù),就是除了1和他本身,不能被其他數(shù)整除的數(shù)字。答案就是用100到200之間的每個(gè)數(shù)字,除以2到其本身前面的那一個(gè)數(shù)字,如果此過程中出現(xiàn)整除的現(xiàn)象,則該數(shù)不是素?cái)?shù)。如果沒有整除的現(xiàn)象,則該數(shù)為素?cái)?shù)輸出。
1、tb[i][j] = INT_MAX;} while (m--){ scanf(%d%d%d, &u, &v, &w);tb[u][v] = tb[v][u] = w;} prim(1, n);printf(\n);} return 0;} 要求出所有的最小生成樹。貌似有點(diǎn)麻煩。
2、Prim算法用于求無向圖的最小生成樹 設(shè)圖G =(V,E),其生成樹的頂點(diǎn)集合為U。①、把v0放入U(xiǎn)。②、在所有u∈U,v∈V-U的邊(u,v)∈E中找一條最小權(quán)值的邊,加入生成樹。③、把②找到的邊的v加入U(xiǎn)集合。
3、普里姆算法. 普里姆算法在找最小生成樹時(shí),將頂點(diǎn)分為兩類,一類是在查找的過程中已經(jīng)包含在樹中的(假設(shè)為 A 類),剩下的是另一類(假設(shè)為 B 類)。. 對于給定的連通網(wǎng),起始狀態(tài)全部頂點(diǎn)都?xì)w為 B 類。
4、因該是prim算法 假設(shè)V是圖中頂點(diǎn)的集合,E是圖中邊的集合,TE為最小生成樹中的邊的集合,則prim算法通過以下步驟可以得到最小生成樹:1:初始化:U={u 0},TE={f}。
5、而B中減少的這條邊就是最小生成樹的一條邊。這樣一來,調(diào)用以上兩個(gè)步驟N-1次(有N個(gè)點(diǎn)),則可以得到n-1條線段,就是其最小生成樹。
6、例子:最小生成樹問題 在n個(gè)城市之間建設(shè)網(wǎng)絡(luò),只需保證連通即可,求最經(jīng)濟(jì)的架設(shè)方法。