问题及代码:
/*
*copyright (c) 2014,烟台大学计算机学院
*all rights reserved.
*文 件 名 : 求N组数的最大公约数.cpp
*作 者 :白云飞
*完成日期 :2014年11月14号
*版 本 号 :v1.0
*
*问题描述 :求N组数的最大公约数
*输入描述 :输入一个正整数N,代表组数。输入两个整数,用于求两个数的最大公约数。
*程序输出 :输出N组数中的各组数中的最大公约数
*/
#include <iostream>
using namespace std;
int gcd(int ,int );//自定义函数
int main()
{
int a,b,g,i,n;//声明变量
cin >>n;
for (i=1; i<=n; i++)//循环语句
{
cin >>a>>b;
g=gcd(a,b );
cout <<g<<endl ;//输出结果
}
return 0;
}
int gcd (int a,int b)//调用自定义函数
{
int c;
while (b!=0)//循环语句
{
c=a%b;
a=b;
b=c;
}
return a;//返回a的值
}
运行结果:
知识点总结:
在main函数中,用for语句实现N组数的计算。自定义函数gcd计算两组数的最大公约数。
学习心得:
以前写过关于计算两组数的最大公约数的代码,所以重点在于N组数的循环,所以想到了万能的for语句。