资源简介
c++ 课程设计报告 可直接交作业版 完整 代码 + 报告
代码片段和文件信息
#include
#include
#include
using namespace std;
#define LEN 5 // 车牌长度为5个字符
char getChar() //随机产生一个A到Z的字符
{
char aChar;
aChar = ‘A‘+ rand() % ((‘Z‘ + 1) - ‘A‘);
while (‘I‘ == aChar) // 设定车牌中不产生I字母
{
aChar = ‘A‘+ rand() % ((‘Z‘ + 1) - ‘A‘);
}
return aChar;
}
char getNum() //随机产生一个0到9的字符
{
char aChar;
aChar = ‘0‘+ rand() % ((‘9‘ + 1) - ‘0‘);
return aChar;
}
void setData(char * data int type) // 设置车牌号码
{
for (int i = 0; i < LEN; i++) // 随机设置车牌号码
{
int flag = rand() % 2;
if (1 == flag)
{
data[i] = getChar();
} else {
data[i] = getNum();
}
}
if (type == 1) // 需要产生的是出租车车牌
{
data[0] = ‘C‘;
data[1] = ‘Z‘; // 设置出租车车牌为CZ开头
for (int i = 2; i < LEN; i++)
{
int flag = rand() % 2;
if (1 == flag)
{
data[i] = getChar();
} else {
data[i] = getNum();
}
}
}
}
void printData(char data[][LEN + 1] int count)
{
for (int i = 0; i < count; i++)
{
cout << data[i] << endl;
}
cout << endl;
}
void main()
{
cout << “本程序设定车牌为5个字符!“ << endl;
char data[100][LEN + 1]; // 保存已经存在的车牌
for (int i = 0; i < 100; i++) // 初始化车牌
{
data[i][LEN] = ‘\0‘;
}
int count = 0;
srand((int)time(0));
for (int k = 0; k < 10; k++) // 随机产生已经存在的车牌号码
{
setData(data[count] 0);
count++;
}
cout << “已经存在的车牌“ << endl;
printData(data count);
int type = -1;
cout << “请选择产生的车牌类型:“ << endl;
cout << “ 0.默认“ << endl;
cout << “ 1.出租车“ << endl;
cin.sync();
cin >> type;
while ((type != 0) && (type != 1))
{
cin.sync();
cin >> type;
cout << “输入错误,重新输入...“ << endl;
continue;
}
int select = -1;
char getData[LEN + 1]; // 保存为用户产生的车牌
getData[LEN] = ‘\0‘;
bool flag = false; // 产生的车牌是否有效
int time = 2; // 设置用户最多选择两次
bool flagUser = false; // 是否根据用户的选择产生了有效车牌
bool flagExi = false;
while ((time > 0) && (flagUser == false))
{
cout << “还可以选择“ << time << “次“ << endl;
cout << “请选择产生方式:“ << endl;
cout << “ 1.手动输入“ << endl;
cout << “ 2.随机产生“ << endl;
cin.sync();
cin >> select;
if (1 == select)
{
flagExi = false;
flag = false;
while (flag == false)
{
cout << “请输入车牌号(例如 AB123)“ << endl;
cin.sync();
cin >> getData[0] >> getData[1] >> getData[2] >> getData[3] >> getData[4];
for (int i = 0; i < count; i++)
{
if (strcmp(getData data[count]) == 0) // 判断是否已经存在
{
cout << “已存在,请重新输入“ << endl;
flagExi = true;
break;
}
if ((1 == type) && (getData[0] != ‘C‘) && (getData[1] != ‘Z‘))
{
cout << “出租车车牌应该以CZ开头,请重新输入“ << endl;
flagExi = true;
break;
}
}
if (flagExi == true) // 车牌已经存在,重新选择
{
flagExi = false;
continue;
}
cout << “产生车牌:“ << getData << “是否使用(y or n)“ << endl;
char flagChar;
cin.sync();
cin >> flagChar;
if ((flagChar == ‘y‘) || (flagChar == ‘Y‘))
{
flagUser = true; // 车牌有效
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4364 2015-06-29 13:43 test.cpp
文件 139264 2015-06-29 13:53 选车牌.doc
- 上一篇:C++算法编程视频
- 下一篇:ntripclient-c++
相关资源
- ntripclient-c++
- C++算法编程视频
- 格雷码等结构光条纹的生成C++
- SLIC算法做superpixel实现C++
- c++程序设计》第二版高等教育出版社
- 光线追踪算法C++实现
- C++课程设计报告-科学计算器加强版
- 拓扑排序C++代码
- zxing库c++)
- 基于C++实现DFT和IDFT——数字信号处理
- c++程序图的遍历深度优先,广度优先
- 时空上下文视觉跟踪STC含有matlab和c
- 华为C++笔试题全部汇总
- 小型公司工资管理系统课程设计报告
- C++实现图书馆管理系统
- C++实现LZW压缩和解压
- Canny边缘检测C++代码
- C++ GUI Qt 4编程 (第二版) [超清版1
- 图像拼接使用VC++实现完成两幅又重叠
- VC++使用SQL查询操作数据库
- c++音频原始数据PCM采样率转换-源码和
- 数据结构 通讯录管理 课程设计C++单链
- Y.DanielLiang-c++全部的答案
- c++面向对象程序设计答案 陈维新 林小
- C++写的高效率排行榜功能 rank.zip
- c++ 课程设计商品库存管理系统
- 读取串口数据并画出曲线图的VC++程序
- 用WINSOCK实现聊天室的VC++程序设计
- 打砖块C++源码
- 基于IDL和Visual_C++的混合编程
评论
共有 条评论