人人爱人人爽_2色视频网站_日韩欧美亚洲_中文字幕一区二区三中文字幕_制服丝袜影音先锋_成年人免费影院_freexxxx性特大另类

大學生新聞網,大學生新聞發(fā)布平臺
大學生新聞網
大學生新聞大學生活校園文學大學生村官
社會實踐活動社會實踐經歷社會實踐報告社會實踐總結社會實踐心得
全國排名校友會版軟科排名分類排名本科排名一本排名二本排名專科排名學校地址
求職簡歷職場法則面試技巧職場故事求職招聘大學生就業(yè)
英語學習計算機學習電氣工程機械工程經濟管理建筑設計財務會計
申請書證明書檢討書自薦信演講稿心得體會調查報告讀后感求職信推薦信其它范文

C語言約瑟夫環(huán)問題

編號為 1,2,3,…,n 的 n 個人圍坐一圈,任選一個正整數 m 作為報數上限值,從第一個人開始按順時針方向報數,報數到 m 時停止,報數為 m 的人出列。從出列人的順時針方向的下一個人開始又從 1 重新報數,如此下去,直到所有人都全部出列為止。

算法思想
每個人的編號存放在一個數組 a 中,主函數中決定人數的個數以及報數的上限值 m,設計一個函數實現對應的操作。函數的形參有整型數組 a、整數 n 和 m,n 用來接收傳遞的人數,m 用來接收報數上限,函數的返回值為空;函數體中輸出出列人的順序。

函數中利用循環(huán)訪問數組中 n 個元素,每次訪問元素,設定內循環(huán)連續(xù)訪問 m 個元素,元素訪問的下標為 k,訪問到第 m 個元素時,如果元素不是 0,此時輸出元素 a[k],再設定 a[k] 為 0,繼續(xù)訪問后面的元素。


主函數中設定數組 a,從鍵盤輸入 n 和 m,利用循環(huán)產生 n 的位置序號存放到數組 a 中,調用函數實現相應的操作。

程序代碼

#include <stdio.h>
#define N 100
int josef(int a[],int n,int m)
{
    int i,j,k=0;
    for(i=0;i<n;i++)
    {
        j=1;
        while(j<m)
        {
            while(a[k]==0)
            k=(k+1)%n;
            j++;
            k=(k+1)%n;
        }
        while(a[k]==0)
        k=(k+1)%n;
        printf("%d ",a[k]);
        a[k]=0;
    }
    return 0;
}
 
int main()
{
    int a[100];
    int i,j,m,n;
    printf("input n and m:");
    scanf("%d%d",&n,&m);
    for(i=0;i<n;i++)
        a[i]=i+1;
    printf("\n output:\n");
    josef(a,n,m);
    printf("\n");
    return 0;
}
調試運行結果
15 個人圍坐在一起,報數上限為 4 時的出列順序如下所示:
input n and m:15 4

output:
4 8 12 1 6 11 2 9 15 10 5 3 7 14 13
100 個人圍坐在一 起,報數上限為 9 時的出列順序如下所示:
input n and m:100 9

output:
9 18 27 36 45 54 63 72 81 90 99 8 19 29 39 49 59 69 79 89 100 11 22 33 44 56 67
78 91 2 14 26 40 52 65 77 92 4 17 32 47 61 75 88 5 21 37 53 70 85 1 20 38 57 74
94 12 31 51 73 95 15 41 62 84 7 34 60 86 13 43 71 98 30 66 97 35 76 10 50 93 42
83 28 87 48 6 68 46 23 3 96 16 25 64 55 58 24 80 82

總結
① 程序由 main() 函數和 josef() 函數組成,main() 函數調用 josef() 函數,用數組名作為函數參數,在主函數和被調用函數中分別定義數組。主函數執(zhí)行到 josef(a,n,m) 語句時,將數組 a 的首元素的地址傳遞給形參數組 a,程序轉去執(zhí)行 josef(),形參數組 a 中的元素發(fā)生逆序排列,則實參數組 a 也隨之改變,當 josef() 執(zhí)行完后,返回到主函數中繼續(xù)執(zhí)行被調函數后面的語句。

② 實例中定義函數 josef() 解決問題的難點有兩個:一是如何求下一個出圈的人的位置;二是此人出圈后對這個人的位置如何處理。從第一個人開始報數,報到 m 時,此人出圈,設定變量 j,每次統(tǒng)計出圈的人數,當出圈人數到 m 時,重新開始統(tǒng)計。n 個人圍坐一圈,可看作環(huán)狀,設定 k 表示出圈人的下標,則出圈人的下標的計算可用“(k+l)%n”表示。對于第二個問題,首先將出圈人的位置打印輸出,然后將其位置元素設置為 0。


