#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 
 可以看到全部內容