gcd2.c

来自「稀疏矩阵、链表、图、队列、二叉树、多叉树、排序、遗传算法等的实现」· C语言 代码 · 共 45 行

C
45
字号
#include <stdlib.h>#include <stdio.h>int depth;intgcd(int x, int y) {start:	if (x < y) {		int tmp = x;		printf("x < y, setting x to y and y to x\n");		x = y;		y = tmp;		goto start;	} else if ((x % y) != 0) {		int tmp = x % y;		printf("remainder %d, setting x to y (%d) and y to (x %% y)\n",			x % y, y);		x = y;		y = tmp;		goto start;	} else {		printf("remainder 0, returning y (%d)\n", y);		return y;	}}intmain(void) {	int i, j;	printf("two numbers? ");	fflush(stdout);	if (scanf("%d %d", &i, &j) == 2) {		printf("calling gcd(%d, %d):\n", i, j);		gcd(i, j);	} else if (feof(stdin)) {		printf("\nbye-bye!\n");		return 0;	} else {		printf("\ninput confusing.  giving up.\n");		return 1;	}	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?