cout-怎样将随机输出的数经过简单计算再通过switch输出来

问题描述

怎样将随机输出的数经过简单计算再通过switch输出来

for(num=0;num<=9;num++){
ZBx=rand()%40;
ZBy=rand()%40;
a[ZBx][ZBy]='*';
Dis=sqrt((ZBx-20)*(ZBx-20)+(ZBy-20)*(ZBy-20));
sum+=Dis;
ave=sum/10.0;
switch(ave)
{
case ave>=9 && ave<=10:cout<<"A";break;
case ave>=8 && ave<=9:cout<<"B";break;
case ave>=7 && ave<=8:cout<<"C";;break;
case ave>=6 && ave<=7:cout<<"D";;break;
case ave>=0 && ave<=6:cout<<"E";;break;
}

解决方案

可以利用case标签的贯通性:

 case 10:
case 9:
    cout<<"A";break;
case 8:
case 7:
  cout<<"B";break;
...
default:
 cout<<"E";;break;

解决方案二:

浮点数?没看清,那就只能用if了。

解决方案三:

或者你加一个
aveint=sum/10;
然后 switch (aveint)

解决方案四:

取整啊

 int ave=(int)ceil(sum/10.0);
switch(ave)
{
case 10:cout<<"A";break;
case 9 :cout<<"B";break;
case 8 :cout<<"C";;break;
case 7 :cout<<"D";;break;
default:cout<<"E";;break;
}

解决方案五:

switch不支持这样的值区间的,只能是固定的值。如case 9:。。。。。 还是老老实实用if (){}else if(){}吧、

解决方案六:

浮点数。。。用不了case

时间: 2024-09-19 14:59:27

cout-怎样将随机输出的数经过简单计算再通过switch输出来的相关文章

c++-输入10个整数,按每行3个数输出这些数,最后输出10个整数的平均值

问题描述 输入10个整数,按每行3个数输出这些数,最后输出10个整数的平均值 输入10个整数,按每行3个数输出这些数,最后输出10个整数的平均值.下面图是我的过程,求教,我该如何改呢#includeusing namespace std;void input(int a[], int n) { for (int i = 0; i < n; i++)cin >>a[i];}void output(int a[], int n) { for (int i = 0; i < n; i++

2014秋C++第10周项目5参考-输出完数

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.   [项目5:输出完数](课本p86第20题)一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3,再如8的因子和是7(即1+2+4),8不是完数.编程找出1000以内的所有完数.提示:首先从2到1000构造循环控制变量为i的外层循环.每次循环中,利用内

C++程序设计实践学材系列(19)——1.4.2 输出两数中大值程序的其他写法

回到系列文章的目录--[系列文章目录] 回到本章目录--[第1章目录] 1.4.2 输出两数中大值程序的其他写法 例1.4 输入两个整数,求这两数中的大者并输出采取的思路是: 输入a.b的值 根据a.b的大小关系,为m赋值其中的大者 输出m的值 还可以写出下面的程序: //例程ch1-7.cpp #include <iostream> using namespace std; int main( ) { int a,b; cout<<"请输入a.b的值:"; c

return-怎么样才可以把输出的数排序

问题描述 怎么样才可以把输出的数排序 #include#includeint main(){ int aic; i=1; while(i<=10) { a=i*i; c=i*i*i; i=i+1; printf(""%dn""a); printf(""%dn""c); } return 0;} 解决方案 最简单的方法就是冒泡排序 解决方案二: 把数字放到数组中,最简单的冒泡,好点的快速排序http://blog.csdn

算法:随机生成25个元素的数组,再从里面随机取出5个不同的数(50分)

问题描述 算法:随机生成25个元素的数组,再从里面随机取出5个不同的数 解决方案 解决方案二:staticvoidRand(){Randoma=newRandom();List<Int32>lista=newList<Int32>();for(Int32i=0;i<25;i++){lista.Add(a.Next());}List<Int32>listb=newList<Int32>();for(Int32j=0;j<5;j++){Int32iT

c++-输入10个整数,按每行3个整数输出这些数,最后输出10个整数的平均值?写出调试过程

问题描述 输入10个整数,按每行3个整数输出这些数,最后输出10个整数的平均值?写出调试过程 整数,按每行3个整数输出这些数,最后输出10个整数的平均值?写出调试过过程.最好在下面这个图上改 解决方案 解决方案二: 你的n没有给值啊,不是要求10么.const int n = 10; 解决方案三: 输入10个整数

javascript实现数组中的内容随机输出_javascript技巧

有时候我们可能需要从数组中随机抽出一项内容,下面就通过一段代码实例介绍一下如何实现此效果. 代码如下: <script type="text/JavaScript"> var theArray=new Array(); theArray[0]=""; theArray[1]="一"; theArray[2]="二"; theArray[3]="三"; theArray[4]="四&qu

c++-十进制数转为二进制,再将二进制反转,在转换为十进制

问题描述 十进制数转为二进制,再将二进制反转,在转换为十进制 #include using namespace std; void ReverseArr(int n) { int m=n; int x,count; int i=0; char a[20],b[20]; for(int a1=0;a1 { a[i]=0; b[i]=0; } if(m return; if(m>=0) { while(m!=0) { x=m%2; m=m/2; a[i]=x; i++; } } count =i;

用C语言将一个数开根号后再取倒数的方法

在上学的时候,曾经看过有人写过这样的算法,就是将一个数开根号后再取倒数的算法,我本人也觉得十分巧妙,于是就将它积累了下来,让我们来看看是怎么回事: #include <stdio.h> #include <stdlib.h> float mysqrt(float x) { float xhalf = 0.5f * x; int i = *(int *)&x; i = 0x5f3759df - (i>>1); x = *(float *)&i; x = x