题目二:在屏幕上用“*”绘制一个空心圆
题目三:十个数据,范围1~100,求去掉最高值和最低值的平均值
/*
题目二:在屏幕上用“*”绘制一个空心圆
分析:圆形半径的平方等于x的平方+y的平方(勾股定理)
这里圆半径取10便于观察 ,求解x的坐标设为*
其余部分设为空格,这里2.5是屏幕的长宽比例,
即调节长宽比,使其正常显示,与之前的余弦函数题目很像
cmath中有π值:M_PI,当然也可以自己定义
题目三: 十个数据,范围1~100,求去掉最高分和最低分的平均值
分析:简单,随便写
CHAR_MIN char的最小值
SCHAR_MAX signed char 最大值
SCHAR_MIN signed char 最小值
UCHAR_MAX unsigned char 最大值
SHRT_MAX short 最大值
SHRT_MIN short 最小值
USHRT_MAX unsigned short 最大值
INT_MAX int 最大值
INT_MIN int 最小值
UINT_MAX unsigned int 最大值
UINT_MIN unsigned int 最小值
LONG_MAX long最大值
LONG_MIN long最小值
ULONG_MAX unsigned long 最大值
FLT_MANT_DIG float 类型的尾数
FLT_DIG float 类型的最少有效数字位数
FLT_MIN_10_EXP 带有全部有效数的float类型的负指数的最小值(以10为底)
FLT_MAX_10_EXP float类型的正指数的最大值(以10为底)
FLT_MIN 保留全部精度的float类型正数最小值
FLT_MAX float类型正数最大值
*/
#include<iostream>
#include<cmath>
using namespace std;
int main(){
//第二题
double y;
int x,sit;
for(y = 10;y >= -10;y--){
sit = 2.5*sqrt(100-y*y);
for(x = 1;x < 30-sit;x++){
cout<<" ";
}
cout<<"*";
for(;x < 30+sit;x++){
cout<<" ";
}
cout<<"*"<<endl;
}
//第三题
int max = INT_MAX,min = INT_MIN,total = 0,number;
int i,mid = 0;
cin>>number;
max = number;
min = number;
total = number;
mid = number;
for(i = 0;i < 9;i++){
cin>>number;
total += number;
if(number < mid){
min = number;
}
if(number > mid){
max = number;
}
mid = number;
}
//cout<<total<<min<<max<<endl;
double e = (total-min-max)/8.0;
cout<<e<<endl;
/*
第三题标准解法:
int a,i,max,min,sum = 0;
max = INT_MIN;
min = INT_MAX;
for(i = 0;i < 10;i++){
cin>>a;
sum += a;
if(a > max)max = a;
if(a < min)min = a;
}
double e = (sum-min-max)/8.0;
cout<<e<<endl;
*/
return 0;
}
这其中有不合适或者不正确的地方欢迎指正,我的QQ号码:2867221444(乔金明),谢谢,也可以相互交流下,备注信息随意,只要能看得出是开发者或者学习者即可。