xdecchk.c

来自「适合大型数值计算代码 现在网络上已经找不到了 购买需要20$」· C语言 代码 · 共 60 行

C
60
字号
/* Driver for routine decchk */#include <stdio.h>#define NRANSI#include "nr.h"#define MAXLINE 128int main(void){	int j,k,l,n,nbad=0,ntot=0;	int iok,jok;	char lin[MAXLINE+2],ch,chh;	/* test all jump transpositions of the form 86jlk41 */	lin[0]='8';	lin[1]='6';	lin[5]='4';	lin[6]='1';	for (j=48;j<=57;j++) {		for (k=48;k<=57;k++) {			for (l=48;l<=57;l++) {				lin[3]=l;				if (j != k) {					ntot++;					lin[2]=j;					lin[4]=k;					iok=decchk(lin,7,&ch);					lin[7]=ch;					iok=decchk(lin,8,&chh);					lin[2]=k;					lin[4]=j;					jok=decchk(lin,8,&chh);					if (!iok || jok) nbad++;				}			}		}	}	printf("%s %14s %3d\n","Total tries:"," ",ntot);	printf("%s %16s %3d\n","Bad tries:"," ",nbad);	printf("%s %11s %4.2f\n","Fraction good:"," ",((float)(ntot-nbad))/ntot);	for (;;) {		printf("enter string terminated by x:\n");		if (gets(lin) == NULL) break;		for (j=0;j<MAXLINE;j++)			if (lin[j] == 'x') break;		n=j;		if (!n) break;		iok=decchk(lin,n,&ch);		lin[n]=ch;		jok=decchk(lin,n+1,&chh);		lin[n+1]=0;		printf("%s checks as %c\n",lin,jok ? 'T' : 'F');	}	printf("Normal completion\n");	return 0;}#undef NRANSI

⌨️ 快捷键说明

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