中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言程序實例填空題分析

發布時間:2022-03-17 14:11:31 來源:億速云 閱讀:188 作者:iii 欄目:大數據

本篇內容主要講解“c語言程序實例填空題分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“c語言程序實例填空題分析”吧!

1、題目描述

用篩選法可得到2~n(n<10000)之間的所有素數,方法是:首先從素數2開始,將所有2的倍數的數從數表中刪去(把數表中相應位置的值置成0);接著從數表中找下一個非0數,并從數表中刪去該數的所有倍數;依此類推,直到所找的下一個數等于n為止。這樣會得到一個序列:2,3,5,7,11,13,17,19,23,……

函數fun用篩選法找出所有小于等于n的素數,并統計素數的個數作為函數值返回

請在程序的下劃線處填入正確的內容井把下劃線刪除,使程序得出正確的結果。

注意:源程序存放在考生文件夾下的BLANK1,C中

 不得增行或刪行,也不得更改程序的結構

2、部分程序:

#include   <stdio.h>

#pragma warning (disable:4996)

int fun(int  n)

{  int  a[10000], i,j, count=0;

   for (i=2; i<=n; i++)  a[i] = i;

   i = 2;

   while (i<n) {

/**********found**********/

      for (j=a[i]*2; j<=n; j+=___1___)

         a[j] = 0;

      i++;

/**********found**********/

      while (___2___==0)

         i++;

   }

   printf("\nThe prime number between 2 to %d\n", n);

   for (i=2; i<=n; i++)

/**********found**********/

     if (a[i]!=___3___)

      {  count++;    printf( count%15?"%5d":"\n%5d",a[i]);  }

   return  count;

}

main()

{  int  n=20, r;

   r = fun(n);

   printf("\nThe number of prime is  :  %d\n", r);

}

3、參考答案:

本題考查的是篩選算法。

    本程序的 while循環中又嵌套了一個for和 while循環,內嵌的for循環用于進行素數倍數的篩選,篩選的步長為a[i],故第一空填a[i];內嵌的 while循環用于判斷下一個即將被篩選的數是否為零,如果為零,則跳過(通過i++實現),即不對它的倍數進行篩選,估第二空應填a[i];最后通過一個for循環統計素數的個數,其中的if用于判斷a[i]是否為零,如果為零則說明a[i]不是素數,如果不為零則說明a[i]為素數,使得記錄素數個數的變量 count+1,故第三空應填0。

到此,相信大家對“c語言程序實例填空題分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临桂县| 肥西县| 鹤山市| 铁力市| 雅安市| 浦北县| 托里县| 闸北区| 台湾省| 广平县| 金平| 仪陇县| 年辖:市辖区| 藁城市| 东兰县| 都昌县| 镇巴县| 保山市| 图木舒克市| 聂拉木县| 如皋市| 平利县| 冀州市| 新巴尔虎右旗| 武平县| 荔波县| 财经| 积石山| 灌阳县| 海原县| 会泽县| 韶关市| 依兰县| 阿合奇县| 那曲县| 江陵县| 深泽县| 齐河县| 轮台县| 金坛市| 绥宁县|