物業(yè)管理系統(tǒng)C語言
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
#include<windows.h>
#include<time.h>
#include<malloc.h>?
//以上包含必須的頭文件
typedef struct people
{?
char name[10]; //姓名
char sex[10];? //性別
char IDnumber[20];//身份證號
char phone[15];? ?// 手機號
int building; //樓號
int roomID;? ?//房號
float roomarea;? //住房面積
float areamoney; //每平方米物業(yè)費
int owemoney;? //拖欠的物業(yè)費的月數(shù)
}people;? //定義別名people
void MM_pass();//密碼判定函數(shù)
void UI_show();//進入界面 UI 實現(xiàn)
void NEW_in(); //新用戶信息添加
void OLD_adjust();//修改住戶信息的功能
void OLD_delete(); //刪除住戶信息的功能
void OLD_putmoney();//繳費功能,計算住戶的物業(yè)費
void OLD_showmoney();//排序功能,按拖欠款項多少,對所有用戶信息進
int NEW_oj();//判斷文件是否為空
void EXIT();// 退出
void UI_show1();
void UI_show2();
void UI_show3();
void UI_show4();
void UI_show5();
int main()
{
system("mode con cols=80 lines=25");//設(shè)置窗口大小? cols 行??
system("color D7");//設(shè)置顏色
int pan, p;
MM_pass();// 調(diào)用 密碼程序 輸入3次密碼錯誤 程序鎖定
while (1)
{
p = NEW_oj();//判斷用戶文件是否為空
if (p == 0)
{
printf("\n\n查詢文件中未存在用戶信息,請先進行用戶信息錄入??!!");
printf("\n請按回車鍵,進入用戶信息添加系統(tǒng).....");
getchar();
NEW_in();
}
system("cls");? //清屏
UI_show();? ? //調(diào)用 界面UI 顯示
scanf("%d", &pan);
switch (pan)
{
case 1:NEW_in(); break;//新用戶信息添加
case 2:OLD_adjust(); break;//修改住戶信息的功能
case 3:OLD_delete(); break;//刪除住戶信息的功能
case 4:OLD_putmoney(); break;//繳費功能,計算住戶的物業(yè)費
case 5:OLD_showmoney(); break;//排序功能,按拖欠款項多少,對所有用戶信息進行排序
case 6:EXIT(); break;//退出
default:printf("\n\t\t\t輸入錯誤! 按回車鍵返回重新選擇");//按鍵錯誤反饋
}
getchar();
getchar();
system("cls");//清屏
}
system("pause");
return 0;
}
//================================================================================
int NEW_oj()//判斷文件是否為空
{
FILE *fp;
fp = fopen("output.xls", " r");
if (fp == NULL)
{
fp = fopen("output.xls", " w");
}
if (fgetc(fp) == EOF)
{
fclose(fp);
return 0;
}
else
{
//這里有bug?
return 1;
fclose(fp);
}
}
//=======================================================================
//進入界面 UI 實現(xiàn)
void UI_show()
{
int i, j;
//--------------------------------------------------------------------
printf("\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
for (i = 0; i < 30; i++)
{
printf(" ");
}
printf("歡迎進入物業(yè)費管理系統(tǒng)");
for (i = 0; i < 30; i++)
{
printf(" ");
}
printf("\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
//實現(xiàn)上方歡迎界面
//--------------------------------------------------------------------
printf("\n\n\n");
for (i = 0; i < 33; i++)? ? ? ? ? ? ? ? ? ? ? ? ? //以下實現(xiàn)? 菜單界面功能選擇
{
printf(" ");
}
printf("請選擇以下功能:\n");
for (i = 0; i < 33; i++)
{
printf(" ");
}
printf("1、添加新住戶信息\n");
for (i = 0; i < 33; i++)
{
printf(" ");
}
printf("2、修改舊住戶信息\n");
for (i = 0; i < 33; i++)
{
printf(" ");
}
printf("3、刪除住戶信息\n");
for (i = 0; i < 33; i++)
{
printf(" ");
}
printf("4、繳費功能\n");
for (i = 0; i < 33; i++)
{
printf(" ");
}
printf("5、排序功能\n");
for (i = 0; i < 33; i++)
{
printf(" ");
}
printf("6、退出系統(tǒng)\n");
printf("\n\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n\n");
for (i = 0; i < 33; i++)
{
printf(" ");
}
printf("請選擇:");
//實現(xiàn)界面UI
}
//=======================================================================
//密碼判定函數(shù)
void MM_pass()
{
//首先進行用戶名判斷,當存在此用戶名后 再進行與該用戶名 匹配的密碼 判斷 。當密碼輸入3次錯誤時 退出程序
int count = 0, a, i;
char MM[10] = { "passkey" }, MI[10]; //密碼存放
char UW[10] = { "hello" }, UU[10]; //用戶名存放
? ?//-------------------------------------------------------------
for (i = 0; i<8; i++)? ? ? ? ? ? ? ? ? ? //UI歡迎界面
{
printf("\n");
}
for (i = 0; i<30; i++)
{
printf(" ");
}
printf("歡迎進入物業(yè)管理系統(tǒng)\n");
//-------------------------------------------------------------------------------
while (1) //進入循環(huán) //判斷用戶名是否存在
{
for (i = 0; i<30; i++)
{
printf(" ");
}
printf("請輸入用戶名:");? //提示輸入用戶名
gets(UU);? ? ? ?//鍵盤得到 用戶名
if (strcmp(UW, UU) == 0)? ? //如果用戶名存在 則判斷密碼是否正確
{
for (i = 0; i<30; i++)
{
printf(" ");
}
printf("請輸入密碼:");
for (count = 0; count<3; count++)? ?//判斷密碼是否正確
{
gets(MI);
a = strcmp(MM, MI);
if (a == 0)? ? ? ? ? ? ? ? ? ? // 如果比對 成功
{
system("cls");
return;? ? ? ? ? ? ? ? ?//返回值,結(jié)束此函數(shù)
}
if (count == 0 || count == 1) //比對不成功
{
for (i = 0; i<30; i++)
{
printf(" ");
}
printf("請輸入密碼:"); //提示重新輸入密碼
}
}
//由于執(zhí)行過count++ 則count為3
if (count >= 3)? ? ? ? ? ? ? ? ? ? //密碼輸錯3次 程序鎖定 錯誤判定
{
for (i = 0; i<25; i++)
{
printf(" ");
}
printf("密碼3輸入錯誤,程序鎖定,退出重試。\n");
getchar();
exit(0);
}
}
else
{
for (i = 0; i<30; i++)
{
printf(" ");
}
printf("查無此用戶!\n");
}
}
}
//=======================================================================
//新用戶信息添加? 1、
void NEW_in()
{
FILE *fp = NULL; //定義文件指針? ?C:\Users\Administrator\Desktop
fp = fopen("output.xls", "a");//以追加的方式打開 文件
if (fp == NULL)
{
printf("\n出現(xiàn)未知錯誤!按任意鍵退出.....\n");
exit(0);
}
int build, room, ownmonth;
float? area, money;
char numcn[10], numcs[12], id[22], phone[15];
char ch;
system("cls"); //清屏
UI_show1();? // 界面顯示
while (1)? ? ?//進入循環(huán)體,直到接收到用戶 跳出循環(huán)
{
printf("請輸入姓名:");
scanf("%s", numcn);
printf("請輸入性別:");
scanf("%s", numcs);
printf("請輸入身份證號:");
scanf("%s", id);
printf("請輸入聯(lián)系電話:");
scanf("%s", phone);
printf("請輸入樓號:");
scanf("%d", &build);
printf("請輸入房號:");
scanf("%d", &room);
printf("請輸入住房面積:");
scanf("%f", &area);
printf("請輸入每平方米物業(yè)費:");
scanf("%f", &money);
printf("請輸入用戶本月之前所拖欠物業(yè)費的月份(0代表不拖欠):");
scanf("%d", &ownmonth);
//緩沖區(qū)保存到文件
fprintf(fp, "%s\t%s\t%s\t%s\t%d\t%d\t%f\t%f\t%d\n", numcn, numcs, id, phone, build, room, area, money, ownmonth);
do? ? ? ? ? ?// 接收字符 判斷是否 繼續(xù)錄入用戶信息
{
printf("是否繼續(xù)錄入?請選擇(Y/N)");
getchar();? ?//接收 回車鍵
scanf("%c", &ch);
} while ((ch != 'Y') && (ch != 'y') && (ch != 'n') && (ch != 'N'));
if ((ch == 'n') || (ch == 'N'))
{
fclose(fp);? //如果用戶 輸入N 則保存 并退出程序
break;
}
}
}
//=========================================================================
void OLD_adjust() ? ?//修改住戶信息的功能 2、
? ?//? ? 先將硬盤文件中數(shù)據(jù) 保存到 內(nèi)存緩沖區(qū)中,找到要修改的用戶信息,修改后 重新寫入文檔
{
system("cls");? ? ? ? //清屏
people peopleI[10000];//建立結(jié)構(gòu)體 數(shù)組
int number = 0, sign = 0, i = 1, a, test;
char name[10], ch;
FILE *fp = NULL;? //文件指針
UI_show2();? ? ? ?//UI調(diào)用
fp = fopen("output.xls", "r+");? ? ?//以讀寫的方式打開文件
if (fp == NULL)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // 錯誤檢測
{
printf("文件打開失?。≌埾忍砑佑脩粜畔?!\n");
return;
// exit(0);
}
printf("請輸入要修改的住戶姓名:");
scanf("%s", name);
while (!feof(fp))? //從文件中讀取
{
fscanf(fp, "%s%s%s%s%d%d%f%f%d", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, &peopleI[i].building, &peopleI[i].roomID, &peopleI[i].roomarea, &peopleI[i].areamoney, &peopleI[i].owemoney);
// fread(&peopleI[i],sizeof(struct people),1,fp);
//數(shù)據(jù)每次? 讀取一行
i++;? ? ?//記錄行的個數(shù)
}
///-----------------------------------
//printf("%f\n", peopleI[1].owemoney);
printf("\n");
i--;
test = i;? //保存 數(shù)據(jù)的行數(shù)
for (; i >= 0; i--)
{
a = strcmp(name, peopleI[i].name);? //比較 輸入的用戶名? 和文件中的用戶名
if (a == 0)
{
sign = 1;? //判斷 賦值1? 代表找到 該數(shù)據(jù)
printf("姓名%s,性別%s,身份證號%s,聯(lián)系方式%s,樓號%d,房號%d,住房面積%f,每平物業(yè)費%f\n拖欠的物業(yè)費的月數(shù)%d\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
do? ?// 友情提示 選擇
{
printf("你確定要修改該用戶的信息嗎?(Y/N):");
getchar();
scanf("%c", &ch);
} while ((ch != 'Y') && (ch != 'y') && (ch != 'n') && (ch != 'N'));
if ((ch == 'y') || (ch == 'Y'))? //如果 選y則 錄入信息
{
printf("請輸入姓名:");
scanf("%s", &peopleI[i].name);
printf("請輸入性別:");
scanf("%s", &peopleI[i].sex);
printf("請輸入身份證號:");
scanf("%s", &peopleI[i].IDnumber);
printf("請輸入聯(lián)系電話:");
scanf("%s", &peopleI[i].phone);
printf("請輸入樓號:");
scanf("%d", &peopleI[i].building);
printf("請輸入房號:");
scanf("%d", &peopleI[i].roomID);
printf("請輸入住房面積:");
scanf("%f", &peopleI[i].roomarea);
printf("請輸入每平方米物業(yè)費:");
scanf("%f", &peopleI[i].areamoney);
printf("請輸入用戶本月之前所拖欠物業(yè)費的月份(0代表不拖欠):");
scanf("%d", &peopleI[i].owemoney);
printf("修改成功!");
fclose(fp);? //關(guān)閉文件
fp = fopen("output.xls", "w");
for (i = 1; i < test; i++) //將內(nèi)存中 修改過的信息 重新寫入文件
{
fprintf(fp, "%s? %s? %s? %s? %d? %d? %f? %f? %d\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
}
fclose(fp);
break; //跳出 for循環(huán)
}
else? //假如不修改信息? 再次寫入文件
{
//for (i = 1; i < test; i++) //將內(nèi)存中 修改過的信息 重新寫入文件
//{
// fprintf(fp, "%s? %s? %s? %s? %d? %d? %f? %f? %d\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
//}
fclose(fp);
break;
}
}
}
if (sign == 0)
{
printf("沒找到該用戶!\n請按任意鍵繼續(xù)....");
getchar();
}
}
//===============================================================================
//刪除住戶信息的功能 3、
void OLD_delete()
{
//? 先將硬盤文件中數(shù)據(jù) 保存到 內(nèi)存緩沖區(qū)中,找到要刪除的用戶信息,刪除后 重新寫入文檔
system("cls");? //清屏
people peopleI[10000];//建立結(jié)構(gòu)體 數(shù)組
int number = 0, len = 0, sign = 0, i = 1, a, test, j, p;
char name[10], ch, newname[10];
FILE *fp = NULL;? //文件指針
UI_show3();
fp = fopen("output.xls", "r");
if (fp == NULL)
{
printf("未找到文件!");
return;? ? //返回 main函數(shù)
}
printf("請輸入要刪除的住戶姓名:");
scanf("%s", name);
while (!feof(fp))? //從文件中讀取,文件中數(shù)據(jù)轉(zhuǎn)移到內(nèi)存數(shù)組中區(qū)
{ //!feof(fp)只要文件不到末尾 就一直讀下去
fscanf(fp, "%s%s%s%s%d%d%f%f%d", peopleI[i].name, peopleI[i].sex, &peopleI[i].IDnumber, &peopleI[i].phone, &peopleI[i].building, &peopleI[i].roomID, &peopleI[i].roomarea, &peopleI[i].areamoney, &peopleI[i].owemoney);
i++;
}
///------------------------------------
fclose(fp);? //保存文件?
printf("\n");
i--;
test = i;? //保存 行數(shù)
for (; i >= 0; i--)
{
a = strcmp(name, peopleI[i].name);? //比較 輸入的用戶名? 和文件中的用戶名
if (a == 0)? ?//找到相應(yīng)位置? ?
{
sign = 1;? // 標志 是否找到 數(shù)據(jù)
printf("姓名%s,性別%s,身份證號%s,聯(lián)系方式%s,樓號%d,房號%d,住房面積%f,每平物業(yè)費%f,拖欠的物業(yè)費的月數(shù)%d\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
//顯示出要修改的信息
do
{
printf("你確定要刪除該用戶的信息嗎?(Y/N):");
getchar();
scanf("%c", &ch);
} while ((ch != 'Y') && (ch != 'y') && (ch != 'n') && (ch != 'N'));
if ((ch == 'y') || (ch == 'Y'))? //假如 確定
{
printf("刪除成功!");
fp = fopen("output.xls", "w");? //以寫的方式打開,源文件被清除
for (j = 1; j <test; j++)? //重新寫入文件??
{
if (j == i) // 不寫入 第i個數(shù)據(jù)
{
//操作為空?
}
else //否則? 寫入文件
fprintf(fp, "%s? %s? %s? %s? %d? %d? %f? %f? %d\n", peopleI[j].name, peopleI[j].sex, peopleI[j].IDnumber, peopleI[j].phone, peopleI[j].building, peopleI[j].roomID, peopleI[j].roomarea, peopleI[j].areamoney, peopleI[j].owemoney);
}
fclose(fp);? //關(guān)閉? 保存緩沖區(qū) 文件
}
else? ? //假如不修改信息? 再次寫入文件
{
fp = fopen("output.xls", "w");? //以寫的方式打開,源文件被清除
for (i = 1; i < test; i++) //將內(nèi)存中 修改過的信息 重新寫入文件
{
fprintf(fp, "%s? %s? %s? %s? %d? %d? %f? %f? %d\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
}
fclose(fp);
}
}
}
if (sign == 0)? ?//判斷為未找到用戶
{
printf("沒找到該用戶!\n請按回車鍵返回菜單選項.....");
getchar();
}
}
//================================================================================================
//繳費功能,計算住戶的物業(yè)費 4、
void OLD_putmoney()
{
//? 先將硬盤文件中數(shù)據(jù) 保存到 內(nèi)存緩沖區(qū)中,找到要繳費的用戶信息,判斷是否 要繳納費用
//? 如果要繳納費用 則 顯示? ?應(yīng)收費用=住房面積*每平方米物業(yè)費+ 拖欠的物業(yè)費的月數(shù)*住房面積*每平方米物業(yè)費
//? 讀取 實際收取的費用。 則 修改文件中 拖欠物業(yè)費的月數(shù), 拖欠物業(yè)費的月數(shù)=-1? 代表本月已經(jīng)繳納了物業(yè)費用
system("cls");? //清屏
people peopleI[10000];//建立結(jié)構(gòu)體 數(shù)組
int sign = 0, i = 1, a, test;
// float aa;
char name[10], ch;
UI_show4();
FILE *fp = NULL;? //文件指針
fp = fopen("output.xls", "r");? //讀取信息
if (fp == NULL)
{
printf("\n出現(xiàn)未知錯誤!按任意鍵退出.....\n");
getchar();
exit(0);
}
printf("請輸入要繳費的住戶姓名:");
scanf("%s", name);
while (!feof(fp))? //從文件中讀取,文件中數(shù)據(jù)轉(zhuǎn)移到內(nèi)存數(shù)組中區(qū)
{ //!feof(fp)只要文件不到末尾 就一直讀下去
fscanf(fp, "%s%s%s%s%d%d%f%f%d", peopleI[i].name, peopleI[i].sex, &peopleI[i].IDnumber, &peopleI[i].phone, &peopleI[i].building, &peopleI[i].roomID, &peopleI[i].roomarea, &peopleI[i].areamoney, &peopleI[i].owemoney);
i++;
}
printf("\n");
i--;
test = i;
for (; i >= 1; i--) //? 查找
{
a = strcmp(name, peopleI[i].name);? //比較 輸入的用戶名? 和文件中的用戶名
if (a == 0)? ?//找到相應(yīng)位置? ?
{
sign = 1;? // 標志 是否找到 數(shù)據(jù)
printf("請您核對繳費人的信息:\n\n");
if (peopleI[i].owemoney == -1)
{
printf("姓名%s,性別%s,身份證號%s,聯(lián)系方式%s,樓號%d,房號%d,住房面積%f,每平物業(yè)費%f\n本月之前拖欠物業(yè)費的月數(shù)0\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
printf("\n");
printf("\n用戶該月已經(jīng)繳納物業(yè)費用!\n請按回車鍵返回菜單選項.....");
getchar();
return;
}
else
{
printf("姓名%s,性別%s,身份證號%s,聯(lián)系方式%s,樓號%d,房號%d\n住房面積%f,每平物業(yè)費%f,本月之前拖欠物業(yè)費的月數(shù)%d\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
printf("\n");
printf("\n該用戶應(yīng)該繳納的物業(yè)費為:%f 元\n", (peopleI[i].owemoney + 1)*(peopleI[i].roomarea*peopleI[i].areamoney));
}
//顯示出信息
/*if (peopleI[i].owemoney == -1)
{
}*/
// printf("\n該用戶應(yīng)該繳納的物業(yè)費為:%f 元\n",(peopleI[i].owemoney+1)*(peopleI[i].roomarea*peopleI[i].areamoney));
do
{
printf("是否為該用戶繳費?(Y/N):");
getchar();
scanf("%c", &ch);
} while ((ch != 'Y') && (ch != 'y') && (ch != 'n') && (ch != 'N'));
if ((ch == 'y') || (ch == 'Y'))
{
//計算 并 修改? 用戶所拖欠的月數(shù)
peopleI[i].owemoney = -1;
printf("繳費成功!\n請按回車鍵返回菜單選項.....");
fclose(fp); //先關(guān)閉 文件? 再以寫的權(quán)限打開? 清空源文件?
fp = fopen("output.xls", "w");
for (i = 1; i < test; i++) //重新寫入
{
fprintf(fp, "%s? %s? %s? %s? %d? %d? %f? %f? %d\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
}
fclose(fp);
getchar();
return;
}
}
}
if (sign == 0)? ?//判斷為未找到用戶
{
printf("沒找到該用戶!\n請按回車鍵返回菜單選項.....");
getchar();
getchar();
}
}
//========================================================================================
void OLD_showmoney()//排序功能,按拖欠款項多少,對所有用戶信息進大到小排序? 5、
{
//讀取到內(nèi)存緩沖區(qū)? ?對peopleI[i].owemoney 用戶所欠費用 的數(shù)據(jù)進行冒泡排序 并從大到小打印到屏幕中
system("cls");? //清屏
people peopleI[10000];//建立結(jié)構(gòu)體 數(shù)組
people tt[1]; //臨時變量 交換整個 用戶的信息
? //comper *p;
int number = 0, len = 0, sign = 0, i = 1, a, test, j, p, money[1000], t;
char name[10], ch, newname[10];
UI_show5();
FILE *fp = NULL;? //文件指針
fp = fopen("output.xls", "r+");
while (!feof(fp))? //從文件中讀取,文件中數(shù)據(jù)轉(zhuǎn)移到內(nèi)存數(shù)組中區(qū)
{ //!feof(fp)只要文件不到末尾 就一直讀下去
fscanf(fp, "%s%s%s%s%d%d%f%f%d", peopleI[i].name, peopleI[i].sex, &peopleI[i].IDnumber, &peopleI[i].phone, &peopleI[i].building, &peopleI[i].roomID, &peopleI[i].roomarea, &peopleI[i].areamoney, &peopleI[i].owemoney);
i++;
}
printf("\n");
i--;
test = i;
//對owemoney 的大小進行 經(jīng)典冒泡排序
for (i = 1; i<test; i++)
for (j = 1; j < test - i; j++)
{
if (peopleI[j].owemoney < peopleI[j + 1].owemoney)
{
?
tt[0] = peopleI[j];
peopleI[j] = peopleI[j + 1];
peopleI[j + 1] = tt[0];
}
}
for (i = 1; i < test; i++)? ?//將信息 從大到小 打印到屏幕
{
if (peopleI[i].owemoney == -1)
{
printf("姓名%s,性別%s,身份證號%s,聯(lián)系方式%s,樓號%d,房號%d,住房面積%f,每平物業(yè)費%f\n本月之前拖欠物業(yè)費的月數(shù)0,現(xiàn)在拖欠的物業(yè)費用0\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney);
printf("\n");
}
else
{
printf("姓名%s,性別%s,身份證號%s,聯(lián)系方式%s,樓號%d,房號%d,住房面積%f,每平物業(yè)費%f\n本月之前拖欠物業(yè)費的月數(shù)%d,現(xiàn)在拖欠的物業(yè)費用%f\n", peopleI[i].name, peopleI[i].sex, peopleI[i].IDnumber, peopleI[i].phone, peopleI[i].building, peopleI[i].roomID, peopleI[i].roomarea, peopleI[i].areamoney, peopleI[i].owemoney, (peopleI[i].owemoney + 1)*(peopleI[i].roomarea*peopleI[i].areamoney));
printf("\n");
}
}
printf("請按任意鍵返回菜單選項......\n");
}
//================================================================================
void EXIT() // 退出
{
char ch;
do
{
printf("你確定退出嗎?(Y/N):");
getchar();
scanf("%c", &ch);
} while ((ch != 'Y') && (ch != 'y') && (ch != 'n') && (ch != 'N'));
if ((ch == 'y') || (ch == 'Y'))
{
exit(0);
}
}
//===================================================================================
//? ? ? 各種UI
void UI_show1()
{
int i;
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
for (i = 0; i < 15; i++)
{
printf(" ");
}
printf("你正在添加用戶信息,請根據(jù)提示輸入用戶信息。\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
}
void UI_show2()
{
int i;
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
for (i = 0; i < 15; i++)
{
printf(" ");
}
printf("你正在修改用戶信息,請根據(jù)提示輸入用戶信息。\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
}
void UI_show3()
{
int i;
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
for (i = 0; i < 15; i++)
{
printf(" ");
}
printf("你正在刪除用戶信息,請根據(jù)提示輸入用戶信息。\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
}
void UI_show4()
{
int i;
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
for (i = 0; i < 15; i++)
{
printf(" ");
}
printf("你正在使用繳費功能,請根據(jù)提示輸入用戶信息。\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
}
void UI_show5()
{
int i;
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
for (i = 0; i < 15; i++)
{
printf(" ");
}
printf("你正在使用排序功能。\n");
for (i = 0; i < 75; i++)? ?//數(shù)字? 控制 上方 = 數(shù)量?
{
printf("=");
}
printf("\n");
}