如何从10个字符串的数组中打印5个唯一的字符串

普里扬卡

我正在编写一个代码,该代码将从10个字符串的数组中打印5个唯一且随机的字符串。但是我的代码并不是唯一打印出来的,总会有一些重复。这是我的代码,有人可以建议如何使其唯一打印吗?

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




void main(void){
    char arr[10][10]={"abc","def","ghi","klm","nop","qrs","tuv","wxy","zab","cde"};
    int i=0,j=0;

    srand(time(0));

    for(i=0;i<5;i++){

    j=rand()%10;
    printf("%d\n",j);

    }
}
皮特·斯科特尼克(Piotr Skotnicki)

只要记住已经打印出来的字词即可:

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

int main()
{
    char arr[10][10] = {"abc","def","ghi","klm","nop","qrs","tuv","wxy","zab","cde"};
    int i = 0, j = 0;
    int done[10] = { 0 };

    srand(time(0));

    for (i = 0; i < 5; ++i)
    {
        do
        {
            j = rand()%10;
        }
        while (done[j] == 1);
        done[j] = 1;
        printf("%s\n", arr[j]);
    }

    return 0;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从字符串数组中打印一个字符串

从 C 中的字符数组打印出一个字符串

从结构定义的数组中打印出一个字符串

如何从字符串数组或arraylist创建一个字符串?

如何打印数组并向 Bash 中的每个项目添加一个字符串

如何将一个字符串数组存储到另一个字符串数组中?

如何从字符串数组列表中删除一个字符串,ANDROID

打印多个字符与打印一个字符串

如何在Java中轻松地打印出10行的10个字符(或字符串)

查找2个字符串中的唯一字符

在 Python 中打印时如何在其他两个字符串之间插入一个字符串

如何比较两个字符串数组并将匹配值存储在另一个字符串数组中?

如何向列表中的每个字符串添加一个字符串?

仅打印字符串中的最后一个字符

每5个字符分割一个字符串

如何使用 Roslyn 生成一个字符串文字数组,每个字符串文字都包含在 #if 中?

如何从另一个字符串打印字符串输出(清晰示例)

朱莉娅:如何在另一个字符串数组中查找字符串的位置(在一个字符串数组中)

创建一个唯一的5个字符的字母数字字符串

如何将18个字符串转换为唯一ID?

split返回一个字符串代替字符串数组

仅显示最后一个字符串的字符串数组

与另一个字符串比较时,如何从Python字符串中提取唯一子字符串?

如何从字符串常量创建一个字符数组?

如何检索特定字符串之前的最后一个字符数组

如何检查数组字符串的最后一个字符是否以“A”结尾

查找数组字符串中的第一个字符

无法获得字符串数组中的第一个字符

如何用c语言打印一个字符串大约10秒?