请帮我把这个C语言小程序改为C++的,通过了追加分70+20一定给

#include<iostream>usingnamespacestd;voidmain(){charalgorithm;floatl,m;inta[100];intdi... #include <iostream>
using namespace std;
void main()
{
char algorithm;
float l,m;
int a[100];
int direct,begin,i,j,t,k,n=0;
cout<<"请输入要调度序列的个数:"<<endl;
cin>>n;
cout<<"请输入要调度的序列:"<<endl;
for(i=0;i<n;i++)
{
cin>>a[i];
}
cout<<endl;
for(i=0;i<n-2;i++)
{
for(j=n-1;j>=1;j--)
{
if(a[j]<a[j-1])
{
t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
}
}
/* for(i=0;i<n;i++)
cout<<a[i]<<endl;*/
cout<<"请选择磁盘调度算法,其中s代表scan算法,c代表cscan算法:"<<endl;
cin>>algorithm;
//以下为scan算法实现磁盘调度
if(algorithm=='s')
{
cout<<"请输入开始的磁盘序列号:"<<endl;
cin>>begin;
cout<<endl;
for(i=0;i<n;i++)
{
if(a[i]==begin)
k=i;
}
cout<<"请输入访问方向,其中1为增大方向,0为减小方向:"<<endl;
cin>>direct;
cout<<endl;
m=n-1;
if(direct==1)
{
for(i=k;i<n;i++)
cout<<a[i]<<" ";
for(i=k-1;i>=0;i--)
cout<<a[i]<<" ";
cout<<endl;
l=((a[n-1]-a[k])+(a[n-1]-a[0]))/m;
cout<<"平均寻道长度为:"<<l<<endl;
}
else
{
for(i=k;i>=0;i--)
cout<<a[i]<<" ";
for(i=k+1;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
l=((a[k]-a[0])+(a[n-1]-a[0]))/m;
cout<<"平均寻道长度为:"<<l<<endl;
}
}
//以下为cscan算法实现调度
else
{
cout<<"请输入开始的磁盘序列号:"<<endl;
cin>>begin;
cout<<endl;
for(i=0;i<n;i++)
{
if(a[i]==begin)
k=i;
}
cout<<"请输入访问方向,其中1为增大方向,0为减小方向:"<<endl;
cin>>direct;
cout<<endl;
m=n-1;
if(direct==1)
{
for(i=k;i<n;i++)
cout<<a[i]<<" ";
for(i=0;i<k;i++)
cout<<a[i]<<" ";
cout<<endl;
l=((a[n-1]-a[k])+(a[n-1]-a[0])+(a[k-1]-a[0]))/m;
cout<<"平均寻道长度为:"<<l<<endl;
}
else
{
for(i=k;i>=0;i--)
cout<<a[i]<<" ";
for(i=n-1;i>k;i--)
cout<<a[i]<<" ";
cout<<endl;
l=((a[k]-a[0])+(a[n-1]-a[0])+(a[n-1]-a[k+1]))/m;
cout<<"平均寻道长度为:"<<l<<endl;
}
}

}
答对了这个问题,另一个问题和悬赏共70分也给你
貌似是C++改成C语言, 最先调试通过的给分,先到先得,哥们儿最仗义 ,另外到http://zhidao.baidu.com/question/103082251.html随便留个言,最佳和悬赏也一并给你
展开
 我来答
公羊乃2P
2009-06-25 · TA获得超过297个赞
知道小有建树答主
回答量:230
采纳率:0%
帮助的人:265万
展开全部
#include <stdio.h>

void main()
{
char algorithm;
float l,m;
int a[100];
int direct,begin,i,j,t,k,n=0;
printf("请输入要调度序列的个数:\n");
scanf("%d",&n);
printf("请输入要调度的序列:\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
printf("\n");
for(i=0;i<n-2;i++)
{
for(j=n-1;j>=1;j--)
{
if(a[j]<a[j-1])
{
t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
}
}
/* for(i=0;i<n;i++)
cout<<a[i]<<endl;*/
printf("请选择磁盘调度算法,其中s代表scan算法,c代表cscan算法:\n");
//cin>>algorithm;
scanf("%c",&algorithm);
//以下为scan算法实现磁盘调度
if(algorithm=='s')
{

printf("请输入开始的磁盘序列号:\n");
scanf("%d",&begin);
printf("\n");
for(i=0;i<n;i++)
{
if(a[i]==begin)
k=i;
}

printf("请输入访问方向,其中1为增大方向,0为减小方向:\n");
scanf("%d",&direct);
printf("\n");
m=float(n)-1;
if(direct==1)
{
for(i=k;i<n;i++)
//cout<<a[i]<<" ";
printf("%d ",a[i]);
for(i=k-1;i>=0;i--)
//cout<<a[i]<<" ";
printf("%d ",a[i]);
//cout<<endl;
printf("\n");
l=((a[n-1]-a[k])+(a[n-1]-a[0]))/m;
//cout<<"平均寻道长度为:"<<l<<endl;
printf("平均寻道长度为:%d\n",l);

}
else
{
for(i=k;i>=0;i--)
//cout<<a[i]<<" ";
printf("%d ",a[i]);
for(i=k+1;i<n;i++)
printf("%d ",a[i]);
printf("\n");
l=((a[k]-a[0])+(a[n-1]-a[0]))/m;
printf("平均寻道长度为:%d\n",l);
}
}
//以下为cscan算法实现调度
else
{
//cout<<"请输入开始的磁盘序列号:"<<endl;
printf("请输入开始的磁盘序列号:\n");
//cin>>begin;
// cout<<endl;
scanf("%d",&begin);
printf("\n");
for(i=0;i<n;i++)
{
if(a[i]==begin)
k=i;
}
//cout<<"请输入访问方向,其中1为增大方向,0为减小方向:"<<endl;
printf("请输入访问方向,其中1为增大方向,0为减小方向:\n");
//cin>>direct;
//cout<<endl;
scanf("%d",&direct);
printf("\n");
m=float(n)-1;
if(direct==1)
{
for(i=k;i<n;i++)
printf("%d ",a[i]);
for(i=0;i<k;i++)
printf("%d ",a[i]);
printf("\n");
l=((a[n-1]-a[k])+(a[n-1]-a[0])+(a[k-1]-a[0]))/m;
printf("平均寻道长度为:%d\n",l);
}
else
{
for(i=k;i>=0;i--)
printf("%d ",a[i]);
for(i=n-1;i>k;i--)
printf("%d ",a[i]);
printf("\n");
l=((a[k]-a[0])+(a[n-1]-a[0])+(a[n-1]-a[k+1]))/m;
printf("平均寻道长度为:%d\n",l);
}
}

}
黎普曼
2009-06-24 · TA获得超过4201个赞
知道小有建树答主
回答量:858
采纳率:0%
帮助的人:861万
展开全部
这不就是C++的代码吗,名字空间,输入输出函数,都是C++的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cdinten
2009-06-24 · TA获得超过6592个赞
知道大有可为答主
回答量:3562
采纳率:56%
帮助的人:1550万
展开全部
你是不是弄反了?本来就是C++的,你是想给改成C的吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式