rand随机技巧
标签: C语言
学习人数: 10.4k

高清播放
赞赏支持

示例代码

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main() {
    srand(time(NULL));
    int x = rand()%10;
    printf("%d\n", x);
    return 0;
}

 

题目:一副扑克有54张牌,用1-54代表,请设计一个高效的洗牌程序。

参考代码

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void _swap(int &x, int &y) {
    int temp = x;
    x = y;
    y = temp;
}

int main() {
    srand(time(NULL));
    int num[55];
    for (int i = 1; i <= 54; i++) num[i] = i;
    for (int i = 1; i <= 54; i++) {
        int x = rand()%54 + 1;
        _swap(num[i], num[x]);
    }
    for (int i = 1; i <= 54; i++)
        printf("%d ", num[i]);
    return 0;
}

 

登录查看完整内容


课后作业


登录后开始许愿

暂无评论,来抢沙发