③ 數組名作函數參數時,要求在被調用函數和調用函數中分別定義數組,且形參和實參必須是類型相同的數組。實參和形參數組是指向同一段地址空間的,當主函數執(zhí)行時,這段空間由實參數組控制,當被調用函數執(zhí)行時,這段空間由形參數組使用,被調函數執(zhí)行結束后,該空間又交回給實參數組。


用數組名作為函數參數時,形參與實參之間的傳遞方式為地址傳遞,因此,形參數組的改變會影響實參數組的內容。



C 編譯系統(tǒng)對形參數組的大小不做檢查,只是將實參數組的首地址傳給形參數組,所以形參數組可以不用指定大小。如實例中被調用函數的首部定義為 void josef(int a[], int n,int m),其中的整型數組 a 的定義為 int a[],沒有給出數組的具體大小。



④ 一維數組名、多維數組名都可以作為函數的參數,進行地址傳遞。
    作者:大學生新聞網    來源:大學生新聞網
    發(fā)布時間:2025-03-10    閱讀:
    掃一掃 分享悅讀
  • C語言整數逆序輸出
  • 將一個從鍵盤輸入的整數存放到一個數組中,通過程序的運行按照數組中的逆序輸出該整數,利用遞歸的方法解決問題。
  • 03-10 關注:0
  • C語言約瑟夫環(huán)問題
  • 編號為 1,2,3,…,n 的 n 個人圍坐一圈,任選一個正整數 m 作為報數上限值,從第一個人開始按順時針方向報數,報數到 m 時停止,報
  • 03-10 關注:0
  • C語言輸出等腰三角形
  • 本實例要求從鍵盤輸入任意整數 n,通過程序運行輸出對應高度為 n 的等腰三角形。
  • 03-10 關注:0
  • C語言字符串加密和解密算法
  • 在本實例中要求設計一個加密和解密算法。在對一個指定的字符串加密之后,利用解密函數能夠對密文解密,顯示明文信息。
  • 03-09 關注:3
  • C語言獲取矩陣的最大值及其下標
  • 本實例要求使用二維數組將一個 3×4 的矩陣中所有元素的最大值及其下標獲取,通過該程序,掌握二維數組的引用知識。
  • 03-09 關注:4
  • C語言誰家孩子跑得最慢
  • 張、王、李三家各有三個小孩。一天,三家的九個孩子在一起比賽短跑,規(guī)定不分年齡大小,跑第一得 9 分,跑第二得 8 分,依次類推。
  • 03-09 關注:3
  • C語言狼追兔子問題
  • 一只兔子躲進了 10 個環(huán)形分布的洞的某一個,狼在第一個洞沒有找到兔子,就隔一個洞,到第三個洞去找
  • 03-09 關注:2
