(1)前兩位是10是因為printf("10%c%c%d%c%c%d%c%c\n",a3,a4,a5,a6,a7,a8,a9,a10);
創(chuàng)新互聯(lián)公司是一家專業(yè)提供永豐企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、做網(wǎng)站、HTML5建站、小程序制作等業(yè)務(wù)。10年已為永豐眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進行中。
的輸出格式字符串前兩位是10。
(2)因為你的輸出都是用%c格式輸出的,所以你說的“隨機數(shù)字”和“隨機字母”其實都是ASCII碼表里面的字符,char類型只有128個字符,所以運行1000次肯定是有重復(fù)的。
rand()生成的結(jié)果是一個整數(shù),如果想得到字符(字母),則需要控制得到的數(shù)據(jù)在'a' - 'z'的ascii值之間的數(shù)據(jù),給你一個生成大寫字母的
int getRandChar()
{
int ch;
srand(time(NULL));
ch=rand()%26; //生成0-25的值
ch += 'A' ; //可得到一個隨機字母
return ch ;
}
字母 要求是包括大小寫嗎?
可以這樣
char?c;
srand(time(NULL));//設(shè)置隨機數(shù)種子
c?=?rand()%52;
if(c??25)?c?=?c?-?25?+?'a';
else?c?=?c+'A';