#include <iostream>
using namespace std;
/*
给你n个整数,求他们中所有奇数的乘积。
Input
输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数。
Output
输出每组数中的所有奇数的乘积,对于测试实例,输出一行。
Sample Input
3 1 2 3
4 2 3 4 5
Sample Output
3
15
*/
int main() {
int n; //先定义一个n用来接收每行有多少个数
int x[100]; //定义一个x数组,保险起见定义为100个数。
while (cin >> n) //定义一个while循环,接收n作为循环次数。(假设n = 4)
{
//定义一个for循环,i初始化为0,当i小于n时,i自加一
for (int i = 0; i < n; i++)
{
cin >> x[i]; //将n之后的每个数存入x数组中。
}
int y = 1; //定义一个y初始化为0,后面用来计算奇数的相乘。不能为0,因为0乘什么都是0
for (int i = 0; i < n; i++) //定义一个for循环,i初始化为1,当i小于n时,i自加一
{
if (x[i] % 2) //判断 x[i]的数组里的数 模2,判断是否等于 1 ,1等于真。
{
y *= x[i]; //将为真的数赋值给y,第一次循环等于 y = 1 * x[0],第二次开始等于 y = x[0] * x[1],第二次开始等于 y = x[1] * x[2],第二次开始等于 y = x[2] * x[3]
//乘积就是将所有数相乘。
}
}
cout << y << endl; //输出y计算出来的 乘积。
}
return 0;
}
7-习题-1.求奇数的乘积
来自
标签:
发表回复