getword.c

来自「<B>Digital的Unix操作系统VAX 4.2源码</B>」· C语言 代码 · 共 56 行

C
56
字号
# include	"hangman.h"# if pdp11#	define	RN	(((off_t) rand() << 16) | (off_t) rand())# else#	define	RN	rand()# endif/* * getword: *	Get a valid word out of the dictionary file */getword(){	register FILE		*inf;	register char		*wp, *gp;	inf = Dict;	for (;;) {		fseek(inf, abs(RN % Dict_size), 0);		if (fgets(Word, BUFSIZ, inf) == NULL)			continue;		if (fgets(Word, BUFSIZ, inf) == NULL)			continue;		Word[strlen(Word) - 1] = '\0';		if (strlen(Word) < MINLEN)			continue;		for (wp = Word; *wp; wp++)			if (!islower(*wp))				goto cont;		break;cont:		;	}	gp = Known;	wp = Word;	while (*wp) {		*gp++ = '-';		wp++;	}	*gp = '\0';}/* * abs: *	Return the absolute value of an integer */off_tabs(i)off_t	i;{	if (i < 0)		return -(off_t) i;	else		return (off_t) i;}

⌨️ 快捷键说明

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