人人爱人人爽_2色视频网站_日韩欧美亚洲_中文字幕一区二区三中文字幕_制服丝袜影音先锋_成年人免费影院_freexxxx性特大另类
久久精品一区二区三区不卡| 色婷婷一区二区三区四区| 久久久亚洲精品石原莉奈| 午夜精品福利视频网站| 成人在线视频一区| 欧美日韩成人一区二区| 91.麻豆视频| 中文字幕的久久| 欧美三级韩国三级日本三斤| 国产精品免费视频网站| 青青草精品视频| 日产精品久久久久久久性色| 精品制服美女丁香| 成人综合婷婷国产精品久久蜜臀| 99精品黄色片免费大全| 欧美丰满嫩嫩电影| 久久精品人人做人人爽97| 伊人婷婷欧美激情| 日本欧美久久久久免费播放网| 久久精品国产999大香线蕉| 99国内精品久久| 日韩欧美一区二区免费| 久久品道一品道久久精品| 国产精品高清亚洲| 日本中文一区二区三区| fc2成人免费人成在线观看播放 | 久久精品久久99精品久久| 国产成人午夜99999| 在线亚洲高清视频| 国产欧美一区二区精品婷婷| 国产精品久线在线观看| 日本麻豆一区二区三区视频| 亚洲综合色噜噜狠狠| 亚洲不卡一区二区三区| 91热门视频在线观看| 日韩精品免费视频人成| 亚洲乱码一区二区三区在线观看| 一色屋精品亚洲香蕉网站| 精品国产乱码久久久久久蜜臀| 国产一区在线看| 中文幕一区二区三区久久蜜桃| 色先锋aa成人| 另类小说视频一区二区| 国产一区二区三区免费看 | 欧美日韩视频在线第一区 | 国产精品夜夜爽| 欧美精品一级二级三级| 激情综合网av| 色88888久久久久久影院按摩| 亚洲美女区一区| 2023国产一二三区日本精品2022| 亚洲一区二区三区四区在线免费观看 | 国产精一品亚洲二区在线视频| 在线看日韩精品电影| 国产亚洲短视频| 免费高清视频精品| 欧美一区二区三区在线视频| 亚洲午夜久久久久久久久电影院| 色哟哟国产精品| 亚洲日穴在线视频| 91在线视频免费观看| 中国色在线观看另类| 国产成人精品网址| 国产婷婷色一区二区三区| 国产精品一区二区三区四区 | 日韩欧美电影在线| 久久精品国产99久久6| 欧美白人最猛性xxxxx69交| 亚洲成人一二三| 欧美久久一二区| 亚洲一区视频在线| 欧美性感一类影片在线播放| 亚洲欧美国产毛片在线| 欧美性猛交xxxx黑人交| 天堂av在线一区| 日韩欧美国产综合| 久久精品国产精品亚洲红杏| 久久精品人人做人人爽97| 成人网在线免费视频| 中文字幕综合网| 欧美精品v国产精品v日韩精品| 亚洲r级在线视频| 欧美精品自拍偷拍| 国产高清久久久| 一区二区高清视频在线观看| 欧美肥大bbwbbw高潮| 国产综合一区二区| 亚洲欧洲av另类| 欧美一区二区不卡视频| 成人午夜短视频| 天天爽夜夜爽夜夜爽精品视频| 日韩三级在线免费观看| 成人小视频免费在线观看| 一区二区三区日韩精品视频| 制服丝袜亚洲网站| 成人av在线一区二区三区| 亚洲成人av资源| 久久亚洲精品小早川怜子| a在线欧美一区| 视频一区二区中文字幕| 国产精品嫩草影院av蜜臀| 欧美日韩国产另类不卡| 成人一区二区三区| 午夜日韩在线电影| 国产精品欧美综合在线| 欧美精品18+| 91在线免费看| 国内久久精品视频| 欧美三级三级三级爽爽爽| 欧美videossexotv100| 97久久人人超碰| 日本网站在线观看一区二区三区| 亚洲国产高清在线| 6080yy午夜一二三区久久| 97精品久久久午夜一区二区三区| 琪琪久久久久日韩精品| 亚洲欧美二区三区| 久久精品人人做人人综合| 制服.丝袜.亚洲.另类.中文| 色综合天天性综合| 激情图片小说一区| 日韩精品一级中文字幕精品视频免费观看| 国产欧美日韩视频在线观看| 欧美老年两性高潮| 色视频成人在线观看免| 国产成a人亚洲| 日韩高清在线不卡| 一区二区三区不卡视频| 国产精品免费aⅴ片在线观看| 精品捆绑美女sm三区| 欧美人伦禁忌dvd放荡欲情| 99国产精品久| 白白色亚洲国产精品| 国产成人丝袜美腿| 久久66热偷产精品| 免费在线观看一区二区三区| 亚洲图片一区二区| 亚洲精品国产a久久久久久 | 成人动漫av在线| 国产成人在线视频网址| 国内久久精品视频| 久久99精品久久久久| 日韩精品一卡二卡三卡四卡无卡| 亚洲国产日产av| 艳妇臀荡乳欲伦亚洲一区| 一区二区三区在线播| 亚洲一二三区在线观看| 亚洲精品中文字幕乱码三区| 亚洲青青青在线视频| 亚洲免费伊人电影| 一区二区三区久久久| 亚洲国产综合视频在线观看| 亚洲成人av电影在线| 日韩黄色片在线观看| 日韩精品福利网| 精久久久久久久久久久| 国精产品一区一区三区mba视频| 国产一区二区精品久久99| 国产成人精品在线看| 99热国产精品| 在线精品视频免费播放| 欧美一级xxx| 久久久影视传媒| 国产精品美女久久久久久久久| 最新日韩av在线| 婷婷一区二区三区| 久久99久久精品| 成人免费看视频| www.色综合.com| 欧美日韩国产欧美日美国产精品| 欧美一级片在线看| 国产日韩欧美电影| 亚洲蜜桃精久久久久久久| 午夜国产精品一区| 国产一区二区电影| 色婷婷一区二区| 日韩欧美一区电影| 中文字幕在线视频一区| 亚洲v精品v日韩v欧美v专区 | 在线观看av一区二区| 欧美久久高跟鞋激| 欧美激情中文字幕| 亚洲一区二区不卡免费| 美日韩一区二区三区| 99天天综合性| 日韩一级片在线播放| 亚洲激情校园春色| 日韩女优av电影在线观看| 在线免费观看视频一区| 欧美一区二区三区成人| 欧美经典一区二区三区| 成人99免费视频| 偷拍一区二区三区四区| 久久精品在线免费观看| 成人精品视频一区二区三区| 日韩欧美色电影| 日韩成人精品在线| 日本视频在线一区| 99视频有精品| 精品欧美一区二区久久|