我该如何将5个随机ASCII值转换为字符?
问题描述:
从ASCII值97至122(即字母表的所有ASCII值)中随机生成5个ASCII值。在此过程中,确定对应于每个ASCII值的字母,并输出由这5个字母组成的单词。
我的代码:
#include <iostream>
#include <time.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
int main ()
{
srand (time(NULL));
int val1= rand()%122+97;
int val2= rand()%122+97;
int val3= rand()%122+97;
int val4= rand()%122+97;
int val5= rand()%122+97
cout<<val1<<" and "<<val2<<" and "<<val3<<" and "<<val4<<" and "<<val15<<". "<<
return 0;
}
cout << (char)val1 << etc..
实际上,你一开始就不应该使用 int。 - Aldenrand()%122
会生成一个范围在 [0, 122) 内的值。将这个值加上 97 将会得到一个范围在 [97, 219) 内的值,这可能不是你想要的结果。 - Igor Tandetnik