C语言 由电脑自动产生一个数,并由用户猜想

由电脑自动生成一个三个位且不重叠的十六进制数;
用户可以猜8次,若累计都猜错,则游戏失败,如果猜对,即三个位上的数字都猜对,则设计合理的规则给予用户评分;
用户输入一个数,电脑告诉用户有几个数字位置正确且数字正确、有几个数字位置不正确但数字正确,如要猜的数字是:1F2,用户输入:125,那电脑会提示:数字1位置正确数字正确、数字2位置不正确但数字正确;
游戏可以自动判断用户输入格式是否正确,并给予提示;
用户自行设计任务要求。

生成16进制数

#include<stdio.h>
#include <time.h>
#include <stdlib.h>
int main()
{
    char c[16];
    int j;
    for(j=0; j<10; j++)
    {
        c[j]=j+48;
    }
    for(j=10; j<16; j++)
    {
        c[j]=j+55;
    }
    for(j=0; j<16; j++)
    {
        printf("%c",c[j]);
    }
    srand(time(0));
    int a[3];
    j=0;
    while(j<8)
    {
    a[0]=rand()%16,a[1]=rand()%16,a[2]=rand()%16;
    //printf("\n%d  %d  %d",a[0],a[1],a[2]);
    
    
    printf("\n生成的16进制数:%c%c%c\n",c[a[0]],c[a[1]],c[a[2]]);
    j++; 
    }

}