目录
2、【作图题】编写一个程序,从外界获取四个数,返回这前两个数的和的平方根和后两个数平方根的和,必须包含函数(非main)的调用
3、【作图题】编写一个程序,从外界获取三个数,返回这前两个数的和的平方根和第三个数的乘积,必须包含函数(非main)的调用
4、【作图题】编写一个程序,从外界获取两个数,返回这两个数的和的平方根,必须包含函数(非main)的调用
5、【作图题】编写一个函数,从外界获取一个小数,返回该数整数部分的一半
6、【作图题】编写一个程序,用于求从外界输入的三个数的最小公倍数和最大公约数。
7、【作图题】编写一个程序,用于求从外界输入的两个数的最小公倍数和最大公约数。
8、【作图题】编写一个程序,用于生成平均值,数据从外界获取4个小数。
9、【作图题】编写程序,用于计算评委得分,5个评委的分数,去掉最高分和最低分,返回平均分。
10、【作图题】编写程序,从外界获取学生的5门科目成绩,返回平均值和最高分。
11、【作图题】编写程序,从外界获取两个实数,返回平均值的整数部分。
13、【作图题】编写程序,从外界获取两个整数,用于求四个数的最大值,必须有可调用的函数。
14、【作图题】编写程序,从外界获取两个整数,用于求三个数的最大值,必须有可调用的函数。
15、【作图题】编写程序,从外界获取两个整数,用于求两个数的最大值。
16、【作图题】编写一个程序,通过获取用户输入的数据来输出该数据是否是素数。
17、【作图题】求1-100之间的所有素数,并统计素数的个数。
18、【作图题】编程显示任意输入5个数字中的最大值,最小值,平均值。
1、【作图题】编写一个函数,返回1到200之间偶数的乘积
#include <iostream>
using namespace std;
int main()
{
// 注意:使用int类型会超出范围(int最大值:2147483647),所以这里选择使用double类型
double sum = 1;
for(int i=2;i<=200;i+=2)
{
sum*=i;
}
cout << "1 ~ 200偶数乘积=" << sum;
return 0;
}
2、【作图题】编写一个程序,从外界获取四个数,返回这前两个数的和的平方根和后两个数平方根的和,必须包含函数(非main)的调用
#include <iostream>
using namespace std;
double sum(double arr[])
{
double x,y;
x = ((arr[0]+arr[1]) / 2);
y = ((arr[2]+arr[3]) / 2);
return (x+y);
}
int main()
{
double arr[4];
for(int i=0;i<4;i++)
{
cin >> arr[i];
}
cout << "前两个数的和的平方根和后两个数平方根的和=" << sum(arr);
return 0;
}
3、【作图题】编写一个程序,从外界获取三个数,返回这前两个数的和的平方根和第三个数的乘积,必须包含函数(非main)的调用
#include <iostream>
using namespace std;
double sum(double arr[])
{
double x,y;
x = ((arr[0]+arr[1]) / 2);
y = (x * arr[2]);
return y;
}
int main()
{
double arr[3];
for(int i=0;i<3;i++)
{
cin >> arr[i];
}
cout << "前两个数的和的平方根和第三个数的乘积 =" << sum(arr) << endl;
return 0;
}
4、【作图题】编写一个程序,从外界获取两个数,返回这两个数的和的平方根,必须包含函数(非main)的调用
#include <iostream>
using namespace std;
double sum(double x, double y)
{
return (x+y)/2;
}
int main()
{
//【作图题】编写一个程序,从外界获取两个数,返回这两个数的和的平方根,必须包含函数(非main)的调用
double x,y;
cin >> x >> y;
cout << "两个数的和的平方根 =" << sum(x,y) << endl;
return 0;
}
5、【作图题】编写一个函数,从外界获取一个小数,返回该数整数部分的一半
#include <iostream>
using namespace std;
double halt(double x)
{
int y = (int)x;
double n = (double)y;
return (n/2);
}
int main()
{
double x;
cin >> x;
cout << "从外界获取一个小数,返回该数整数部分的一半=" << halt(x) << endl;
return 0;
}
6、【作图题】编写一个程序,用于求从外界输入的三个数的最小公倍数和最大公约数。
#include <iostream>
using namespace std;
//最大公约数(最大公因数定义: 指两个或多个整数共有约数中最大的一个)
int gys(int x,int y, int w, int m)
{
int gys = 1;
for (int i = m; i > 1; i--)
{
if (x%i==0 && y%i==0 && w%i==0)
{
gys=i;
break;
}
}
return gys;
}
int main()
{
//【作图题】编写一个程序,用于求从外界输入的三个数的最小公倍数和最大公约数。
int x = 12;
int y = 16;
int w = 18;
int m = ((x<y ? x:y) < w ? (x<y ? x:y) : w);
int max = gys(x,y,w,m); //最大公约数
int min = (x*y*w) / max; //最小公倍数(n个整数乘积 / 最大公倍数)
cout << "最大公约数(" << x << "," << y << "," << w << "," << ")=" << max << endl;
cout << "最小公倍数(" << x << "," << y << "," << w << "," << ")=" << min << endl;
return 0;
}
7、【作图题】编写一个程序,用于求从外界输入的两个数的最小公倍数和最大公约数。
#include <iostream>
using namespace std;
//最大公约数(最大公因数定义: 指两个或多个整数共有约数中最大的一个)
int gys(int x,int y, int m)
{
int gys = 1;
for (int i = m; i > 1; i--)
{
if (x%i==0 && y%i==0)
{
gys=i;
break;
}
}
return gys;
}
int main()
{
//【作图题】编写一个程序,用于求从外界输入的两个数的最小公倍数和最大公约数。
int x = 12;
int y = 16;
int m = (x>y?x:y);
int max = gys(x,y,m); //最大公约数
int min = (x*y) / max; //最小公倍数(n个整数乘积 / 最大公倍数)
cout << "最大公约数(" << x << "," << y << "," << ")=" << max << endl;
cout << "最小公倍数(" << x << "," << y << "," << ")=" << min << endl;
return 0;
}
8、【作图题】编写一个程序,用于生成平均值,数据从外界获取4个小数。
#include <iostream>
using namespace std;
// 求平均值
double avg(double avgs[], int arrayLength)
{
double sum = 0.00;
for(int i=0;i<=arrayLength;i++)
{
sum +=avgs[i];
}
return sum/arrayLength;
}
int main()
{
int len = 2;
double arr[len];
for(int i=0;i<len;i++)
{
cin >> arr[i];
}
cout << "平均值:" << avg(arr, len) << endl;
return 0;
}
9、【作图题】编写程序,用于计算评委得分,5个评委的分数,去掉最高分和最低分,返回平均分。
#include <iostream>
using namespace std;
// 求平均值
double avg(double avgs[], int arrayLength)
{
double max=avgs[0], min=avgs[0], sum;
for(int i=0;i<arrayLength;i++)
{
if(avgs[i] > max)
{
max = avgs[i];
}
if(avgs[i] < min)
{
min = avgs[i];
}
}
for(int j=0;j<arrayLength;j++)
{
double tem = avgs[j];
if(tem < max && tem > min)
{
sum +=avgs[j];
}
}
return (sum/(arrayLength-2));
}
int main()
{
//9、【作图题】编写程序,用于计算评委得分,5个评委的分数,去掉最高分和最低分,返回平均分。
int len = 5;
double arr[len];
for(int i=0;i<len;i++)
{
cin >> arr[i];
}
cout << "平均分:" << avg(arr, len) << endl;
return 0;
}
10、【作图题】编写程序,从外界获取学生的5门科目成绩,返回平均值和最高分。
#include <iostream>
using namespace std;
// 求平均值
double avg(double avgs[], int arrayLength)
{
double sum;
for(int i=0;i<arrayLength;i++)
{
sum +=avgs[i];
}
return (sum/arrayLength);
}
double max(double avgs[], int arrayLength)
{
double max =avgs[0];
for(int i=0;i<arrayLength;i++)
{
if(max < avgs[i])
{
max =avgs[i];
}
}
return max;
}
int main()
{
//【作图题】编写程序,从外界获取学生的5门科目成绩,返回平均值和最高分。
int len = 5;
double arr[len];
for(int i=0;i<len;i++)
{
cin >> arr[i];
}
cout << "平均分:" << avg(arr, len) << endl;
cout << "最高分:" << max(arr, len) << endl;
return 0;
}
11、【作图题】编写程序,从外界获取两个实数,返回平均值的整数部分。
#include <iostream>
using namespace std;
int main()
{
double x,y, avg;
cin >> x >> y;
avg = (x+y)/2;
int int_avg = (int)avg;
cout << "平均值整数部分:" << avg << endl;
return 0;
}
12、【作图题】求200-300之间的素数,并输出
#include <iostream>
using namespace std;
int main()
{
//所有的偶数都不是素数,所以在循环过程中可以只对奇数进行判定,由此可以进行一步提高效率
int i,j;
for(i=201;i<=300;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0) break; //能被整除所以不是素数直接跳出循环
}
if(j>=i)
{
cout << "200~300素数:" << i << endl;
}
}
return 0;
}
13、【作图题】编写程序,从外界获取两个整数,用于求四个数的最大值,必须有可调用的函数。
#include <iostream>
using namespace std;
int max(int arr[], int len)
{
int max = arr[0];
for(int i=0;i<len;i++)
{
if(arr[i] > max) max=arr[i];
}
return max;
}
int main()
{
//13、【作图题】编写程序,从外界获取两个整数,用于求四个数的最大值,必须有可调用的函数。
int len = 4;
int arr[len] = {111, 222};
for(int i=2;i<len;i++)
{
cin >> arr[i];
}
cout << "最大值:" << max(arr, len);
return 0;
}
14、【作图题】编写程序,从外界获取两个整数,用于求三个数的最大值,必须有可调用的函数。
#include <iostream>
using namespace std;
int max(int arr[], int len)
{
int max = arr[0];
for(int i=0;i<len;i++)
{
if(arr[i] > max) max=arr[i];
}
return max;
}
int main()
{
//14、【作图题】编写程序,从外界获取两个整数,用于求三个数的最大值,必须有可调用的函数。
int len = 3;
int arr[len] = {111};
for(int i=1;i<len;i++)
{
cin >> arr[i];
}
cout << "最大值:" << max(arr, len);
return 0;
}
15、【作图题】编写程序,从外界获取两个整数,用于求两个数的最大值。
#include <iostream>
using namespace std;
int max(int x, int y)
{
return x>y?x:y;
}
int main()
{
int x,y;
cin >> x >>y;
cout << "最大值:" << max(x, y);
return 0;
}
16、【作图题】编写一个程序,通过获取用户输入的数据来输出该数据是否是素数。
#include <iostream>
using namespace std;
int main()
{
//17、【作图题】编写一个程序,通过获取用户输入的数据来输出该数据是否是素数。
int i,x;
cin >> x;
for(i=2;i<x;i++)
{
if(x%i==0) break;
}
if(i>=x)
{
cout << "是素数:" << x << endl;
} else
{
cout << "不是素数:" << x << endl;
}
return 0;
}
18、【作图题】求1-100之间的所有素数,并统计素数的个数。
#include <iostream>
using namespace std;
int main()
{
//19、【作图题】求1-100之间的所有素数,并统计素数的个数。
int i,x,count=0;
for(i=1;i<100;i+=2)
{
for(x=2;x<i;x++)
{
if(i%x==0) break;
}
if(x>=i) count+=1;
}
cout << "素数个数:" << count;
return 0;
}
18、【作图题】编程显示任意输入5个数字中的最大值,最小值,平均值。
#include <iostream>
using namespace std;
int main()
{
//19、【作图题】编程显示任意输入5个数字中的最大值,最小值,平均值。
int len = 5;
double arr[len];
for(int i=0;i<len;i++)
{
cin >> arr[i];
}
double max=arr[0],min=arr[0],avg,count;
for(int j=0;j<len;j++)
{
if(arr[j] > max) max=arr[j];
if(arr[j] < min) min=arr[j];
count += arr[j];
}
avg = (count / len);
cout << "最大值:" << max << endl;
cout << "最小值:" << min << endl;
cout << "平均值:" << avg << endl;
return 0;
}
19、【作图题】每次期末考试后,如果成绩低于60分则有一次补考机会,如果补考低于60分的则需要重修,如果重修成绩低于60分的还需要重修,直到成绩大于等于60分为止。 如果平时有三次缺勤的则直接重修,或者有缺考的直接重修。 请编写一个程序来实现以上功能,通过不同的用户输入数据来输出结果。
#include <iostream>
using namespace std;
void qq_cx(double y)
{
if(y < 60)
{
cout << "重修没有通过,请输入重修成绩:" << endl;
cin >> y;
qq_cx(y);
} else
{
cout << "考试通过!" << endl;
}
}
int main()
{
int x;
double y;
cout << "请输入考生缺勤次数:" << endl;
cin >> x;
if(x >= 3)
{
cout << "你的缺勤次数过多,滚去重修!" << endl;
cout << "请输入重修成绩:" << endl;
cin >> y;
qq_cx(y);
}
else
{
cout << "请输入考生成绩:" << endl;
cin >> y;
if(y < 60)
{
cout << "考试没有通过,恭喜你获得一次补考机会!" << endl;
cout << "请输入补考成绩:"<<endl;
cin >> y;
if(y < 60)
{
qq_cx(y);
}
else
{
cout << "恭喜你考试通过!" << endl;
}
} else
{
cout << "恭喜你考试通过!" << endl;
}
}
return 0;
}