编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:求出两个非零正整数的最大公约数(
时间: 2023-03-29 08:04:07 浏览: 202
好的,这是一个关于编程的问题。函数fun可以使用辗转相除法来求出两个非零正整数的最大公约数。以下是函数fun的代码:
int fun(int a, int b) {
int r;
while (b != ) {
r = a % b;
a = b;
b = r;
}
return a;
}
在主函数中,可以调用函数fun来求出两个数的最大公约数。例如,如果要求出 24 和 36 的最大公约数,可以这样写:
int main() {
int a = 24, b = 36;
int gcd = fun(a, b);
printf("The gcd of %d and %d is %d\n", a, b, gcd);
return ;
}
输出结果为:
The gcd of 24 and 36 is 12
希望这个回答能够帮到你!
相关问题
c语言编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:计算正整数 num的各位上的数字之积
好的,下面是你所要求的C语言代码:
```c
#include <stdio.h>
int fun(int num) {
int product = 1;
while (num > 0) {
int digit = num % 10;
product *= digit;
num /= 10;
}
return product;
}
int main() {
int num;
printf("请输入一个正整数:");
scanf("%d", &num);
int result = fun(num);
printf("数字各位上的数字之积为:%d\n", result);
return 0;
}
```
在这段代码中,我们首先定义了一个函数`fun`,该函数接受一个正整数`num`作为参数。在函数内部,我们使用循环从`num`的个位开始逐位取出数字,并将其乘积保存在变量`product`中。
然后,在`main`函数中,我们首先读取用户输入的正整数存储在变量`num`中,然后调用函数`fun`计算各位数字之积,并将结果打印输出。
注意,以上代码仅计算正整数各位数字之积,不考虑负数或小数的情况。
编写一个函数fun,然后设计主函数调用函数fun,函数fun的功能是,计算正整数num的各位上的数字之积
好的,我可以回答这个问题。以下是函数fun的代码:
```c
#include <stdio.h>
int fun(int num) {
int product = 1;
while (num > ) {
int digit = num % 10;
if (digit != ) {
product *= digit;
}
num /= 10;
}
return product;
}
int main() {
int num;
printf("请输入一个正整数:");
scanf("%d", &num);
int result = fun(num);
printf("%d的各位数字之积为:%d\n", num, result);
return ;
}
```
主函数调用函数fun,输入一个正整数num,然后输出num的各位数字之积。如果num的某一位为,则不计入积中。