日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

java 操作系统 模拟 daima_求C/C++或java写的比较简单的操作系统的模拟程序

發(fā)布時間:2025/4/16 c/c++ 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 操作系统 模拟 daima_求C/C++或java写的比较简单的操作系统的模拟程序 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

展開全部

#include

#include

#include "Graphics.h"

#include

using namespace std;

const int FDF=-2;

const int FFF=-1;

const int N=100;//存儲空間

int fnum;//文件數(shù)量

struct FILEINFO{

char name[10];

int length;

int index[10];

};

FILEINFO file[10];

char DISK[N]; int blankspace;

void Graphindex(int last);

void printDISK()

{

int i;

cout<

for(i=0;i

cout<

cout<

cout<

cout<

cout<

}

}

void write(char *tmpname,int tmplength)

{

int i,j;

//復制文件名和文件塊個數(shù)

strcpy(file[fnum].name,tmpname);

file[fnum].length=tmplength;

//存文件

for(i=0;i

for(j=0;j

if(DISK[j]=='N'){

file[fnum].index[i]=j;//首個空e69da5e887aa3231313335323631343130323136353331333264626531閑塊為文件開始塊

DISK[j]='Y';

break;

}

}

}

blankspace-=tmplength;//改變空閑塊個數(shù)

fnum++;

cout<

}

void insert(char *tmpname,int insertpoint)

{

int i;

int last;

//尋找要執(zhí)行插入操作的文件,將其數(shù)組下標存入last

for(i=0;i

if(strcmp(file[i].name,tmpname)==0){

last=i;

break;

}

}

for(i=0;i

file[last].index[file[last].length-i*1]=file[last].index[file[last].length-(i+1)*1];

}

for(i=0;i

if(DISK[i]=='N'){

file[last].index[insertpoint]=i;

DISK[i]='Y';

break;

}

}

//改變空閑塊個數(shù)與文件長度

file[last].length++;

blankspace--;

cout<

}

void printindex(char *tmpname)

{

int last,i;

for(i=0;i

if(strcmp(file[i].name,tmpname)==0){

last=i;

break;

}

}

cout<

cout<

for(i=0;i

cout<

}

Graphindex(last);

}

void itol(int i)

{

LPCTSTR yy;

char zz[10];

sprintf(zz, "%d", i);

//itoa(i,zz,10);

yy = LPCTSTR( zz );

//moveto(x+i*2,y+20);

moverel(25,9);

outtext(yy);

//return yy;

}

void ctol(char *c)

{

LPCTSTR yy;

yy = LPCTSTR( c );

moverel(0,0);

outtext(yy);

}

void Graphindex(int last)

{

int i,xx=100,yy=100,x=400,y=50;

initgraph(640, 480);

setfillstyle(SOLID_FILL,WHITE);

floodfill(5,5,WHITE);

setcolor(BLACK);

moveto(110,50); ctol(file[last].name);

outtextxy(150,50,"索引表");

outtextxy(115,80,"邏輯"); outtextxy(175,80,"物理");

rectangle(xx,yy-30,xx+60,yy); rectangle(xx+60,yy-30,xx+120,yy);

for(i=0;i

rectangle(xx,yy+i*30,xx+60,yy+(i+1)*30);

moveto(xx,yy+i*30); itol(i);

rectangle(xx+60,yy+i*30,xx+120,yy+(i+1)*30);

moveto(xx+60,yy+i*30); itol(file[last].index[i]);

moveto(xx+130,yy+i*30+15); lineto(x+(file[last].index[i]/20)*20+5,y+(file[last].index[i]%20)*20+5);

}

ellipse(x+45,25,0,360,60,15);

ellipse(x+45,440,180,360,60,15);

line(x-15,25,x-15,440);

line(x+105,25,x+105,440);

for(i=0;i

if(DISK[i]=='Y'){

setcolor(RED);

rectangle(x+(i/20)*20,y+(i%20)*20,x+(i/20)*20+10,y+(i%20)*20+10);

}else setcolor(GREEN);

rectangle(x+(i/20)*20,y+(i%20)*20,x+(i/20)*20+10,y+(i%20)*20+10);

}

getch();

closegraph();

}

void Graph()

{

int i,x=300,y=50;

initgraph(640, 480);

setfillstyle(SOLID_FILL,WHITE);

floodfill(5,5,WHITE);

setcolor(BLACK);

ellipse(x+45,25,0,360,60,15);

ellipse(x+45,440,180,360,60,15);

line(x-15,25,x-15,440);

line(x+105,25,x+105,440);

for(i=0;i

if(DISK[i]=='Y'){

setcolor(RED);

rectangle(x+(i/20)*20,y+(i%20)*20,x+(i/20)*20+10,y+(i%20)*20+10);

}else setcolor(GREEN);

rectangle(x+(i/20)*20,y+(i%20)*20,x+(i/20)*20+10,y+(i%20)*20+10);

}

getch();

closegraph();

}

void main()

{

int i;

char tmpname[10];

int tmplength;//要寫入文件長度

int o;//命令

fnum=0;

for(i=0;i

DISK[i]='N';

}

DISK[1]='Y';

blankspace=N;

while(1){

cout<

cin>>o;

switch(o){

case 1: cout<

cin>>tmpname;

cout<

cin>>tmplength;

write(tmpname,tmplength);

break;

case 2: cout<

cin>>tmpname;

int insertpoint;

cout<

cin>>insertpoint;

insert(tmpname,insertpoint);

break;

case 3: cout<

cin>>tmpname;

printindex(tmpname);break;

case 4: printDISK();Graph();break;

}

}

cin.get();

}

追問

我用的是vs2010,編譯結(jié)果:

1>c:\users\free\documents\visual studio 2010\projects\ostest\ostest\ostest.cpp(3): fatal error C1083: 無法打開包括文件:“Graphics.h”: No such file or directory

1>

1>生成失敗。

1>

1>已用時間 00:00:02.67

========== 生成: 成功 0 個,失敗 1 個,最新 0 個,跳過 0 個 ==========

已贊過

已踩過<

你對這個回答的評價是?

評論

收起

總結(jié)

以上是生活随笔為你收集整理的java 操作系统 模拟 daima_求C/C++或java写的比较简单的操作系统的模拟程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。