一、用函数实现求一元二次方程ax^2+bx+c=0的根,要求二次方程的系数a、b、c分别从键盘输入:
#include <iostream>
#include"math.h"
using namespace std;
int panduan(double, double, double);
void main(void)
{
double a, b, c;
double x1, x2;
double h;
cout << "请输入一元二次方程的三个系数:" << endl;
cin >> a >> b >> c;
h = panduan(a, b, c);
if (h < 0)
{
cout << "该方程没有实数根。" << endl;
}
if (h == 0)
{
cout << "该方程只有一个实数根为:" << -b / 2 / a << endl;
}
if (h > 0)
{
cout << "该方程有两个实数根分别为:" << (-b + sqrt(h)) / 2 / a << '\t' << (-b - sqrt(h)) / 2 / a << endl;
}
}
int panduan(double a, double b, double c)
{
double h;
h = b * b - 4 * a * c;
if (h < 0)
{
return 0;
}
if (h == 0)
{
return 1;
}
if (h > 0)
{
return 2;
}
}
编写程序求下面表达式的值:K=n!/(m!(n-m)!,n≥m:
#include <iostream>
using namespace std;
int jiecheng(int);
void main()
{
int n, m,k;
cout << "请输入n和m,并且n的值大于等于m:" << endl;
cin >> n >> m;
k = jiecheng(n)/jiecheng(m) / jiecheng(n - m);
cout << "K的值为:" << k << endl;
}
int jiecheng(int n)
{
int m=1;
for (; n > 0; n--)
{
m =m * n;
}
return m;
}
由键盘输入两个整数,用函数实现求两个数的最大公约数和最小公倍数:
#include<iostream>
using namespace std;
int max(int a, int b);
int min(int a, int b);
void main()
{
int a, b;
int mx;
int mn;
cout << "请输入两个整数:" << endl;
cin >> a >> b;
mx = max(a, b);
mn = min(a, b);
cout << "最大公约数为:" << mx << endl << "最小公倍数为:" << mn << endl;
}
int max(int a, int b)
{
int temp;
if (a < b)
{
temp = a;
a = b;
b = temp;
}
while(1)
{
if ((a % b) == 0)
{
return b;
break;
}
else
{
a = b;
b = a % b;
}
}
}
int min(int a, int b)
{
int x;
x = max(a, b);
x = a * b / x;
return x;
}
通过函数实现由键盘输入一个十六进制数,输出相应的十进制数:
#include<iostream>
using namespace std;
long int shuru(void);
void main()
{
long int a;
cout << "请输入一个十六进制数:" << endl;
a = shuru();
cout <<dec<<a << endl;
}
long int shuru(void)
{
long int a;
cin >> hex >> a;
return a;
}
采用冒泡排序法实现10个数据的排序
#include<iostream>
using namespace std;
void main()
{
double a[10];
int i;
int j;
int temp;
for (i = 0; i < 10; i++)
{
cin >> a[i];
}
for (i = 0; i < 10; i++)
{
for (j = 0; j < 9 - i; j++)
{
if (a[j] > a[j + 1])
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for (i = 0; i < 10; i++)
{
cout << a[i] << endl;
}
}
分别定义一个43和32的矩阵A和B,实现矩阵A和B的乘积:
#include <iostream>
using namespace std;
int main()
{
float x[4][3];
float y[3][2];
float z[4][2];
cout << "请输入一个四行三列的二维数组" << endl;
int i, j, k;
for (i = 0; i < 4; i++)
{
for (j = 0; j < 3; j++)
{
cin >> x[i][j];
}
}
cout << "请输入一个三行两列的二维数组" << endl;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 2; j++)
{
cin >> y[i][j];
}
}
for (i = 0; i < 4; i++)
{
for (j = 0; j < 2;j++)
{
for (k = 0; k < 3; k++)
{
z[i][j] += x[i][k] * y[k][j];
}
}
}
for (i = 0; i < 4; i++)
{
for (j = 0; j < 2; j++)
{
cout << z[i][j] << endl;
}
}
return 0;
}
一个学习小组有6人,共有5门课程,编程实现以下要求:
(1)求第一门课程的平均成绩。
(2)找出有一门课程以上不及格的学员,输出该学员的所有成绩和平均成绩。
(3)找出5门课程都在90分以上的学员以及平均成绩在95分以上的学员。
#include <iostream>
using namespace std;
int main()
{
int a[6][5];
cout << "请输入六个人五门课程的成绩:" << endl;
int i, j, k;
for (i = 0; i < 6; i++)
{
for (j = 0; j < 5; j++)
{
cin >> a[i][j];
}
}
int averge_frist;
int sum=0;
for (i = 0; i < 6; i++)
{
sum = sum + a[i][1];
}
averge_frist = sum / 6;
cout << "第一门课的平均成绩为:" << averge_frist << endl;
for (i = 0; i < 6; i++)
{
for (j = 0; j < 5; j++)
{
if (a[i][j] <60)
{
for (k = 0; k < 5; k++)
{
cout << "该学员的各科成绩分别为:" << a[i][k] << endl;
}
for (k = 0,sum=0; k < 5; k++)
{
sum = sum + a[i][k];
}
cout << "该学员的平均成绩为:" << sum / 5 << endl;
}
}
}
for (i = 0; i < 6; i++)
{
for (j = 0; j < 5; j++)
{
if (a[i][j] > 90)
{
if (j == 4)
{
switch (i)
{
case 0:
cout << "第一个同学5门课程都在90以上" << endl;
break;
case 1:
cout << "第二个同学5门课程都在90以上" << endl;
break;
case 2:
cout << "第三个同学5门课程都在90以上" << endl;
break;
case 3:
cout << "第四个同学5门课程都在90以上" << endl;
break;
case 4:
cout << "第五个同学5门课程都在90以上" << endl;
break;
}
}
else
{
if (i == 5)
{
cout << "没有同学5门课程都在90分以上!!!" << endl;
}
}
}
}
}
for (i = 0; i < 6; i++)
{
for (j = 0,sum=0; j < 5; j++)
{
sum = sum + a[i][j];
}
if (sum/5 > 95)
{
switch (i)
{
case 0:
cout << "第一个同学平均分在95以上" << endl;
break;
case 1:
cout << "第二个同学平均分在95以上" << endl;
break;
case 2:
cout << "第三个同学平均分在95以上" << endl;
break;
case 3:
cout << "第四个同学平均分在95以上" << endl;
break;
case 4:
cout << "第五个同学平均分在95以上" << endl;
break;
}
}
else
{
if (i == 4)
{
cout << "没有同学平均分在9分以上!!!"<<endl;
}
}
}
return 0;
}
转载:https://blog.csdn.net/weixin_51412231/article/details/109488179
查看评论