
某个打印机根据打印队列执行打印任务,打印任务有9个优先级,用1-9表示,数字越大优先级越高,打印机每次从列队头部取出第一个任务A,然后检查队列余下任务中有没有比A优先级更高的任务,若有,则将任务A放回列队尾部,否则执行A的打印,请编写程序,根据输入打印队列,输出实际打印顺序。
输入描述:
输入一行,为每个任务优先级,优先级之间用逗号隔开
输出描述:
输出每个任务打印顺序,从0开始,用逗号隔开
示例:
解答:
算法程序:
#include<stdioh>
void main(){
int a,b;
printf("input a,b: (a>b)\n");
scanf("%d,%d",&a,&b);
if(a%b==0)
printf("OK\n");
else
printf("FALSE\n");
}
#include<stdioh>
main()
{
int n=4;
int a =0;
int max = 0; int min = 0;
scanf("%d", &a);
max = min = a;
while(n>0)
{
if(a> max)
{
max = a;
}
if(a < min)
{
min = a;
}
scanf("%d", &a);
n--;
}
printf("max:%d, min:%d\n",max,min);
}
原理就是运用冒泡算法,两两比较,把所有的比较完,得出最大和最小值。
这个应该用起泡法排序算法。
#include<stdioh>
int main(){
int a[10];int i,j,k;
printf("input 10 numbers:\n");
for(i=0;i<10;i++){//输入十个数,一次循环输入10次
scanf("%d",&a[i]);
printf("\n");//换行
for(j=0;j<9;j++)//从小到大换行经典方法四行
for(i=0;i<9;i++)
if(a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
printf(”the sorted numbers:\n”);
for(i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
}
}
结果演示:
以上就是关于算法题:编写程序,输入打印队列,按优先级输出实际打印顺序全部的内容,包括:算法题:编写程序,输入打印队列,按优先级输出实际打印顺序、输入两个整数a,b(a>b),判断a能否被b整除,试写出该问题的算法程序、C语言编程序:输入a,b,c,d四个整数,求最小值,最大值。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)