t.c

来自「在VC6环境下开发」· C语言 代码 · 共 115 行

C
115
字号
#include <string.h> 
#include <stdio.h>
#include <stdlib.h> 
#include <windows.h>
#include <winbase.h>
#define MAXRECORD 100

int RandomSeed(char *zBuf){
	memset(zBuf, 0, 256);
	GetSystemTime((LPSYSTEMTIME)zBuf);
	return 0;
}

static int randomByte(){
	unsigned char t;
	static struct {
		unsigned char isInit;          /* True if initialized */
		unsigned char i, j;            /* State variables */
		unsigned char s[256];          /* State variables */
	} prng;

	if( !prng.isInit ){
		int i;
		char k[256];
		prng.j = 0;
		prng.i = 0;
		RandomSeed(k);
		for(i=0; i<256; i++){
			prng.s[i] = i;
		}
		for(i=0; i<256; i++){
			prng.j += prng.s[i] + k[i];
			t = prng.s[prng.j];
			prng.s[prng.j] = prng.s[i];
			prng.s[i] = t;
		}
		prng.isInit = 1;
  }

  /* Generate and return single random byte
  */
  prng.i++;
  t = prng.s[prng.i];
  prng.j += t;
  prng.s[prng.i] = prng.s[prng.j];
  prng.s[prng.j] = t;
  t += prng.s[prng.i];
  return prng.s[t];
}

/*
** Return N random bytes.
*/
void Randomness(int N, void *pBuf){
	unsigned char *zBuf = pBuf;
	while( N-- ){
		*(zBuf++) = randomByte();
	}
  
}

/*
INSERT INTO student VALUES(0000002,"bb","M",2,"computer");
*/
int insertText(char *pbuf,int n,FILE *fp){	
	
	long i;
	int rnd;
	strcpy(pbuf,"\0");
	strcat(pbuf,"CREATE TABLE student(sno integer,sname varchar(6),ssex varchar(6), age integer, dept varchar(10));\n");
	fprintf(fp,pbuf);
	for( i=0;i<n;i++){
		char zname[12];
		strcpy(pbuf,"\0");
		rnd = randomByte();
		ltoa(rnd,zname,10);		
		strcat(pbuf,"INSERT INTO student VALUES(");

		strcat(pbuf,zname);
		strcat(pbuf,",");

		strcat(pbuf,"\'A");		
		strcat(pbuf,zname);
		strcat(pbuf,"\',");

		strcat(pbuf,"\'M\',");
		
		rnd = randomByte();
		ltoa(rnd,zname,10);

		ltoa(rnd,zname,10);
		strcat(pbuf,zname);
		strcat(pbuf,",");

		strcat(pbuf,"\'computer\');\r\n");	
		fprintf(fp,pbuf);
	}
	return 0;
}
void main(){
	int n;
	char *pbuf;
	FILE *fp;
	printf("please intput the numbers of record: ");
	scanf("%d",&n);
	fp=fopen("sql.txt","wt");
	pbuf = malloc(1000);
	insertText(pbuf,n,fp);
	fprintf(fp,pbuf);	
	fflush(fp);
	fclose(fp);
	free(pbuf);
	printf("\n record done!\n");
	
}

⌨️ 快捷键说明

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