#include<stdio.h>
#include<stdlib.h>
typedef struct loupan {
int dong;
int danyuan;
int room;
enum {东=1,南=2,西=3,北=4,东南=5,东北=6,西南=7,西北=8}orientation;
enum {复式=1,平层=2,错层=3,跃层}type;
double square;
enum{no=0,yes=1}sale;
double unitprice;
double all;
}loupan;
FILE* fp;
loupan fang[1000] = { 0 };
void addin() {
fp = fopen("D:\\qsy.dat", "w+");
int i;
for (i = 0;; i++) {
scanf_s("%d", &fang[i].dong);
if (fang[i].dong == 0) break;
fprintf(fp, "%d ", fang[i].dong);
scanf_s("%d%d ",&fang[i].danyuan, &fang[i].room);
scanf_s("%d%d", &fang[i].orientation,&fang[i].type);
scanf_s("%lf%d%lf", &fang[i].square,&fang[i].sale,&fang[i].unitprice);
fang[i].all = fang[i].unitprice * fang[i].square;
fprintf(fp, "%d %d %d %d %lf %d %lf %lf\n", fang[i].danyuan, fang[i].room, fang[i].orientation, fang[i].type, fang[i].square, fang[i].sale, fang[i].unitprice,fang[i].all);
}
fclose(fp);
}
void displyout() {
fp = fopen("D:\\qsy.dat", "w+");
int i=0;
while (!feof(fp)) {
fscanf_s(fp,"%d %d %d %d %d %lf %d %lf %lf\n",&fang[i].dong,&fang[i].danyuan, &fang[i].room, &fang[i].orientation, &fang[i].type, &fang[i].square, &fang[i].sale, &fang[i].unitprice,&fang[i].all);
printf("栋:%d 单元:%d 房间:%d ", fang[i].dong, fang[i].danyuan, fang[i].room);
switch (fang[i].orientation) {
case 1:printf("朝向:东 "); break;
case 2:printf("朝向:南 "); break;
case 3:printf("朝向:西 "); break;
case 4:printf("朝向:北 "); break;
case 5:printf("朝向:东南 "); break;
case 6:printf("朝向:东方 "); break;
case 7:printf("朝向:西南 "); break;
case 8:printf("朝向:西北 "); break;
}
switch (fang[i].type) {
case 1:printf("户型:复式 "); break;
case 2:printf("户型:平层 "); break;
case 3:printf("户型:错层 "); break;
case 4:printf("户型:跃层 "); break;
}
printf("面积:%lf ", fang[i].square);
switch (fang[i].sale) {
case 1:printf("是否已销售:yes "); break;
case 2:printf("是否已销售:no "); break;
}
fang[i].all = fang[i].unitprice * fang[i].square;
printf("单价:%lf 总额:%lf\n", fang[i].unitprice,fang[i].all);
i++;
}
fclose(fp);
}
void main(){
addin();
displyout();