想问一问这样写是不是对的啊,有没有更好的求解方式

做了一个求最大公约数的题,但是不是很会,求大师教,就是想知道这个步骤是不是有问题,我运行不出来,又实在想不到其他办法了

img

}

z没有初始化,值是随机的,判断z!=0没意义。

附一个例子:

#include <stdio.h>

int main() {
    int num1, num2, i, gcd;

    printf("输入两个整数:");
    scanf("%d %d", &num1, &num2);

    for(i=1; i<=num1 && i<=num2; i++) {
        if(num1%i==0 && num2%i==0) {
            gcd = i;
        }
    }

    printf("最大公约数为 %d\n", gcd);

    return 0;
}