资源简介
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++
相关资源
- 国际象棋的qt源代码
- C++中头文件与源文件的作用详解
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- 利用C++哈希表的方法实现电话号码查
- 移木块游戏,可以自编自玩,vc6.0编写
- C++纯文字DOS超小RPG游戏
- VC++MFC小游戏实例教程(实例)+MFC类库
- 连铸温度场计算程序(C++)
- 6自由度机器人运动学正反解C++程序
- Em算法(使用C++编写)
- libstdc++-4.4.7-4.el6.i686.rpm
- VC++实现CMD命令执行与获得返回信息
- 白话C++(全)
- C++标准库第1、2
- 大数类c++大数类
- C++语言编写串口调试助手
- c++素数筛选法
- C++ mqtt 用法
- 商品库存管理系统 C++ MFC
- c++ 多功能计算器
- C++17 In Detail
- 嵌入式QtC++编程课件
- 颜色识别形状识别STM103嵌入式代码
- c++ 邮件多附件群发
- c++ 透明代理(hookproxy)
- mfc 调用redis
- FTP客户端源码(c++)
- c++ 画图(14Qt-XPS)
- c++多边形交并差运算
评论
共有 条评论