第一题
#include <stdio.h>
#include<string>
int main(void)
{
float a, b = 0;
do
{
printf("Enter a number:");
scanf_s("%f", &a);
b = (a > b)? a:b;
} while (a > 0);
printf("The lagest number entered was %f\n", b);
system("pause");
return 0;
}
第二题
方法一
辗转相除法(又名欧几里德法)
设两数为a,b设其中a 做被除数,b做除数,temp为余数
1、大数放a中、小数放b中;
2、求a/b的余数;
3、若temp=0则b为最大公约数;
4、如果temp!=0则把b的值给a、temp的值给a;
#include <stdio.h>
#include<string>
int main(void)
{
int a, b, temp = 1,c;
printf("Enter two numbers:");
scanf_s("%d %d", &a, &b);
if (b > a)
{
c = b;
b = a;
a = c;
}
while (temp != 0)
{
temp = a%b;
if (temp == 0)
printf("GREATEST COMMON DIVISOR:%d\n", b);
else
{
a = b;
b = temp;
}
}
system(&