⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 计算机的一个程序作业
💻 C
字号:
#include <stdio.h>
#include <stdlib.h>
#include<winsock.h>
#include<winbase.h>
#define q0 0
#define q1 1
#define q2 2
#define q3 3
void input(void);//申明输入函数的函数头 
void control(void);//申明控制函数的函数头 
void output(void);//申明输出函数的函数头 
int floorcall[9]={0};//定义数组floorcall记录电梯内部的呼叫 
int upcall[8]={0};//定义数组upcall记录电梯外部向上的呼叫
int downcall[8]={0};//定义数组downcall记录电梯外部向下的呼叫 
int CALL=0;//定义呼叫标识变量 CALL。CALL=0代表当前无呼叫,CALL=1代表当前有呼叫 
char STATE='0';//定义状态变量STATE,q0,q1,q2,q3分别代表初始状态,空闲状态,运行状态,和停靠状态 
int LOCATION=1;//定义变量LOCATION记录当前楼层 
int HEADING=0;//定义变量HEADING记录电梯运行方向,HEADING=0无方向,HEADING=1向上运行,HEADING=2向下运行 
int CALLSOURSE=0;//定义变量CALLSOURSE记录呼叫来源,CALLSOURSE=1是来源于电梯内部的呼叫,CALLSOURSE=2是来自电梯外部向上的呼叫,CALLSOURSE=3是来自电梯外部向下的呼叫 
int W=0;//定义全局变量 W 
int destination[100]={0};//定义数组 destination存储目标楼层 
int TIME=0;//定义计时函数 
int P=0;
int des[100][2]={0};

int main(int argc, char *argv[])
{
  printf("请选择输入方式, a=1表示键盘输入, a=2表示从文件中输入\n");
     scanf("%d",&W);//读取输入方式
  printf("请输入您所需要的控制策略,1代表先来先服务策略,2代表顺便服务策略\n");
     scanf("%d",&P);//读入控制策略
  getchar();  
  DWORD ThreadID1 = 1;/*创建线程1:从键盘接收字符写入到全局变量ch中 */ 
  HANDLE hRead1 = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)input,NULL,0,&ThreadID1);
  DWORD ThreadID2 = 2;/*创建线程2:用于将全局变量写入文件*/ 
  HANDLE hRead2 = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)output,NULL,0,&ThreadID2);
  while(1)//死循环 
     control();//调用函数control运行控制 
  system("PAUSE");	
  return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -