//编译通过了,运行没效果是怎么回事
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
int main()
{
char a[100], b[50];
srand(time(0));
a[100] = rand() % 26;//生成0-25的随机数
b[100] = rand() % 26;
b[100] += 'A';//字符转换成大写
strcat_s(a, b);//连接数字和字母
printf("%s", a);
return 0;
}
举报
生成随机字母和数字 (编译通过了,运行没效果是怎么回事)
举报
数组越界了,而且生成随机整数并转换为字符串不是这么写的,建议使用sprintf,即:
#include<bits/stdc++.h>
using namespace std;
int main() {
char str[100];
memset(str,0,sizeof str);
sprintf(str,"%d%c",rand()%26,char(rand()%26+'A'));
printf(str);
return 0;
}