7-习题-1.求奇数的乘积

#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;
}

已发布

分类

来自

标签:

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注