显示RAND Char的ASCII值

显示RAND Char的ASCII值,c,ascii,C,Ascii,我正在一个数组中显示随机和唯一字符,这是我使用最后提供的代码完成的 我正在生成26个随机字母,ASCII值从65到90,并存储在一个数组中 然后我生成一个随机字母,并交叉检查数组中已经存在的每个元素,以检查唯一性 我知道这是非常低效的,但这不是我的问题 我的问题是:如何显示每个随机字符的ASCII值? 我习惯于使用以下方式显示ASCII值: printf(“ASCII值%c=%d\n”,c,c) 但是,由于我的信件存储在数组[y]中,因此我无法成功地执行此操作 我的代码是: { in

我正在一个数组中显示随机唯一字符,这是我使用最后提供的代码完成的

  • 我正在生成26个随机字母,ASCII值从65到90,并存储在一个数组中
  • 然后我生成一个随机字母,并交叉检查数组中已经存在的每个元素,以检查唯一性
我知道这是非常低效的,但这不是我的问题

我的问题是:如何显示每个随机字符的ASCII值? 我习惯于使用以下方式显示ASCII值:

printf(“ASCII值%c=%d\n”,c,c)

但是,由于我的信件存储在
数组[y]
中,因此我无法成功地执行此操作

我的代码是:

{
    int array[26];
    int x, y;
    int count;
    int i = 0;
    char c;
    srand(time(NULL));

    for (count = 0; count < 26; count++)
    {
        array[count] = rand() % 26 + 65;
    }

    while (i < 26) {
        c = rand() % 26 + 65;

        for (x = 0; x < i; x++)
        {
            if (array[x] == c) {
                break;
            }
        }
        if (x == i) {
            array[i++] = c;
        }
    }
    for (y = 0; y < 26; y++) {
        printf(" %c = %d\n", array[y], c);
    }

    scanf_s("%d");
    return 0;  
}
{
int数组[26];
int x,y;
整数计数;
int i=0;
字符c;
srand(时间(空));
用于(计数=0;计数<26;计数++)
{
数组[计数]=rand()%26+65;
}
而(i<26){
c=rand()%26+65;
对于(x=0;x
  • 联系
  • 随机性/唯一性工作
  • 仅生成最后一个字母的ASCII值

  • 只需使用
    数组[y]

    printf(" %c = %d\n", array[y], array[y]);
    

    只需使用
    数组[y]

    printf(" %c = %d\n", array[y], array[y]);
    
    两件事:

    首先,要解决您的问题,您需要编写
    printf(“%c=%d\n”,array[y],array[y])
    而不是
    printf(“%c=%d\n”,array[y],c)

    其次,如果要存储字母,我建议将
    array
    的成员也声明为字符,即使用
    char array[26]
    而不是
    int array[26]
    。 顺便说一句:如果您将其声明为
    char array[27]
    并在某处设置
    array[26]='\0'
    ,您可以直接打印
    array
    ,例如,使用
    printf(“我的字母:%s”,array)
    两件事:

    首先,要解决您的问题,您需要编写
    printf(“%c=%d\n”,array[y],array[y])
    而不是
    printf(“%c=%d\n”,array[y],c)

    其次,如果要存储字母,我建议将
    array
    的成员也声明为字符,即使用
    char array[26]
    而不是
    int array[26]
    。 顺便说一句:如果您将其声明为
    char array[27]
    并在某处设置
    array[26]='\0'
    ,您可以直接打印
    array
    ,例如使用
    printf(“我的字母:%s”,array)
    printf(%c=%d\n”,array[y],array[y])
    printf(“%c=%d\n”,数组[y],数组[y])