c语言PTA浙大基础题
题目目录
实验1-1 Hello World!
实验1-2 Welcome to You!
实验1-3 Programming in C is fun!
实验1-4 输出三角形
实验1-5 输出菱形图案
实验1-6 输出带框文字
实验1-7 What is a computer?
实验1-8 输出倒三角图案
实验2-1-1 计算摄氏温度
实验2-1-2 温度转换
实验2-1-3 计算物体自由下落的距离
实验2-1-4 计算平均分
实验2-1-5 将x的平方赋值给y
实验1-1 Hello World!
本题要求编写程序,输出一个短句“Hello World!”。
输入格式:
本题目没有输入。
输出格式:
在一行中输出短句“Hello World!”。
#include<iostream>
#include<algorithm>
#include<math.h>
using namespace std;
int a[100010];
int n;
bool flag;
int p; //当前磁道位置
void Print()
{
cout << "+---------------------------------------+" << endl;
cout << "|\t>>> 算法清单 <<<\t\t|" << endl;
cout << "|\t1.先来先服务(FCFS)\t\t|" << endl << "|\t2.最短寻道时间优先(SSTF)\t|" << endl;
cout << "|\t3.电梯算法(SCAN)\t\t|" << endl<< "|\t4.循环扫描算法cscan\t\t|" << endl;
cout << "|\t0.退出\t\t\t\t|" << endl;
cout << "+---------------------------------------+" << endl;
}
void input()
{
int b=0;
cout<<"请输入磁道磁盘访问序列的数目:";
cin>>n;
cout<<"请选择磁道的移动方向(1.由里->外 2.由外->里)" ;
cin>>b;
if(b==1)
flag=true;
else
flag=false;
cout<<"请输入磁道开始位置:";
cin>>p;
cout<<"你需要输入"<<n<<"个磁道请求!"<<endl;
for( int i=0; i< n; i++ )
{
cout<<"请输入第"<<i<<"个磁道请求:";
cin>>a[i];
}
}
void FCFS()
{
input();
int sum=0;
float ave=0;
cout<<"FCFS(从磁道"<<p<<"处开始"<<endl;
cout<< "下一个被访问的磁道\t横跨磁道数\n";
if(flag)
{
for(int i=0;i<n;i++)
{
cout<<a[i]<<"\t\t\t"<<abs(a[i]-p)<<endl;
sum+=a[i];
p=a[i];
}
}
else
{
for(int i=n-1;i>=0;i--)
{
cout<<a[i]<<"\t\t\t"<<abs(a[i]-p)<<endl;
sum+=a[i];
p=a[i];
}
}
ave=sum/n;
cout<<"磁头移动道数 "<<sum<<endl;
cout<<"平均寻道长度 "<<ave<<endl;
}
void SSTF()
{
input(