#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#define NAMELENGTH 10   /* 英文姓名字数(中文至多五个字) */
#define HABITNO 20       /* 问卷中兴趣的总数+1 */
#define STARNO 13   /* 星座中文最多3个字 */ 
#define BLOODNO 5   /* 血型最多两个英文字 */ 
#define LIVELENGTH 6   /* 居住地字数设定 */ 
#define LIMIT 100        /* 参加男女的人数上限 */
#define MIN 1      /* 参加者至少可选到的朋友人数 */
#define MAX 12      /* 参加者至多可选到的朋友人数 */
void function1(int habit,int star,int blood,
int live);
static char name, habit; /* 姓名及兴趣 */
static char star;        /* 星座 */
static char blood;        /* 血型 */
static char live;        /* 居住地 */ 
static char gender;            /* 性别 */
static struct record {
 char name;          /* 姓名 */
 char habit;           /* 兴趣 */
 char star;          /* 星座 */ 
 char blood;         /* 血型 */ 
 char live;         /* 居住地 */ 
 int candidate_no;          /* 候选人数 */ 
 int candidate;         /* 候选人索引 */
} male, female;    /* 男女参加者基本资料 */
static int male_count=0, female_count=0; /* 计算男女参加人数 */
FILE *datafile;          /* 参加者资料存档 */
/* 输入资料 */
void input_raw_data()
{
 if ((datafile = fopen("datafile","r")) == NULL)
 {
  /* 如果档案不存在则新增 */
  datafile = fopen("datafile","w");
 }
 else
 {
  /* 档案已经存在则附加在后面 */
  datafile = fopen("datafile","a");
 }
 printf("Please input one record at a time.\n"); /* 提示 */
 printf("Name:");
 scanf("%s",name);
 printf("Gender(M or F):");
 scanf("%s",&gender);
 char cc;
 int i=0,j=1,num_elem;
 FILE *inptr;
 inptr=fopen ("INPUT.DAT","r");
 while(fscanf(inptr,"%c",&cc)!=EOF)i++;
 num_elem=i;
 for(j=0;j<num_elem;j++)
 {
   printf("%c",cc);
 }
 fclose(inptr);
 printf("Habit:%s",habit);
 scanf("%s",habit);
 char dd;
 int a=0,b=1,num_elem1;
 FILE *input;
 input=fopen ("INFILE.DAT","r");
 while(fscanf(input,"%c",&dd)!=EOF)a++;
 num_elem1=a;
 for(b=0;b<num_elem1;b++)
 {
  printf("%c",dd);
 }
 fclose(input); 
 printf("Star:"); /* 提示 */
 scanf("%s",star);/* 输入资料 */ 
 char ee;
 int c=0,d=1,num_elem2;
 FILE *in;
 in=fopen ("IN.DAT","r");
 while(fscanf(in,"%c",&ee)!=EOF)c++;
 num_elem2=c;
 for(d=0;d<num_elem2;d++)
 {
  printf("%c",ee);
 }
 fclose(in);
 printf("血型:");
 scanf("%s",blood); 
 printf("Name:%s Gender:%c Habit:%s Star:%s 血型:%s\n",name,gender,habit,star,blood);
 fprintf(datafile,"%s %c %s %s %s\n",name,gender,habit,star,blood); /* 写入档案 */
 fclose(datafile); /* 存档并关闭档案 */
}
/* 选择候选人 */
int friends_selection()
{
 /* 宣告与设定变数 */
 int score,        /* 分数表 */
  highest_score,  /* 分数表中, 最高分的配对组合的分数 */
  id,    /* 分数表中, 最高分的配对组合的男生索引 */
 ..
访客只能看到部份内容,免费 加入会员 或由脸书  Google 
 可以看到全部内容