freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)庫管理系統(tǒng)大數(shù)運算校園導(dǎo)航哈弗曼編碼-資料下載頁

2025-04-12 06:51本頁面
  

【正文】 } else if(value[i]==34amp。amp。flag1==1) { /*如果找到了第二個并且flag1=1則end指向第二個的下標*/ end=i。 break。 /*start與end都找到后跳出循環(huán)體*/ } } if(start==1||end==1) /*如果start或者end沒有全部找到則說明命令有錯誤*/ { printf(您輸入的命令語法有錯誤!\n)。 goto loop。 /*跳到loop指定的位置,也就是函數(shù)末尾*/ } for(i=start+1。iend。i++) /*將value數(shù)組中start與end之間的字符賦給lx數(shù)組*/ lx[lxlen++]=value[i]。 lx[lxlen]=39。\039。 /*lx數(shù)組末尾加上結(jié)束標識*/ for(i=0。i*。i++) if(strcmp(wj[0][i].data,zd)==0) /*如果要查找的字段在wj數(shù)組中存在的話則jilu指向該字段*/ jilu=i。 if(jilu==1) /*如果jilu=1說明在數(shù)據(jù)庫中不存在要查找的字段*/ { printf(數(shù)據(jù)庫沒有該字段的值!\n)。 goto loop。 /*跳到loop指向的位置,也就是函數(shù)末尾*/ } for(i=0。i*row。i++) /*在匹配成功的字段中查找滿足條件的內(nèi)容的行的位置*/ { if(strcmp(wj[i][jilu].data,lx)==0) /*如果找到則dingwei等于該行所在的位置*/ { dingwei=i。 break。 } } if(dingwei==1) /*如果dingwei等于1說明沒有找到滿足條件的行*/ { printf(數(shù)據(jù)庫中沒有符合該條件的字段!\n)。 goto loop。 /*跳到loop指定的位置,也就是函數(shù)末尾*/ } for(i=1。i*。i++) /*找到該行后對該行的每個字段進行修改*/ { printf(請輸入%s的值:\n,wj[0][i].data)。 printf(%s ,wj[dingwei][i].data)。 scanf(%s,wj[dingwei][i].data)。 gailen=strlen(wj[dingwei][i].data)。 wj[dingwei][i].data[gailen]=39。\039。 } printf(字段修改成功!\n)。loop: 。}/*(10) 按字段排序函數(shù)模塊相同的方法,取得需要排序的字段的字段名,然后判斷字段名之后的那個字符是否為@、a、A、d、D的其中一個(a表示升序,d表示降序,不區(qū)分大小寫,默認排序為升序),若不是,提示命令錯誤;若是,調(diào)用Px_()函數(shù)按冒泡排序思想進行排序操作。*/void Px(char ziduan[],char ch,int *,int *row) /*排序函數(shù)*/{ int i,j,k,reg=1。 char temp[20]。 memset(temp,39。\039。,sizeof(temp))。 for(i=0。i*。i++) /*查找滿足條件的字段*/ if(strcmp(wj[0][i].data,ziduan)==0) reg=i。 if(reg==1) /*如果該字段在數(shù)據(jù)庫中不存在則reg=1*/ printf(數(shù)據(jù)庫中沒有該字段!\n)。 if(reg!=1) /*否則進行排序*/ { if(ch==39。d39。||ch==39。D39。) /*如果ch=39。d39。或者39。D39。則為降序排列*/ { for(i=1。i*row。i++) /*利用氣泡降序排序*/ { for(j=i+1。j*row。j++) { if(strcmp(wj[i][reg].data,wj[j][reg].data)0||(strlen(wj[i][reg].data)strlen(wj[j][reg].data))) { for(k=0。k*。k++) { strcpy(temp,wj[i][k].data)。 strcpy(wj[i][k].data,wj[j][k].data)。 strcpy(wj[j][k].data,temp)。 memset(temp,39。\039。,sizeof(temp))。 } } } } } else /*否則為升序排列*/ { for(i=1。i*row。i++) /*使用冒泡排序法進行升序排序*/ { for(j=i+1。j*row。j++) { if(strcmp(wj[i][reg].data,wj[j][reg].data)0||(strlen(wj[i][reg].data)strlen(wj[j][reg].data))) { for(k=0。k*。k++) { strcpy(temp,wj[i][k].data)。 strcpy(wj[i][k].data,wj[j][k].data)。 strcpy(wj[j][k].data,temp)。 memset(temp,39。\039。,sizeof(temp))。 } } } } } }}void Sort(int *,int *row){ char second[110],value[110],ziduan[110], ch=39。@39。 int lenv,i,lenzd=0,1=*,row1=*row。 memset(second,39。\039。,sizeof(second))。 /*初始化數(shù)組*/ memset(value,39。\039。,sizeof(value))。 /*初始化數(shù)組*/ memset(ziduan,39。\039。,sizeof(ziduan))。 /*初始化數(shù)組*/ scanf(%s,second)。 /*接收on*/ scanf(%s,value)。 /*接收on后面的字符*/ if(strcmp(second,on)!=0) /*如果second不等于on則說明語法錯誤*/ { printf(語法錯誤!\n)。 goto loop。 /*跳到loop指定的位置 也就是函數(shù)末尾*/ } lenv=strlen(value)。 /*測量value數(shù)組的長度*/ for(i=0。ilenv。i++) { ziduan[lenzd++]=value[i]。 if(value[i]==47) /*ch接收排序的方法 如果是升序 則ch接收到的字符為39。a39?;蛘?9。A39。 */ { /*如果為降序則ch接收到的字符為39。d39。或者39。D39。*/ ch=value[i+1]。 break。 } if(value[i]==92) /*如果輸入的字符存在39。\39。則說明命令中有非法字符*/ { printf(您輸入的語法中含有非法字符39。\\39。 \n)。 goto loop。 /*跳到函數(shù)末尾*/ } } if(ch==39。@39。) /*如果ch沒有接受到字符則默認為升序排列*/ ziduan[lenzd]=39。\039。 else ziduan[lenzd1]=39。\039。 if(ch==39。a39。||ch==39。@39。||ch==39。d39。||ch==39。D39。||ch==39。A39。) /*調(diào)用PxDbm函數(shù)進行排序*/ Px(ziduan,ch,amp。1,amp。row1)。 else printf(語法錯誤!\n)。loop: 。}/*(11) 關(guān)閉數(shù)據(jù)庫函數(shù)模塊用fopen以讀寫的方式打開指定文件,若文件不存在,則創(chuàng)建文件。之后用嵌套for循環(huán)fprintf將數(shù)據(jù)庫中的數(shù)據(jù)以字符串寫入文件。最后關(guān)閉文件,并將各變量格式化。*/void Close(char secondinput[],int *,int *row,char mem[],char bian[]) /*關(guān)閉函數(shù)*/{ FILE *fp。 int i,j。 fp=fopen(secondinput,w+)。 /*以讀寫的方式打開指定的文件*/ for(i=0。i*row1。i++) /*向指定的數(shù)據(jù)庫文件寫內(nèi)容*/ { for(j=0。j*。j++) fprintf(fp,%s ,wj[i][j].data)。 fputc(39。\n39。,fp)。 } for(i=0。i*。i++) fprintf(fp,%s ,wj[*row1][i].data)。 fclose(fp)。 memset(wj,39。\039。,sizeof(wj))。 /*向數(shù)據(jù)庫文件寫完內(nèi)容后對以下數(shù)組進行初始化*/ memset(mem,39。\039。,sizeof(mem))。 memset(bian,39。\039。,sizeof(bian))。 *row=0。 /*wj數(shù)組的行與列進行初始化*/ *=0。}/*(12) 主函數(shù)模塊首先聲明一些必要的變量,調(diào)用幫助菜單,然后做一個while循環(huán)程序,直至用戶輸入完全結(jié)束,循環(huán)體內(nèi)通過依次匹配字符串判定用戶輸入的命令,并調(diào)用相應(yīng)函數(shù)模塊進行操作。其中比較復(fù)雜的是創(chuàng)建數(shù)據(jù)庫。若用戶命令為creat創(chuàng)建數(shù)據(jù)庫,首先讀入數(shù)據(jù)庫名,然后創(chuàng)建數(shù)據(jù)庫并將內(nèi)存地址賦給handle,再調(diào)用創(chuàng)建數(shù)據(jù)庫函數(shù)Create_Struct()在內(nèi)存中創(chuàng)建數(shù)據(jù)庫,之后循環(huán)將內(nèi)存中的數(shù)據(jù)寫入指定文件。最后調(diào)用Open_()函數(shù),打開該數(shù)據(jù)庫,方便進行下一步操作。*/int main(){ Linklist *database[1100]。 /*創(chuàng)建庫結(jié)構(gòu)*/ char input[1100],mingling[1100]。 /*存放命令字符串*/ int i,l=0,l1=0,num=0, handle,length=1,fangwen=0。 int go。 /*當執(zhí)行g(shù)o命令時候存儲當前所指向的記錄*/ char error[110]。 /*接收錯誤命令后面的命令字符串*/ char mem[110]。 /*分別存儲文件的每一行,在復(fù)制給wj數(shù)組*/ int row=0。 /*wj數(shù)組的行數(shù),也就是數(shù)據(jù)庫中的記錄數(shù)目*/ int lie=0。 int =0。 /*記錄wj的列數(shù)*/ int bianlen,fanlen=0。 char bian[100]。 /*自動生成的編號轉(zhuǎn)換為相對應(yīng)的字符串*/ char fabian[100]。 /*反向存儲bian數(shù)組*/ FILE *fp。 char secondinput[1100]。 Help()。 printf(請輸入命令:)。 while(scanf(%s,input)!=EOF) /*連續(xù)輸入,一直輸入到文件尾結(jié)束*/ { if(strcmp(input,creat)==0) /*如果輸入命令為creat則創(chuàng)建數(shù)據(jù)庫文件*/ { scanf
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1