在线观看国产免费视频_亚洲视频三区_中文字幕在线观看网站_日韩视频免费在线观看_亚洲视频精品_天天夜夜操

當(dāng)前位置:網(wǎng)站首頁(yè) >> 作文 >> 2023年程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)(五篇)

2023年程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)(五篇)

格式:DOC 上傳日期:2024-07-01 17:48:15
2023年程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)(五篇)
時(shí)間:2024-07-01 17:48:15     小編:zdfb

范文為教學(xué)中作為模范的文章,也常常用來指寫作的模板。常常用于文秘寫作的參考,也可以作為演講材料編寫前的參考。那么我們?cè)撊绾螌懸黄^為完美的范文呢?下面是小編為大家收集的優(yōu)秀范文,供大家參考借鑒,希望可以幫助到有需要的朋友。

程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)篇一

通訊錄管理系統(tǒng) 2.基本功能

(1)顯示:將所有聯(lián)系人的信息顯示出來(2)查找:按姓名、手機(jī)號(hào)碼、qq號(hào)碼進(jìn)行查找

(3)添加:從鍵盤上錄入聯(lián)系人的有關(guān)信息,包括姓名、手機(jī)號(hào)碼、qq號(hào)碼、家庭地址

(4)修改:根據(jù)用戶需要,修改聯(lián)系人的指定信息

(5)刪除:刪除不需要的信息

源代碼

#include

#include

#include

#define len sizeof(struct per)struct per { char name[17];//姓名

char number[13];//電話 char qq[11];//qq號(hào)

char add[30];//家庭地址 };void clearscreen()//清屏函數(shù) { system(“cls”);} void printf1()//主界面 {

printf(“nnnnttt 歡迎來到通訊錄!”);printf(“nntt 請(qǐng)選擇操作:”);printf(“nnttt1.顯示通訊錄”);printf(“nttt2.查找通訊錄”);printf(“nttt3.添加通訊錄”);printf(“nttt4.修改通訊錄”);printf(“nttt5.刪除通訊錄”);printf(“nttt6.退出n”);} void printf2()//修改頁(yè)面 { printf(“請(qǐng)選擇操作:n”);printf(“t1.按姓名查找n”);printf(“t2.按手機(jī)號(hào)碼查找n”);printf(“t3.按qq號(hào)碼查找n”);printf(“t4.返回上一頁(yè)n”);} void show()//顯示函數(shù) { struct per * p,person;file *fp;int i=0;p=&personclearscreen();printf(“姓名tt 電話t qqt 家庭地址nn”);if((fp=fopen(“”,“r”))==null){ printf(“cannot open filen”);exit(0);} while(!feof(fp)&&fread(p,len,1,fp)){

printf(“%-17s%-13s%-11s%-30sn”,p->name,p->number,p->qq,p->add);

i++;} if(i==0)

printf(“沒有聯(lián)系人n”);else

printf(“ntttttt共有%d位聯(lián)系人n”,i);fclose(fp);printf(“n按回車鍵返回上一頁(yè)”);getchar();getchar();} void seek()//查找 { char name[17],tel[13],qq[11];int n,i;file *fp;struct per * p,person;p=&personfp=fopen(“”,“r”);while(1){ rewind(fp);clearscreen();printf2();printf(“請(qǐng)選擇您的操作:n”);scanf(“%d”,&n);if(n==1){

i=0;

clearscreen();

printf(“請(qǐng)輸入要查找的聯(lián)系人的姓名:n”);

scanf(“%s”,name);while(!feof(fp)){ fread(p,len,1,fp);

if(strcmp(name,p->name)==0)

{

i++;

if(i==1)

{ printf(“姓名tt 電話t qqt 家庭地址nn”);}

printf(“%-17s%-13s%-11s%-30sn”,p->name,p->number,p->qq,p->add);

memset(p,0,len);

}

} if(i==0)printf(“沒有該聯(lián)系人的信息n”);

printf(“n按回車鍵返回上一頁(yè)”);getchar();getchar();} else if(n==2){ i=0;clearscreen();printf(“請(qǐng)輸入要查找的手機(jī)號(hào)碼:n”);scanf(“%s”,tel);while(!feof(fp)){ fread(p,len,1,fp);if(strcmp(tel,p->number)==0){

i++;

if(i==1)

{ printf(“姓名tt 電話t qqt 家庭地址

nn”);}

printf(“%-17s%-13s%-11s%-30sn”,p->name,p->number,p->qq,p->add);

memset(p,0,len);

} } if(i==0)printf(“沒有該聯(lián)系人的信息n”);printf(“n按回車鍵返回上一頁(yè)”);getchar();getchar();

} else if(n==3){ i=0;clearscreen();printf(“請(qǐng)輸入要查找的qq號(hào)碼:n”);scanf(“%s”,qq);while(!feof(fp)){ fread(p,len,1,fp);

if(strcmp(qq,p->qq)==0)

{

i++;

if(i==1)

{ printf(“姓名tt 電話t qqt 家庭地址nn”);}

printf(“%-17s%-13s%-11s%-30sn”,p->name,p->number,p->qq,p->add);

memset(p,0,len);

} } if(i==0)

printf(“沒有該聯(lián)系人的信息n”);

printf(“n按回車鍵返回上一頁(yè)”);getchar();getchar();

} else if(n==4)

break;} fclose(fp);getchar();} void add()//添加函數(shù) { int n;file *fp;struct per * p,person;p=&person

printf(“請(qǐng)選擇您的操作 1 添加 2 返回上一頁(yè)nn”);scanf(“%d”,&n);if(n!=1&&n!=2){

printf(“請(qǐng)選擇您的操作 1 添加 2 返回上一頁(yè)n”);scanf(“%d”,&n);} while(n==1){ memset(p,0,len);//機(jī)構(gòu)體的初始化 clearscreen();fp=fopen(“”,“a”);printf(“請(qǐng)輸入姓名n”);scanf(“%s”,p->name);printf(“請(qǐng)輸入手機(jī)號(hào)碼n”);scanf(“%s”,p->number);printf(“請(qǐng)輸入qq(沒有請(qǐng)輸入無(wú))n”);scanf(“%s”,p->qq);printf(“請(qǐng)輸入地址n”);scanf(“%s”,p->add);

fwrite(p,len,1,fp);fclose(fp);printf(“保存成功!n”);printf(“您想 1繼續(xù)添加 2退出n”);scanf(“%d”,&n);if(n!=1&&n!=2)

{

printf(“請(qǐng)選擇您的操作 1 添加 2 退出nn”);scanf(“%d”,&n);

} } } void alter()//修改 { char name[17],tel[13],qq[11],add[30];int n,len,i=0;file *fp;struct per *p,person;p=&personfp=fopen(“”,“r+”);printf(“請(qǐng)輸入要修改的聯(lián)系人的姓名n”);scanf(“%s”,name);while(!feof(fp)&&fread(p,len,1,fp)){

if(strcmp(name,p->name)==0)

{

i++;

len=ftell(fp);printf(“n姓名tt 電話t qqt 家庭地址nn”);

printf(“%-17s%-13s%-11s%-30sn”,p->name,p->number,p->qq,p->add);

} } printf(“n”);if(i==0){

printf(“沒有該聯(lián)系人的信息n”);getchar();

printf(“按回車鍵返回主菜單n”);} else { printf(“1.修改該聯(lián)系人的姓名n”);printf(“2.修改該聯(lián)系人的手機(jī)號(hào)碼n”);printf(“3.修改該聯(lián)系人的qq號(hào)碼n”);printf(“4.修改該聯(lián)系人的家庭地址n”);printf(“5.修改該聯(lián)系人的全部信息n”);

printf(“6.返回上一頁(yè)nn”);printf(“請(qǐng)輸入您的操作序號(hào)n”);scanf(“%d”,&n);

switch(n)

{

case 1:

clearscreen();fseek(fp,len-71,seek_set);printf(“請(qǐng)輸入姓名n”);scanf(“%s”,name);

fwrite(&name,sizeof(name),1,fp);printf(“修改成功n”);

printf(“按回車鍵返回主菜單n”);getchar();

break;

case 2:

clearscreen();fseek(fp,len-54,seek_set);printf(“請(qǐng)輸入手機(jī)號(hào)碼n”);scanf(“%s”,tel);

fwrite(&tel,sizeof(tel),1,fp);printf(“修改成功n”);

printf(“按回車鍵返回主菜單n”);getchar();

break;

case 3:

clearscreen();fseek(fp,len-41,seek_set);printf(“請(qǐng)輸入qq號(hào)碼n”);scanf(“%s”,qq);

fwrite(&qq,sizeof(qq),1,fp);printf(“修改成功n”);

printf(“按回車鍵返回主菜單n”);getchar();

break;

case 4:

clearscreen();fseek(fp,len-30,seek_set);printf(“請(qǐng)輸入家庭地址n”);scanf(“%s”,add);

fwrite(&add,sizeof(add),1,fp);printf(“修改成功n”);

printf(“按回車鍵返回主菜單n”);getchar();

break;

case 5:

clearscreen();fseek(fp,len-71,seek_set);

printf(“請(qǐng)輸入姓名n”);scanf(“%s”,p->name);printf(“

請(qǐng)

機(jī)

號(hào)

碼n”);scanf(“%s”,p->number);printf(“請(qǐng)輸入n”);scanf(“%s”,p->qq);printf(“請(qǐng)輸入地址n”);scanf(“%s”,p->add);fwrite(p,len,1,fp);printf(“修改成功n”);

printf(“按回車鍵返回主菜單n”);getchar();

break;

case 6:;

}

} fclose(fp);getchar();

}

qq(沒有請(qǐng)輸入無(wú))void delete()//刪除 { int i=0,j,l;char name[17];struct per * p,person;file *fp,*fp1;p=&personfp=fopen(“”,“a+”);printf(“請(qǐng)輸入要?jiǎng)h除的聯(lián)系人的姓名n”);scanf(“%s”,name);while(!feof(fp)&&fread(p,len,1,fp))//顯示要?jiǎng)h除的聯(lián)系人的信息

{

if(strcmp(name,p->name)==0)

{

i++;

if(i==1)

{printf(“姓名tt 電話t

qqt 家庭地址nn”);} printf(“%-17s%-13s%-11s%-30sn”,p->name,p->number,p->qq,p->add);

memset(p,0,len);

}

} rewind(fp);if(i==0)printf(“沒有該聯(lián)系人的信息n”);else {

printf(“n此聯(lián)系人將被刪除n”);

printf(“1.確定 2.取消n”);

scanf(“%d”,&j);

if(j==1)

{

fp1=fopen(“”,“a”);

while(!feof(fp)&&fread(p,len,1,fp))

{

if(strcmp(name,p->name)!=0)

{

fwrite(p,len,1,fp1);

}

}

fclose(fp);

fclose(fp1);

remove(“”);

rename(“”,“”);

printf(“n該聯(lián)系人已刪除 按回車鍵返回上一頁(yè)n”);getchar();getchar();

}

if(j==2)

{

fclose(fp);printf(“n按回車鍵返回上一頁(yè)n”);getchar();getchar();

}

} } int select()//主菜單輸入 { int n;printf(“選擇您想要的操作 請(qǐng)輸入序號(hào)!n”);scanf(“%d”,&n);while(n<1||n>6){

printf(“輸入錯(cuò)誤,請(qǐng)重新輸入!n”);

scanf(“%d”,&n);

}

return(n);} int main(){

while(1){

clearscreen();

printf1();

switch(select()){

case 1:clearscreen();show();break;

case 2:clearscreen();seek();break;

case 3:clearscreen();add();break;

case 4:clearscreen();alter();break;

case 5:clearscreen();delete();break;

case 6:exit(0);} }

return 0;}

程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)篇二

摘 要

為了人們對(duì)他人信息的記憶方便而設(shè)計(jì),開發(fā)的一套“通訊錄管理系統(tǒng)“軟件。通過該題目的設(shè)計(jì)過程,可以培養(yǎng)學(xué)生結(jié)構(gòu)化程序設(shè)計(jì)的思想,加深對(duì)高級(jí)語(yǔ)言基本語(yǔ)言要素和控制結(jié)構(gòu)的理解,針對(duì)c語(yǔ)言中的重點(diǎn)和難點(diǎn)內(nèi)容進(jìn)行訓(xùn)練,獨(dú)立完成有一定工作量的程序設(shè)計(jì)任務(wù),同時(shí)強(qiáng)調(diào)好的程序設(shè)計(jì)風(fēng)格。得到軟件工程的綜合訓(xùn)練,提高解決實(shí)際問題的能力。

關(guān)鍵字:信息;管理;實(shí)用

abstract

designed for people to others the memory of information convenient, developed a set of “mail list management system” h the design process of this subject, students can be structured programming ideas, deepen our understanding of the advanced language basic language elements and control the understanding of the structure, conduct training for emphasis and difficulty in c language, independently complete the program design has a certain work tasks, while emphasizing the good programming hensive training in software engineering, improving the ability to solve practical ds: information;management;practical

目 錄 概述.........................................................................1 1.1設(shè)計(jì)目的..................................................................1 1.2設(shè)計(jì)要求..................................................................1 1.3系統(tǒng)功能需求分析..........................................................2 2 總體設(shè)計(jì).....................................................................3 2.1總體功能模塊圖............................................................3 2.2程序的數(shù)據(jù)設(shè)計(jì)............................................................4 3詳細(xì)設(shè)計(jì).....................................................................5 3.1功能及工作流程圖..........................................................5 3.2源程序代碼................................................................8 4調(diào)試分析....................................................................19 4.1測(cè)試.....................................................................19 4.2問題思考與調(diào)試:.........................................................27 5總結(jié)........................................................................28 參考文獻(xiàn)......................................................................29 致 謝........................................................................27

概述

1.1設(shè)計(jì)目的

隨著信息社會(huì)的高速發(fā)展,人與人之間的聯(lián)系越來越頻繁,通訊方式越來越多樣化,如何保證與朋友、同學(xué)、同事、領(lǐng)導(dǎo)、親戚等之間的聯(lián)系,并能方便快捷的查找、記錄、修改其相關(guān)通訊信息。僅靠以前單獨(dú)的手工記錄已遠(yuǎn)遠(yuǎn)不能滿足當(dāng)前的需要。

開發(fā)一個(gè)通訊錄管理系統(tǒng),借助計(jì)算機(jī)可以方便、快捷、靈活的管理個(gè)人的朋友及相關(guān)人員的通訊信息,了解友人相關(guān)信息,幫助與友人保持聯(lián)絡(luò)。

所以設(shè)計(jì)一個(gè)通訊錄管理系統(tǒng)管理各人的通訊信息是是非必要的。

設(shè)計(jì)“通訊錄管理系統(tǒng)”使其具有數(shù)據(jù)插入、修改、刪除、顯示和查詢等功能。(1)數(shù)據(jù)包括:人名、工作單位、電話號(hào)碼和e-mail地址。(2)可對(duì)記錄中的姓名和電話號(hào)碼進(jìn)行修改。(3)可增加或刪除記錄。(4)可顯示所有保存的記錄。(5)可按人名或電話號(hào)碼進(jìn)行查詢。

1.2設(shè)計(jì)要求

建立通訊錄信息,信息至少包含姓名、住址、單位、固定電話、移動(dòng)手機(jī)、分類(如同事、朋友、同學(xué)、家人等)、e-mail、qq等。

該系統(tǒng)提供添加、刪除、修改和查找功能,其中按姓名方式刪除、修改,按姓名、單位、分類方式查找。

將通訊錄保存在文件中。能夠輸出通訊錄中的信息。

1.3系統(tǒng)功能需求分析

主要包含一下多種功能:

添加:添加通訊錄記錄 顯示:顯示通訊錄記錄 刪除:刪除通訊錄記錄 查詢:查詢通訊錄記錄 修改:修改通訊錄記錄 保存:將信息保存到文件

本系統(tǒng)為通訊錄管理系統(tǒng),可由用戶自由添加,刪除和修改信息,還可以將通訊錄信息導(dǎo)出到文本文檔,極大的方便了用戶的使用。

總體設(shè)計(jì)

思路:我們首先設(shè)計(jì)出了主函數(shù),然后根據(jù)去要實(shí)現(xiàn)的功能分別設(shè)計(jì)錄入聯(lián)系人信息、瀏覽、查詢、修改、刪除功能的子函數(shù)。刪除函數(shù)的設(shè)計(jì)是首先從文件內(nèi)找到要?jiǎng)h除的人,然后通過寫一個(gè)實(shí)現(xiàn)刪除目的的for循環(huán)實(shí)現(xiàn)刪除。修改也大體和刪除相同,添加函數(shù)在設(shè)計(jì)時(shí)通過申請(qǐng)一片空間,然后通過指針將需要添加的信息添加進(jìn)去,從而實(shí)現(xiàn)添加功能。

2.1總體功能模塊圖

圖2.1 總體功能模塊圖

添加:可以添加通訊錄記錄,依次輸入編號(hào)、姓名、年齡、電話號(hào)碼、通訊地址、電子郵箱后,會(huì)提示是否繼續(xù)添加。

顯示:可以以表格形式輸出所有通訊錄里的記錄。

刪除:輸入欲刪除的那個(gè)人的名字后,會(huì)自動(dòng)刪除他(她)的記錄內(nèi)容。查詢:可以選擇用姓名、電話、地址三種方式查詢。

修改:輸入欲修改的那個(gè)人的名字后,再依次輸入編號(hào)、姓名、年齡、電話號(hào)碼、通訊地址、電子郵箱即可完成修改。

保存:輸入文件名(帶后綴名)后,即可將通訊錄信息保存到文件。運(yùn)行所需環(huán)境:win7及以下各版本windows,visual c++6.0。2.2程序的數(shù)據(jù)設(shè)計(jì)

該系統(tǒng)用下面六個(gè)功能模塊編寫,每個(gè)模塊執(zhí)行不同的功能,體現(xiàn)了模塊化設(shè)計(jì)的思想。下面六個(gè)模塊都是利用c語(yǔ)言文件,向文件中追加數(shù)據(jù)、修改數(shù)據(jù)、查詢數(shù)據(jù)和除數(shù)據(jù)。

創(chuàng)建:用fopen()建立一個(gè)文本文件,然后用fprintf()向其中輸入數(shù)據(jù)(例如,向文件中輸入“姓名”,“地址”等),并對(duì)文件進(jìn)行命名。

添加:可以添加通訊錄記錄,利用c語(yǔ)言文件,向文件中按順序輸入姓名、住址、單位、固定電話、手機(jī)號(hào)碼、分類(如同事、朋友、同學(xué)、家人等)、e-mail、qq,再用fclose()函數(shù)關(guān)閉并保存文件。

輸出:也是用通過循環(huán)依次輸出文件中的數(shù)據(jù),即輸出所有通訊錄里的記錄。刪除:輸入你要?jiǎng)h除的人的姓名后,系統(tǒng)會(huì)自動(dòng)刪除他(她)的記錄,在刪除通過switch語(yǔ)句滿足提示你確認(rèn)刪除的功能,只有等你確認(rèn)刪除后才會(huì)刪除。查找:為了滿足用戶的實(shí)際需求,設(shè)計(jì)了三種查詢方式,可以用姓名、單位、分類三種方式查找通訊錄記錄。這里用到strcmp()函數(shù),通過比較字符串是否相同來判別是否找到相關(guān)信息,找到后,就把文件中的數(shù)據(jù)賦給對(duì)應(yīng)的變量,再把變量所帶的值輸出到屏幕上。

修改:輸入你要修改的那個(gè)人的姓名后,系統(tǒng)會(huì)查找該通訊錄文件(此時(shí)用發(fā)ftell()函數(shù)來跟蹤文件指針的指向地址,找到個(gè)人的記錄后,會(huì)顯示他(她)的記錄,然后通過fseek()函數(shù)來找到修改處的地址,然后用戶再依次輸入他(她)的相關(guān)信息來替代以前的記錄。

保存:用到fclose()函數(shù),每次操作成功后會(huì)自動(dòng)保存到指定的文件中。

3詳細(xì)設(shè)計(jì)

3.1功能及工作流程圖

①添加:添加通訊錄記錄,依次輸入編號(hào)、姓名、年齡、電話號(hào)碼、通訊地址、電子郵箱后,會(huì)提示是否繼續(xù)添加。

圖3.1(1)添加流程圖

②顯示:以表格形式輸出所有通訊錄里的

圖3.1(2)顯示流程圖

③刪除::輸入欲刪除的那個(gè)人的名字后,會(huì)自動(dòng)刪除他(她)的記錄內(nèi)容。

圖3.1(3)刪除流程圖

④查詢:可以選擇用姓名、電話、地址三種方式查詢。

圖3.1(4)查詢流程圖

⑤修改:輸入欲修改的那個(gè)人的名字后,再依次輸入編號(hào)、姓名、年齡、電話號(hào)碼、通訊地址、電子郵箱即可完成修改。

圖3.1(5)修改流程圖 3.2源程序代碼

#include

#include

#include

typedef struct

person pe[80];

int menu_select()

{

char c;do{

system(“cls”);

printf(“tt *****通訊錄***** n”);

printf(“tt┌───────┐n”);

printf(“tt│ 1.添加記錄

│n”);printf(“tt│ 2.顯示記錄

│n”);printf(“tt│ 3.刪除記錄

│n”);printf(“tt│ 4.查詢記錄

│n”);printf(“tt│ 5.修改記錄

│n”);{

char score;

/*編號(hào)*/ char name[10];

/*姓名*/ char num[15];

/*號(hào)碼*/ char email[20];char age[8];char adds[20];

/*郵箱*/ /*年齡*/

/*住址*/ }person;

} printf(“tt│ 6.保存記錄

│n”);printf(“tt│ 0.退出程序

│n”);printf(“tt└───────┘n”);printf(“tt請(qǐng)您選擇(0-6):”);c=getchar();

}while(c<'0'||c>'6');return(c-'0');

int input(person per[],int n){

gets(x);

int i=0;

char sign,x[10];

while(sign!='n'&&sign!='n'){

printf(“t編號(hào):”);

scanf(“t%d”,&per[n+i].score);printf(“t姓名:”);

scanf(“t%s”,per[n+i].name);printf(“t年齡:”);scanf(“t%s”,per[n+i].age);printf(“t電話號(hào)碼:”);scanf(“t%s”,per[n+i].num);printf(“t通訊住址:”);scanf(“t%s”,per[n+i].adds);printf(“t電子郵箱:”);scanf(“t%s”,per[n+i].email);

}

} printf(“nt是否繼續(xù)添加?(y/n)”);scanf(“t%c”,&sign);i++;

return(n+i);

void display(person per[],int n)

{

int i;

printf(“--------n”);

/*格式*/

printf(“%-5d%-8s%-6s%-13s%-15s%-15sn”,per[i-1].score,per[i-1].name,per[i-1].age,perprintf(“編號(hào)

姓名

年齡

電話號(hào)碼

通訊地址

電子郵箱n”);printf(“--------n”);

for(i=1;i

{

[i-1].num,per[i-1].adds,per[i-1].email);

}

printf(“--------n”);system(“pause”);if(i>1&&i%10==0)

{

} printf(“t----n”);printf(“t”);system(“pause”);

printf(“t----n”);}

int delete_a_record(person per[],int n){

} char s[20];int i=0,j;

printf(“t請(qǐng)輸入想刪除記錄中的名字:”);scanf(“%s”,s);

while(strcmp(per[i].name,s)!=0&&i

}

for(j=i;j

}

printf(“ttt已經(jīng)成功刪除!n”);return(n-1);strcpy(per[j].num,per[j+1].num);strcpy(per[j].name,per[j+1].name);strcpy(per[j].age,per[j+1].age);strcpy(per[j].adds,per[j+1].adds);strcpy(per[j].email,per[j+1].email);per[j].score=per[j+1].score;printf(“t通訊錄中沒有此人!n”);return(n);void query_a_record(person per[],int n){

int m;printf(“tn請(qǐng)選擇查詢方式:n”);

printf(“t┌──────┐n”);

printf(“t│1------姓名 │n”);

printf(“t│2------電話 │n”);

printf(“t│3------地址 │n”);

printf(“t│4------返回 │n”);

printf(“t└──────┘n”);

printf(“請(qǐng)選擇:”);

scanf(“%d”,&m);

while(m!=1&&m!=2&&m!=3&&m!=4)

{

if(m==1){

char s[20];int i=0;

printf(“t請(qǐng)輸入想查詢的姓名:”);scanf(“t%s”,s);

while(strcmp(per[i].name,s)!=0&&i

} printf(“輸入錯(cuò)誤,請(qǐng)重新選擇:”);scanf(“%d”,&m);

};} return;

printf(“t此人編號(hào): %dn”,per[i].score);printf(“t此人年齡: %sn”,per[i].age);printf(“t電話號(hào)碼: %sn”,per[i].num);printf(“t通訊地址: %sn”,per[i].adds);printf(“t電子郵箱: %sn”,per[i].email);if(m==2){

char s[20];int i=0;

printf(“t請(qǐng)輸入想查詢的電話:”);scanf(“t%s”,s);

while(strcmp(per[i].num,s)!=0&&i

};}

printf(“t此人編號(hào): %dn”,per[i].score);printf(“t此人姓名: %sn”,per[i].name);printf(“t此人年齡: %sn”,per[i].age);printf(“t通訊地址: %sn”,per[i].adds);printf(“t電子郵箱: %sn”,per[i].email);

} if(m==3){

};char s[20];int i=0;

printf(“t請(qǐng)輸入想查詢的地址:”);scanf(“t%s”,s);

while(strcmp(per[i].adds,s)!=0&&i

}

printf(“t此人編號(hào): %dn”,per[i].score);printf(“t此人姓名: %sn”,per[i].name);printf(“t此人年齡: %sn”,per[i].age);printf(“t電話號(hào)碼: %sn”,per[i].num);printf(“t電子郵箱: %sn”,per[i].email);printf(“t通訊錄中沒有此人!n”);return;

void change(person per[],int n){

char s[20];int i=0;

printf(“t請(qǐng)輸入想修改的記錄中的名字:”);scanf(“%s”,s);

while(strcmp(per[i].name,s)!=0&&i

printf(“t通訊錄中沒有此人!n”);

return;

}

printf(“t編號(hào):”);

scanf(“t%d”,&per[i].score);

printf(“t姓名:”);

scanf(“t%s”,per[i].name);

printf(“t年齡:”);

scanf(“t%s”,per[i].age);printf(“t電話號(hào)碼:”);

scanf(“t%s”,per[i].num);

printf(“t通訊住址:”);

scanf(“t%s”,per[i].adds);printf(“t電子郵箱:”);scanf(“t%s”,per[i].email);printf(“t修改成功!”);}

void writetotext(person per[],int n)

{

int i=0;

file *fp;

char filename[20];

printf(“t保存到文件n”);

printf(“t請(qǐng)輸入所保存的文件名:”);

scanf(“t%s”,filename);

if((fp=fopen(filename,“w”))==null)

/*定義文件指針*/ /*定義文件名*/ /*輸入文件名*/

{

}

fprintf(fp,“******************************************

錄printf(”t無(wú)法打開文件n“);system(”pause“);return;

******************************************n”);fprintf(fp,“編號(hào)

姓名

年齡

電話號(hào)碼

通訊地址

電子郵箱n”);;

fprintf(fp,“%-3dt%-6st%-3st%-13st%-20st%-20sn”,per[i].score,per[i].name,per[i].agwhile(i

;fprintf(fp,“***************************************共有%d

條記錄 } fprintf(fp,”----------------------------n“)i++;

****************************************n”,n);

}

void main()

/*主函數(shù)*/ { int n=0;fclose(fp);

/*關(guān)閉文件*/ printf(“保存成功!n”);for(;;){

switch(menu_select())

{

case 1:

printf(“nt添加記錄到通訊錄n”);

n=input(pe,n);break;

case 2:

printf(“nttt

通訊錄記錄表n”);display(pe,n);

break;

case 3:

printf(“nt從通訊錄中刪除記錄n”);n=delete_a_record(pe,n);

printf(“t”);

system(“pause”);break;

case 4:

printf(“nt在通訊錄中查找記錄n”);query_a_record(pe,n);

printf(“t”);

system(“pause”);

break;

case 5:

/*添加記錄*/

/*顯示記錄*/ /*刪除記錄*/

/*查找記錄*/

printf(“nt修改通訊錄中的記錄n”);

change(pe,n);

printf(“t”);

system(“pause”);

break;

case 6:

printf(“nt保存功能n”);

writetotext(pe,n);

printf(“t”);

system(“pause”);

break;

case 0:

printf(“ntt謝謝使用,再見!n”);

printf(“ntt”);

system(“pause”);

exit(0);

}

}

}

/*修改數(shù)據(jù)*/

/*保存數(shù)據(jù)*/

/*結(jié)束程序*/

4調(diào)試分析

調(diào)試的意義和目的:在管理信息系統(tǒng)的開發(fā)過程中,面對(duì)著錯(cuò)綜復(fù)雜的各種問題,人的主觀認(rèn)識(shí)不可能完全符合客觀現(xiàn)實(shí),開發(fā)人員之間的思想交流也不可能十分完善。所以,在管理信息系統(tǒng)開發(fā)周期的各個(gè)階段都不可避免地會(huì)出現(xiàn)差錯(cuò)。開發(fā)人員應(yīng)力求在每個(gè)階段結(jié)束之前進(jìn)行認(rèn)真、嚴(yán)格的技術(shù)審查,盡可能早的發(fā)現(xiàn)并糾正錯(cuò)誤,否則等到系統(tǒng)投入運(yùn)行后再回頭來改正錯(cuò)誤將在人力、物力上造成很大的浪費(fèi),有時(shí)甚至導(dǎo)致整個(gè)系統(tǒng)的癱瘓。然而,經(jīng)驗(yàn)表明,單憑審查并不能發(fā)現(xiàn)全部差錯(cuò),加之在程序設(shè)計(jì)階段也不可避免還會(huì)產(chǎn)生新的錯(cuò)誤,所以,對(duì)系統(tǒng)進(jìn)行調(diào)試是不可缺少的,是保證系統(tǒng)質(zhì)量的關(guān)鍵步驟。統(tǒng)計(jì)資料表明,對(duì)于一些較大規(guī)模的系統(tǒng)來說,系統(tǒng)調(diào)試的工作量往往占程序系統(tǒng)編制開發(fā)總工作量的40%以上。

調(diào)試的目的在于發(fā)現(xiàn)其中的錯(cuò)誤并及時(shí)糾正,所以在調(diào)試時(shí)應(yīng)想方設(shè)法使程序的各個(gè)部分都投入運(yùn)行,力圖找出所有錯(cuò)誤。錯(cuò)誤多少與程序質(zhì)量有關(guān)。即使這樣,調(diào)試通過也不能證明系統(tǒng)絕對(duì)無(wú)誤,只不過說明各模塊、各子系統(tǒng)的功能和運(yùn)行情況正常,相互之間連接無(wú)誤,系統(tǒng)交付用戶使用以后,在系統(tǒng)的維護(hù)階段仍有可能發(fā)現(xiàn)少量錯(cuò)誤并進(jìn)行糾正,這也是正常的。

4.1測(cè)試

1).顯示的主菜單界面:

圖4.1(1)主菜單界面 2).添加界面:

圖4.1(2)添加界面 3).顯示界面:

圖4.1(3)顯示界面 4).刪除界面:

圖4.1(4)刪除前界面 刪除后,通訊錄里的顯示記錄:

圖(4)刪除后界面 5).查詢界面:以姓名查詢方式為例:

圖4.1(5)查詢界面

6).修改界面:

圖4.1(6)修改前界面 修改后,通訊錄里的顯示記錄:

圖4.1(6)修改后界面 7).保存界面:

圖4.1(7)保存界面

文件截圖:

圖4.1文件截圖

4.2問題思考與調(diào)試:

1.當(dāng)我在進(jìn)行刪除、查詢、修改、保存等功能時(shí),以查詢?yōu)槔斎朊职椿剀嚭螅m然會(huì)顯示該人的所有記錄,但是顯示后,它馬上自動(dòng)消失了,還沒來得及等我看內(nèi)容。因此,向別人請(qǐng)教后,在一些地方加入了system(“pause”);這個(gè)語(yǔ)言,用來對(duì)某項(xiàng)操作完成后進(jìn)行暫停。

2.現(xiàn)在這個(gè)程序的界面?zhèn)€人感覺很清爽。但在最初,每次進(jìn)行一項(xiàng)操作,運(yùn)行窗口里的內(nèi)容會(huì)一直保留著,感覺很雜亂,如下圖(添加后,進(jìn)行顯示操作):

圖4.2分析圖

之后,我去網(wǎng)上尋求解決辦法,知道可以使用system(“cls”);這一語(yǔ)句可以解決這個(gè)問題,最后,修改成功。5總結(jié)

這次的程序?qū)嵲O(shè)計(jì)實(shí)驗(yàn)是對(duì)我們進(jìn)入大學(xué)以來學(xué)習(xí)程序設(shè)計(jì)語(yǔ)言結(jié)果的一次大檢驗(yàn)。自己動(dòng)手,自己發(fā)現(xiàn)和解決問題。發(fā)現(xiàn)了自己的許多不足。平時(shí)沒有掌握好的知識(shí)在這次實(shí)驗(yàn)中徹底暴露出來,經(jīng)過不斷思考,不斷查閱資料和上機(jī)運(yùn)行,解決其中大部分問題,當(dāng)然還存在一些問題沒有解決。我相信在以后的學(xué)習(xí)能夠解決好它們。但是,收獲還是不小的,我不僅對(duì)c的操作有了進(jìn)一步的掌握,還了解到了程序設(shè)計(jì)的書寫風(fēng)格及其注釋的格式。

當(dāng)我選擇通訊錄這個(gè)題目時(shí),一開始想運(yùn)用大量鏈表及指針來完成,但是在慢慢琢磨之后,覺得這個(gè)不一定要用鏈表,于是改變了編程思路。當(dāng)然還有不少文件的讀寫問題,不過還是通過不斷測(cè)試之后順利解決了。另外一點(diǎn)要說的就是這個(gè)程序用了很多的循環(huán),因此對(duì)于循環(huán)的控制要十分小心,有時(shí)while和do-while的區(qū)別也是十分重要的。

還有一點(diǎn)體會(huì)就是,書上和老師教的內(nèi)容是有限的,我們需要不斷地靠自己去學(xué)習(xí),向他人請(qǐng)教,了解和掌握更多的知識(shí),這樣我們才能編出更好的c程序。

總體來說,這次c語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)還是比較成功的,雖然最終程序還存在一些不足,但能取得這樣的成績(jī)我還是比較高興的。

最后,要感謝學(xué)校為我們提供這次實(shí)驗(yàn)機(jī)會(huì),也要感謝老師的教導(dǎo)和好心人對(duì)我的幫助與支持。

參考文獻(xiàn)

[1]譚浩強(qiáng),張基溫。c語(yǔ)言程序設(shè)計(jì)教程。第三版。北京:高等教育出版社,2006 [2]譚浩強(qiáng),張基溫。c語(yǔ)言習(xí)題集與上機(jī)指導(dǎo)。第三版。北京:高等教育出版社,2006 [3]譚浩強(qiáng)。c程序設(shè)計(jì)(第三版)。北京:清華大學(xué),2005 [4]譚浩強(qiáng)。c程序設(shè)計(jì)(第二版)。北京:清華大學(xué),1999 [5]林建秋,韓靜萍,等.c語(yǔ)言程序設(shè)計(jì)【m】.電子工業(yè)出版社,2004.[6]譚浩強(qiáng).c語(yǔ)言程序設(shè)計(jì)【m】.清華大學(xué)出版社,2006.[7]黃維通.c語(yǔ)言設(shè)計(jì)教程.清華大學(xué)出版社,2005.[8]王成瑞.c語(yǔ)言程序設(shè)計(jì).中國(guó)水利水電出版社,2005.[9]張基溫.c語(yǔ)言程序設(shè)計(jì)案例教程.清華大學(xué)出版社,2004.[10]蘇小紅,陳惠鵬.c語(yǔ)言大學(xué)實(shí)用教程【m】.電子工業(yè)出版社,2007.致

在這里我要感謝楊書鴻老師,她對(duì)我進(jìn)行了無(wú)私的指導(dǎo)和幫助,不厭其煩的幫助進(jìn)行論文的修改和改進(jìn)。另外,在校圖書館查找資料的時(shí)候,圖書館的老師也給我提供了很多方面的支持與幫助。在此向幫助和指導(dǎo)過我的各位老師表示最中心的感謝!感謝這篇論文所涉及到的各位學(xué)者,如果沒有各位學(xué)者的研究成果的幫助和啟發(fā),我將很難完成本篇論文的寫作。感謝我的同學(xué)和朋友,在我寫論文的過程中給予我很多素材,還在論文的撰寫和排版等過程中提供熱情的幫助。由于我的學(xué)術(shù)水平有限,所寫論文難免有不足之處,懇請(qǐng)各位老師和學(xué)友批評(píng)和指正!

程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)篇三

課 程 設(shè) 計(jì) 任 務(wù) 書

c語(yǔ)言課程設(shè)計(jì)

(部)

業(yè)

級(jí)

學(xué)生姓名

學(xué)

號(hào)

06 月

信息科學(xué)與電氣工程學(xué)院

計(jì)算機(jī)科學(xué)與技術(shù)

計(jì)職141

王雪

140819139 日至

07 月

04 日

周 指導(dǎo)教師

長(zhǎng)

2015 年 6月 23日

一、課程設(shè)計(jì)目的

將理論教學(xué)中涉及到的知識(shí)點(diǎn)貫穿起來,對(duì)不同的數(shù)據(jù)類型、程序控制結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)作一比較和總結(jié),結(jié)合設(shè)計(jì)題目進(jìn)行綜合性應(yīng)用,對(duì)所學(xué)知識(shí)達(dá)到融會(huì)貫通的程度。通過課程設(shè)計(jì),學(xué)生在下述各方面的能力應(yīng)該得到鍛煉:

(1)進(jìn)一步鞏固、加深學(xué)生所學(xué)專業(yè)課程《c++程序設(shè)計(jì)語(yǔ)言》的基本理論知識(shí),理論聯(lián)系實(shí)際,進(jìn)一步培養(yǎng)學(xué)生綜合分析問題,解決問題的能力。

(2)全面考核學(xué)生所掌握的基本理論知識(shí)及其實(shí)際業(yè)務(wù)能力,從而達(dá)到提高學(xué)生素質(zhì)的最終目的。

(3)利用所學(xué)知識(shí),開發(fā)小型應(yīng)用系統(tǒng),掌握運(yùn)用c++語(yǔ)言編寫調(diào)試應(yīng)用系統(tǒng)程序,訓(xùn)練獨(dú)立開發(fā)應(yīng)用系統(tǒng),進(jìn)行數(shù)據(jù)處理的綜合能力。

(4)對(duì)于給定的設(shè)計(jì)題目,如何進(jìn)行分析,理清思路,并給出相應(yīng)的數(shù)學(xué)模型。

(5)掌握結(jié)構(gòu)化程序設(shè)計(jì)方法,熟悉面向?qū)ο蟪绦蛟O(shè)計(jì)方法。(6)熟練掌握c++語(yǔ)言的基本語(yǔ)法,靈活運(yùn)用各種數(shù)據(jù)類型。(7)進(jìn)一步掌握在集成環(huán)境下如何調(diào)試程序和修改程序。設(shè)計(jì)功能

錄入聯(lián)系人信息(包括姓名、電話號(hào)碼、地址等信息);通訊錄管理系統(tǒng)要求實(shí)現(xiàn)以下功能:

1、輸入每一位聯(lián)系人記錄,將其信息存入文件中。

2、查詢所有聯(lián)系人的信息,并按可選的自定義規(guī)則進(jìn)行排序;

3、記錄修改,將修改的記錄信息保存于文件中。設(shè)計(jì)要求

1、設(shè)一個(gè)通信錄由以下幾項(xiàng)數(shù)據(jù)信息構(gòu)成: 數(shù)據(jù)項(xiàng) 類型

姓名 字符串

地址 字符串

郵政編碼 字符串

電話號(hào)碼 字符串

試為通信錄數(shù)據(jù)定義類型和定義通信錄變量,實(shí)現(xiàn)功能:存取、顯示、刪除記錄、查詢記錄等功能。

2、要求:界面友好,易于操作 總體設(shè)計(jì) 系統(tǒng)功能模塊圖:

添加:可以添加通訊錄記錄,依次輸入編號(hào)、姓名、年齡、電話號(hào)碼、通訊地址、電子郵箱等后,會(huì)提示是否繼續(xù)添加。

顯示:可以以表格形式輸出所有通訊錄里的記錄

刪除:輸入欲刪除的那個(gè)人的名字后,會(huì)自動(dòng)刪除他(她)的記錄內(nèi)容 查詢:可以選擇用姓名、電話、地址三種方式查詢

修改:輸入欲修改的那個(gè)人的名字后,再依次輸入編號(hào)、姓名、年齡、電話號(hào)碼、通訊地址、電子郵箱即可完成修改

保存:,輸入文件名(帶后綴名)后,即可將通訊錄信息保存到文件

課程設(shè)計(jì)名稱及內(nèi)容

課程設(shè)計(jì)名稱:?jiǎn)雾?xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)

設(shè)計(jì)內(nèi)容:設(shè)計(jì)并實(shí)現(xiàn)一個(gè)單項(xiàng)選擇題標(biāo)準(zhǔn)化考試系統(tǒng)。該系統(tǒng)可以完成試題錄入、試題抽取、自動(dòng)判卷等功能。

任務(wù)和要求

功能要求:

(1)用文件保存試題庫(kù)。(每個(gè)試題包括題干、4個(gè)備選答案、標(biāo)準(zhǔn)答案)(2)試題錄入:可隨時(shí)增加試題到試題庫(kù)中

(3)試題抽取:每次從試題庫(kù)中可以隨機(jī)抽出n道題(n由鍵盤輸入)(4)答題:用戶可實(shí)現(xiàn)輸入自己的答案

(5)自動(dòng)判卷:系統(tǒng)可根據(jù)用戶答案與標(biāo)準(zhǔn)答案的對(duì)比實(shí)現(xiàn)判卷并給出成績(jī)。

(二)其它要求:

(1)只能使用c/c++語(yǔ)言,源程序要有適當(dāng)?shù)淖⑨專钩绦蛉菀组喿x(2)至少采用文本菜單界面(如果能采用圖形菜單界面更好)(3)學(xué)生可自動(dòng)增加新功能模塊(視情況可另外加分)

主要知識(shí)點(diǎn)

l 面向?qū)ο蟪绦蛟O(shè)計(jì)方法

l 界面制作,switch的應(yīng)用。l 類和對(duì)象。l 動(dòng)態(tài)數(shù)組(鏈表)類模板。l 文件的讀寫。

五、其他

程序設(shè)計(jì)可在microsoft vc++6.0、borland c++ builder環(huán)境下進(jìn)行。

六、參考資料

【1】《c語(yǔ)言程序設(shè)計(jì)》,譚浩強(qiáng)編,清華大學(xué)出版社,2008年 出版 【2】《c語(yǔ)言程序設(shè)計(jì)》,吳明發(fā)編,北京理工大學(xué)出版社,2007年出版 【3】《c語(yǔ)言參考手冊(cè)》邱仲潘 機(jī)械工業(yè)出版社,2004年出版

【4】《c語(yǔ)言課程設(shè)計(jì)案例精編》 姜靈之 清華大學(xué)出版社 2008年出版

詳細(xì)設(shè)計(jì)(1).通訊錄: 主要代碼

#include

#include

#include

struct student

//結(jié)構(gòu)體 {

};class inter { private: student st[35];char no[13];char name[20];char address[100];char tel_no[12];char post_code[7];char e_mail[40];public: void add(char no[13],char name[20],char address[100],char tel_no[12],char post_code[7],char e_mail[40]);

void del(char name[20]);void find1(char no[13]);void find2(char name[20]);void list1();void list2();int correct(char name[20]);void read();void write();void format();int back(){

cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

} void print(int i){

cout<<“學(xué)號(hào):”<

>back;if(back=='r'||back=='r')return 1;else return 0;

};

} cout<<“電話號(hào)碼:”<

inter a;();char select1;cout<

計(jì)職141

” <

<<“tt★★★★★★★★★★★★★★★★★★★★★★★★★★” <

※” <

通 迅 錄

※” <

※” <

※” <

※” <

※” <

<<“tt

”<

<<“ttt選擇 :”;cin>>select1;

switch(select1){ case '1':cout<<“

(1)添加:”<

cout<<“

(2)刪除:”<

(3)修改:”<

請(qǐng)選擇:”<

>select2;switch(select2){ case '1':cout<<“

輸入添加的資料:”<

char name[20];

char address[100];

char tel_no[12];

char post_code[7];

char e_mail[40];

cout<<“

輸入學(xué)號(hào):”<

>no;cout<<“

輸入姓名:”<

>name;cout<<“

輸入地址:”<

>address;cout<<“

輸入電話號(hào)碼:”<

>tel_no;cout<<“

輸入郵編:”<

>post_code;

cout<<“

輸入e_mail:”<

>e_mail;(no,name,address,tel_no,post_code,e_mail);

cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

char back_add;cin>>back_add;if(back_add=='r'||back_add=='r')goto top;else goto bottom;break;case '2':cout<<“

輸入要?jiǎng)h除人的姓名:”<

char name2[20];cin>>name2;(name2);

cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

char back_del;cin>>back_del;if(back_del=='r'||back_del=='r')goto top;else goto bottom;break;case '3':cout<<“

輸入需要修改人的姓名:”<

char name3[20];cin>>name3;if(t(name3))

} goto top;else goto bottom;break;break;case '2':cout<<“

(1)根據(jù)姓名查找”<

cout<<“

(2)根據(jù)學(xué)號(hào)查找”<

請(qǐng)選擇: ”;cin>>select3;switch(select3){ case '1':char name4[20];

cout<<“

輸入姓名: ”;cin>>name4;2(name4);

cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

char back_f1;cin>>back_f1;if(back_f1=='r'||back_f1=='r')goto top;else goto bottom;break;case '2':char no4[13];cout<<“

輸入學(xué)號(hào): ”;cin>>no4;

1(no4);

cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

} break;char back_f2;cin>>back_f2;if(back_f2=='r'||back_f2=='r')goto top;else goto bottom;break;case '3':();cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

char back_w;cin>>back_w;if(back_w=='r'||back_w=='r')goto top;else goto bottom;break;case '4':cout<<“

(1)按學(xué)號(hào)排序:”<

cout<<“

(2)按姓名排序:”<

請(qǐng)選擇:”;char select4;cin>>select4;switch(select4){ case '1':1();

cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

char back;cin>>back;if(back=='r'||back=='r')goto top;else goto bottom;break;case '2':2();

cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

} break;char back1;cin>>back1;if(back1=='r'||back1=='r')goto top;else goto bottom;break;case '5':();cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

char back_r;cin>>back_r;if(back_r=='r'||back_r=='r')

goto top;else goto bottom;break;case '6':cout<<“

請(qǐng)確認(rèn)刪除所有資料!(y/n)

”;

char select5;cin>>select5;if(select5=='y'||select5=='y')();cout<<“

返回還是回到主菜單(t為退出,r為回到主菜單,不計(jì)大小寫):

”;

} char back_f;cin>>back_f;if(back_f=='r'||back_f=='r')goto top;else goto bottom;break;bottom:cout<<“

★★★★★★★★★★★★歡迎使用本軟件!★★★★★★★★★★★

”<

void inter::add(char no[13],char name[20],char address[100],char tel_no[12],char post_code[7],char e_mail[40]){ int x=1;for(int i=0;i<35;i++)return 0;

} {

} if(!strcmp(st[i].no,“0”)){

} if(x==0)break;strcpy(st[i].address,address);strcpy(st[i].e_mail,e_mail);strcpy(st[i].name,name);strcpy(st[i].no,no);strcpy(st[i].post_code,post_code);strcpy(st[i].tel_no,tel_no);x=0;//刪除聯(lián)系人

void inter::del(char name[20]){

int x=1;for(int i=0;i<35;i++){ if(!strcmp(st[i].name,name)){

strcpy(st[i].address,“0”);

strcpy(st[i].e_mail,“0”);strcpy(st[i].name,“0”);strcpy(st[i].no,“0”);strcpy(st[i].post_code,“0”);strcpy(st[i].tel_no,“0”);

}

} } else x=0;if(x==0)cout<<“

error:輸入姓名錯(cuò)誤!”<

int inter::correct(char name[30]){

int x;for(int i=0;i<35;i++){

} char select;cout<<“

(1)修改姓名:”<

(2)修改學(xué)號(hào):”<

(3)修改地址:”<

(4)修改郵編:”<

(5)修改電話號(hào)碼:”<

(6)修改e_mail:”<

請(qǐng)選擇:”;cin>>select;switch(select){ case '1':cout<<“

輸入要修改的姓名:”;char name1[30];if(!strcmp(st[i].name,name))x=i;

cin>>name1;strcpy(st[x].name,name1);cout<<“

修改成功!”<

輸入要修改的學(xué)號(hào):”;

char no1[13];cin>>no1;strcpy(st[i].no,no1);cout<<“

修改成功!”<

輸入要修改的地址:”;

char address1[100];cin>>address1;strcpy(st[x].address,address1);cout<<“

修改成功!”<

輸入要修改的郵編:”;

char post_code1[7];cin>>post_code1;strcpy(st[x].post_code,post_code1);cout<<“

修改成功!”<

輸入要修改的電話號(hào)碼:”;char tel_no1[12];

cin>>tel_no1;strcpy(st[x].tel_no,tel_no1);cout<<“

修改成功!”<

輸入要修改的e_mail:”;

char e_mail1[40];

cin>>e_mail1;

strcpy(st[x].e_mail,e_mail1);

cout<<“

修改成功!”<

return back();

break;} } //按學(xué)號(hào)查詢聯(lián)系人

void inter::find1(char no[13]){ int x,y=1,z=1;for(int i=0;i<35;i++){

if(!strcmp(st[i].no,no))

{

x=i;

z=0;

}

else y=0;

if(z==0)break;

}

if(y==0)cout<<“

輸入的學(xué)號(hào)查找不到!!”<

print(x);} //按姓名查詢聯(lián)系人

void inter::find2(char name[20]){

} //讀取文件 void inter::read(){ int x,y=1,z=1;for(int i=0;i<35;i++){

} if(y==0)cout<<“

輸入的姓名查找不到!!”<

} else y=0;if(z==0)break;x=i;z=0;

print(x);

char name1[20];cout<<“

輸入你要導(dǎo)入的文件名: ”;cin>>name1;strcat(name1,“.txt”);ifstream file(name1);char line[120];char no[120];char name[120];char address[120];char post_code[120];char tel_no[120];char e_mail[120];int time=0;e(line,120);while(!()){

for(int k=0;k<35;k++){

if(time==0){ strcpy(no,line);time=1;for(int i=0;i<120;i++){

if(no[i]==':'){ i++;for(int j=0;j<13;j++)

}

} {

}

st[k].no[j]=no[i];i++;e(line,120,'n');} if(time==1){

} if(time== 2){ strcpy(name,line);time=2;

for(int i=0;i<120;i++){

} e(line,120,'n');if(name[i]==':'){

} i++;for(int j=0;j<20;j++){

}

st[k].name[j]=name[i];i++;

} strcpy(address,line);time=3;for(int i=0;i<120;i++){

} e(line,120,'n');if(address[i]==':'){

} i++;for(int j=0;j<100;j++){

}

st[k].address[j]=address[i];i++;if(time==3){

strcpy(tel_no,line);time=4;for(int i=0;i<120;i++){

if(tel_no[i]==':'){

i++;for(int j=0;j<12;j++){

st[k].tel_no[j]=tel_no[i];

}

}

} }

i++;e(line,120,'n');

if(time==4){

} if(time==5){ strcpy(e_mail,line);strcpy(post_code,line);time=5;for(int i=0;i<120;i++){

} e(line,120,'n');if(post_code[i]==':'){

} i++;for(int j=0;j<7;j++){

}

st[k].post_code[j]=post_code[i];i++;

}

}

} } time=0;for(int i=0;i<120;i++){

} e(line,120,'n');if(e_mail[i]==':'){

} i++;for(int j=0;j<40;j++){

}

st[k].e_mail[j]=e_mail[i];i++;

();//寫入文件 void inter::write(){

char name[20];cout<<“

輸入要保存的文件名

”;cin>>name;strcat(name,“.txt”);ofstream savefile(name);for(int i=0;i<35;i++)

} {

} save();savefile << “學(xué)號(hào):”<

savefile << “姓名:”<

savefile << “地址:”<

savefile << “電話號(hào)碼:”<

savefile << “郵編:”<

savefile << “e_mail:”<

strcpy(no,st[j].no);strcpy(st[j].no,st[j+1].no);for(int i=0;i<34;i++){

for(int j=0;j<35-i;j++){

if(strcmp(st[j].no,st[j+1].no)>0){ char no[13];

char name[20];

char address[100];

char tel_no[12];

char post_code[7];

char e_mail[40];

strcpy(st[j+1].no,no);

strcpy(name,st[j].name);strcpy(st[j].name,st[j+1].name);strcpy(st[j+1].name,name);

strcpy(address,st[j].address);

} for(int k=0;k<35;k++){ int x=0;if(strcmp(st[k].no,“0”))

}

} strcpy(st[j].address,st[j+1].address);strcpy(st[j+1].address,address);

strcpy(tel_no,st[j].tel_no);strcpy(st[j].tel_no,st[j+1].tel_no);strcpy(st[j+1].tel_no,tel_no);

strcpy(post_code,st[j].post_code);strcpy(st[j].post_code,st[j+1].post_code);strcpy(st[j+1].post_code,post_code);

strcpy(e_mail,st[j].e_mail);strcpy(st[j].e_mail,st[j+1].e_mail);strcpy(st[j+1].e_mail,e_mail);

{

} if(x==1){ cout<

} } } //按姓名排序 void inter::list2(){

for(int i=0;i<34;i++){

for(int j=0;j<35-i;j++){

if(strcmp(st[j].name,st[j+1].name)>0){ char no[13];

char name[20];

char address[100];

char tel_no[12];

char post_code[7];

char e_mail[40];

strcpy(no,st[j].no);strcpy(st[j].no,st[j+1].no);strcpy(st[j+1].no,no);

strcpy(name,st[j].name);strcpy(st[j].name,st[j+1].name);strcpy(st[j+1].name,name);

strcpy(address,st[j].address);

} for(int k=0;k<35;k++){

}

} strcpy(st[j].address,st[j+1].address);strcpy(st[j+1].address,address);

strcpy(tel_no,st[j].tel_no);strcpy(st[j].tel_no,st[j+1].tel_no);strcpy(st[j+1].tel_no,tel_no);

strcpy(post_code,st[j].post_code);strcpy(st[j].post_code,st[j+1].post_code);strcpy(st[j+1].post_code,post_code);

strcpy(e_mail,st[j].e_mail);strcpy(st[j].e_mail,st[j+1].e_mail);strcpy(st[j+1].e_mail,e_mail);

}

} int x=0;if(strcmp(st[k].no,“0”)){

} if(x==1){

} cout<

void inter::format(){

} for(int i=0;i<35;i++){

} strcpy(st[i].address,“0”);strcpy(st[i].e_mail,“0”);strcpy(st[i].name,“0”);strcpy(st[i].no,“0”);strcpy(st[i].post_code,“0”);strcpy(st[i].tel_no,“0”);

(2).工作流程圖:

1.通訊錄主界面

2.添加:添加通訊錄記錄

3.顯示:查詢通訊錄記錄

4.刪除:刪除通訊錄記錄

5.修改:修改通訊錄記錄

小結(jié)(收獲和建議)這次的程序?qū)嵲O(shè)計(jì)實(shí)驗(yàn)是對(duì)我們進(jìn)入大學(xué)以來學(xué)習(xí)程序設(shè)計(jì)語(yǔ)言結(jié)果的一次大檢驗(yàn),面對(duì)許多不懂得知識(shí),通過他人的幫助,以及參考他人的成果,自己動(dòng)手嘗試,修改等,才完成。這個(gè)課程設(shè)計(jì),花費(fèi)了我近兩個(gè)星期的時(shí)間,這也是因?yàn)闀静皇煜ぁMㄟ^這次設(shè)計(jì),使我對(duì)《c語(yǔ)言》這門課程有了更深一步的了解。它不僅是計(jì)算機(jī)程序設(shè)計(jì)的重要理論技術(shù)基礎(chǔ),也在我們電子與信息專業(yè)的學(xué)習(xí)中占據(jù)著十分重要的地位。同時(shí)也使我們知道,要學(xué)好這門課程,僅學(xué)習(xí)書本上的知識(shí)是不夠的,還要有較強(qiáng)的實(shí)踐能力。因?yàn)槲覀儗W(xué)習(xí)知識(shí)就是為了實(shí)踐。而只有多實(shí)踐,多編寫程序,才能更好的理解與掌握書本上的東西。利用計(jì)算機(jī)來編寫程序,也讓我感受到了編程的樂趣,極大的激發(fā)了我的興趣。

程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)篇四

#include

#include

#include

#include

#include

#include

class information {

char name[20];

char tel[12];

char kind;

char email[50];public:

information(){}

information(char n[],char t[],char k,char e[])

{

strcpy(name,n);

strcpy(tel,t);

kind=k;

strcpy(email,e);

}

friend void main();};void main(){

cout<<“☆★☆★☆★☆★☆★☆”<

cout<<“

菜單

n”;

cout<<“---------------------”<

cout<<“1 信息錄入n”<<“2 按姓名查找n”<<“3 修改n”<<“6 刪除n”<<“0 退出n”;

cout<<“請(qǐng)選擇: ”;

char p;char w;

information *s[16];

ofstream *file[16];

ofstream *file2[30];

int i=0;

int j2=0;

int j=0;

bool flag2=0;

do

{

cin>>p;

if((p>='0'&&p<='8'))

flag2=1;

按類別查找n“<<”4 插入n“<<”5

else

cout<<“指令錯(cuò)誤!請(qǐng)重新輸入:”<

}while(flag2==0);

do{

switch(p)

{

case '1':

{

char c;

char name[20];char tel[12];char kind;char email[50];

do{

bbb:

cout<<“請(qǐng)輸入姓名”<

cin>>name;

cout<<“請(qǐng)輸入電話號(hào)碼:”<

cin>>tel;

eee:

cout<<“請(qǐng)輸入類別(a辦公類b個(gè)人類c商務(wù)類):”<

cin>>kind;

if(kind!='a'&&kind!='b'&&kind!='c')

{

cout<<“類別錯(cuò)誤,請(qǐng)重輸”;

goto eee;

}

cout<<“請(qǐng)輸入電子郵箱:”<

cin>>email;

file[j]=new ofstream(“d: ”,ios::ate);

*file[j]<<“姓名”<

j++;

s[i]=new information(name,tel,kind,email);

for(int y=0;y

{

if(strcmp(s[y]->tel,s[i]->tel)==0)

{cout<<“輸入重復(fù)電話號(hào)碼,請(qǐng)重輸!”<

goto bbb;}

}

for(int u=0;u

{

if(strcmp(s[u]->name,s[i]->name)==0)

{

cout<<“輸入重名,請(qǐng)重輸!”<

goto bbb;

}} i++;if(i==15){

cout<<“內(nèi)存已滿,無(wú)法錄入!”<

break;

}

cout<<“數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)”<

cin>>c;

flag2=0;

do

{

if(c!='y'&&c!='n')

{

cout<<“指令錯(cuò)誤!請(qǐng)重新輸入!”<

cin>>c;

}

else

flag2=1;

}while(flag2==0);

}while(c=='y');

break;

}

case '2':

{

char n[20];int j=0;char c;

do{

int flag=0;

cout<<“請(qǐng)輸入你要查詢的人員姓名”<

cin>>n;

for(int j=0;j

{

if(strcmp(n,(*s[j]).name)==0)

{

flag=1;

cout<<“您要查詢的是:”<<(*s[j]).name<

cout<<“電話號(hào)碼 ”<<(*s[j]).tel<

}

}

if(flag==0)

cout<<“對(duì)不起!您要查詢的人不存在!”<

cout<<“您想繼續(xù)查詢嗎?(y/n)”<

cin>>c;

if(c!='y'&&c!='n')

{

cout<<“指令錯(cuò)誤!請(qǐng)重新輸入!”<

cin>>c;

}

}

while(c=='y');

break;

}

case '3':

{

char k;int j=0;char c;

do{

int flag=0;

cout<<“請(qǐng)輸入你要查詢的類別”<

cin>>k;

for(int j=0;j

{

if(k==(*s[j]).kind)

{

flag=1;

cout<<“您要查詢的是:”<<(*s[j]).name<

cout<<“電話號(hào)碼 ”<<(*s[j]).tel<

}

}

if(flag==0)

cout<<“對(duì)不起!您要查詢的不存在!”<

cout<<“您想繼續(xù)查詢嗎?(y/n)”<

cin>>c;

if(c!='y'&&c!='n')

{

cout<<“指令錯(cuò)誤!請(qǐng)重新輸入!”<

cin>>c;

}

}

while(c=='y');

break;

}

case '4':

{

char name[20];char tel[12];char kind;char email[50];

char c;int j=0;

do

{

aaa:

cout<<“請(qǐng)輸入您要插入的人的姓名:”<

cin>>name;

cout<<“請(qǐng)輸入電話號(hào)碼:”<

cin>>tel;

cout<<“請(qǐng)輸入類別(a辦公類b個(gè)人類c商務(wù)類):”<

fff:

cin>>kind;

if(kind!='a'&&kind!='b'&&kind!='c')

{cout<<“類別錯(cuò)誤,請(qǐng)重輸”;

goto fff;}

cout<<“請(qǐng)輸入電子郵箱:”<

cin>>email;

file[j]=new ofstream(“d: ongxunlu”,ios::ate);

*file[j]<<“姓名”<

j++;

s[i]=new information(name,tel,kind,email);

for(int y=0;y

{

if(strcmp(s[y]->tel,s[i]->tel)==0)

{cout<<“輸入重復(fù)電話號(hào)碼,請(qǐng)重輸!”<

goto aaa;}}

for(int u=0;u

{

if(strcmp(s[u]->name,s[i]->name)==0)

{cout<<“輸入重名,請(qǐng)重輸!”<

goto aaa;}}

i++;

if(i==15||i==16)

{cout<<“內(nèi)存已滿,無(wú)法錄入!”<

cout<<“數(shù)據(jù)錄入成功,想繼續(xù)錄入嗎(y/n)”<

cin>>c;

if(c!='y'&&c!='n')

{

cout<<“指令錯(cuò)誤!請(qǐng)重新輸入!”<

cin>>c;

}

}while(c=='y');qqq:

break;

}

case '5':

{

char name[20];flag2=0;

char c;

do

{

cout<<“請(qǐng)輸入您要修改的人的姓名:”<

cin>>name;

for(int h=0;h

{

if(strcmp(name,s[h]->name)==0)

{

flag2=1;

cout<<“請(qǐng)輸入新的電話號(hào)碼:”<

cin>>s[h]->tel;

cout<<“請(qǐng)輸入新的類別(a辦公類b個(gè)人類c商務(wù)類):”<

cin>>s[h]->kind;

箱:“<

}

}

cout<<”請(qǐng)輸入新的電子郵cin>>s[h]->email;

cout<<“數(shù)據(jù)修改成功!”;

if(flag2==0)

{

cout<<“您要修改的人本來就不存在!請(qǐng)檢查重新輸入!”<

}

cout<<“想繼續(xù)修改嗎(y/n)”<

>c;

if(c!='y'&&c!='n'){

“<

}

case '6':

{

存在!請(qǐng)檢查輸入的正確性!”;

“<

cout<<”指令錯(cuò)誤!請(qǐng)重新輸入!

cin>>c;

} }while(c=='y');break;char name[20];bool flag3=0;char c;do{

cout<<“請(qǐng)輸入您要?jiǎng)h除的人的姓名:”<

cin>>name;

for(int h=0;h

{

if(strcmp(name,s[h]->name)==0)

{

flag3=1;

i--;

do{

s[h]=s[h+1];

h++;

}while(h<=i);

}

}

if(flag3==0)

cout<<“您要求刪除的對(duì)象本來就不

cout<<”要繼續(xù)刪除嗎?(y/n)“<

cin>>c;

if(c!='y'&&c!='n')

{

cout<<”指令錯(cuò)誤!請(qǐng)重新輸入!

cin>>c;

}

}while(c=='y');

break;

}

case '0':

{

exit(0);break;

}}

cout<<“您想繼續(xù)進(jìn)行其他操作嗎?(y/n)”<

bool flag4=0;

do

{

cin>>w;

if(w!='y'&&w!='n')

cout<<“指令錯(cuò)誤!請(qǐng)重新輸入!”<

else

flag4=1;

}while(flag4==0);

if(w=='y')

{

cout<<“※※※※※※※※※※n”<<“2 按姓名查找n”<<“3 按類別查找n”<<“4 插入n”<<“5 修改n”<<“6 刪除n”<<“0 退出n”;

cin>>p;}

else exit(0);}while(w=='y');for(int x=0;x

delete s[x];

cout<<“delete all members!”<

}

程序設(shè)計(jì)通訊錄管理系統(tǒng) 通訊錄管理系統(tǒng)python課程設(shè)計(jì)篇五

“學(xué)生通訊信息記錄系統(tǒng)”的設(shè)計(jì)與實(shí)現(xiàn)

一、設(shè)計(jì)要求

1.問題的描述

“學(xué)生通訊信息記錄系統(tǒng)”是為了實(shí)現(xiàn)快速的對(duì)學(xué)生信息進(jìn)行錄入、刪除、查找、顯示。各個(gè)功能靠函數(shù)實(shí)現(xiàn)。2.需求分析

(1)應(yīng)該包括以下功能:輸入信息、顯示信息、查找以姓名作為關(guān)鍵字、刪除信息(2)作為一個(gè)完整的系統(tǒng),應(yīng)具有友好的界面和較強(qiáng)的容錯(cuò)能力

二、概要設(shè)計(jì)

1.主界面設(shè)計(jì)

2.儲(chǔ)存結(jié)構(gòu)設(shè)計(jì)

本系統(tǒng)主要采用鏈表類型來表示儲(chǔ)存“學(xué)生信息記錄系統(tǒng)”中的信息。程序中定義了address結(jié)構(gòu)。其中,包括學(xué)生的姓名、宿舍信息和學(xué)號(hào)。3.系統(tǒng)功能的設(shè)計(jì)

1)輸入信息——enter();2)顯示信息———display();3)查找以姓名作為關(guān)鍵字 ———search();4)刪除信息———delete();

三、模塊設(shè)計(jì)

1.模塊設(shè)計(jì)

本成績(jī)包含兩個(gè)模塊:主程序模塊和鏈表操作模塊。2.系統(tǒng)的程序及功能設(shè)計(jì)

(1)插入學(xué)生信息

void enter()

/*輸入函數(shù),本函數(shù)循環(huán)輸入資料,當(dāng)輸入姓名為空時(shí)退出*/ {

struct address *info;

/*定義當(dāng)前結(jié)點(diǎn)*/

for(;;){

info=(struct address *)malloc(sizeof(struct address));

/*為當(dāng)前結(jié)點(diǎn)分配空間*/

if(!info)

{

printf(“n out of memory”);

exit(0);

/*如果分配空間失敗,退出程序*/

}

printf(“輸入空姓名結(jié)束:n”);

inputs(“請(qǐng)輸入 姓名:”,info->name,10);

if(!info->name[0])

break;

/*如果輸入姓名為空,結(jié)束循環(huán)*/

inputs(“請(qǐng)輸入

院系:”,info->street,50);

inputs(“請(qǐng)輸入宿舍樓:”,info->city,15);

inputs(“請(qǐng)輸入宿舍號(hào):”,info->state,15);

inputs(“請(qǐng)輸入

學(xué)號(hào):”,info->eip,7);

insert(info,&start,&last);

/*調(diào)用結(jié)點(diǎn)插入函數(shù)*/ } }

五、測(cè)試分析

1.輸入學(xué)生信息

4.刪除信息

5.退出

struct address *start;

/*首結(jié)點(diǎn)*/ struct address *last;

/*尾結(jié)點(diǎn)*/ struct address *find(char *);

/*聲明查找函數(shù)*/

void enter();

/*函數(shù)聲明*/ void search();void save();

void load();void list();void ddelete(struct address **start,struct address **last);void insert(struct address *i,struct address **start,struct address **last);void inputs(char *,char *,int);void display(struct address *);int menu_select(void);

void main(){

int c;

printf(“n

歡迎使用學(xué)生通訊錄系統(tǒng)”);

printf(“nn”);

printf(“t┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓n”);

printf(“t┃************************************************************┃n”);

printf(“t┃*

*

*┃n”);

printf(“t┃*

1.輸入信息

*

2.刪除信息

*┃n”);

printf(“t┃*

*

*┃n”);

printf(“t┃************************************************************┃n”);

printf(“t┃*

*

*┃n”);

printf(“t┃*

3.顯示信息

*

4.查找

*┃n”);

printf(“t┃*

*

*┃n”);

printf(“t┃************************************************************┃n”);

printf(“t┃

5.退出

┃ n”);

printf(“t┃************************************************************┃n”);

exit(0);

/*如果分配空間失敗,退出程序*/ }

printf(“輸入空姓名結(jié)束:n”);

inputs(“請(qǐng)輸入 姓名:”,info->name,10);

if(!info->name[0])break;

/*如果輸入姓名為空,結(jié)束循環(huán)*/

inputs(“請(qǐng)輸入

院系:”,info->street,50);

inputs(“請(qǐng)輸入宿舍樓:”,info->city,15);

inputs(“請(qǐng)輸入宿舍號(hào):”,info->state,15);

inputs(“請(qǐng)輸入

學(xué)號(hào):”,info->eip,7);

insert(info,&start,&last);

/*調(diào)用結(jié)點(diǎn)插入函數(shù)*/ }

void inputs(char *prompt,char *s,int count)

/*輸入函數(shù),有越界檢測(cè)功能*/ {

char p[255];

do }

i->next=null;

i->prior=null;

*last=i;

*start=i;

return;

}

else {

(*last)->next=i;

i->prior=*last;i->next=null;

*last=(*last)->next;

}

}

void ddelete(struct address **start,struct address **last)

/*刪除函數(shù)*/

{ struct address *info;

char s[80];

inputs(“請(qǐng)輸入 姓名:”,s,10);

/*輸入欲刪除結(jié)點(diǎn)的name域內(nèi)容*/

info=find(s);

if(info)

{

printf(“deleting......n”);if(*start==info)

點(diǎn)的下驅(qū)作為新的首結(jié)點(diǎn)(入口)*/

{ *start=info->next;

if(*start)(*start)->prior=null;

else *last=null;

}

else

結(jié)點(diǎn)*/

{

info->prior->next=info->next;

info=info->next;

}

printf(“未找到相關(guān)信息.n”);

return null;}

/*輸出整個(gè)鏈表*/ void list(void){ struct address *info;

info=start;

if(info==null)printf(“當(dāng)前記錄為空!”);else printf(“姓名t院系t宿舍樓t宿舍號(hào)t學(xué)號(hào)tn”);

while(info)

{

};display(info);if(info->next==null){break;} info=info->next;

printf(“nn”);}

/*查找函數(shù)*/

/*輸入欲查找的姓名*/ /*如果沒找到,顯示not found*/

/*如果找到,顯示該結(jié)點(diǎn)資料*/

七、用戶使用手冊(cè)

(1)本程序的執(zhí)行文件為“”。

(2)進(jìn)入本系統(tǒng)之后,隨即顯示系統(tǒng)住菜單界面。用戶可以在該界面下根據(jù)提示輸入并按回車鍵確定,執(zhí)行相應(yīng)的菜單命令。

(3)本系統(tǒng)可以對(duì)學(xué)生信息進(jìn)行錄入和刪除。

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)

課題:學(xué)生成績(jī)管理系統(tǒng)

姓名:孫軒宇

學(xué)號(hào):e01014316

專業(yè):計(jì)算機(jī)科技

院系:計(jì)科院

2010.10.8

班級(jí):10

全文閱讀已結(jié)束,如果需要下載本文請(qǐng)點(diǎn)擊

下載此文檔
你可能感興趣的文章
a.付費(fèi)復(fù)制
付費(fèi)獲得該文章復(fù)制權(quán)限
特價(jià):5.99元 10元
微信掃碼支付
已付款請(qǐng)點(diǎn)這里
b.包月復(fù)制
付費(fèi)后30天內(nèi)不限量復(fù)制
特價(jià):9.99元 10元
微信掃碼支付
已付款請(qǐng)點(diǎn)這里 聯(lián)系客服
主站蜘蛛池模板: 成年人免费黄色 | 国偷自产av一区二区三区麻豆 | 俺也来俺也去俺也射 | 韩国三级欧美三级国产三级 | 亚洲欧美成人中文日韩电影网站 | 中文av资源 | 欧美精品色视频 | 成人免费看片39 | 中文字幕无码av激情不卡 | 国产xxx6乱为| 四虎影视国产精品 | 亚洲丁香五月天缴情综合 | 国产永久免费视频 | 精品乱码一区二区三区 | 肉色丝袜足j视频国产 | 午夜丰满少妇性开放视频 | 91大神小宝寻花在线观看 | 叶玉卿三级露全乳视频 | 久久综合久久美利坚合众国 | 久久久久久毛片精品免费不卡 | 99re在线视频精品 | 久久精品视频在线看15 | 日韩人妻精品无码一区二区三区 | 一本久久综合亚洲鲁鲁五月天 | 国产乱码卡一卡2卡三卡四 国产精品国产三级国产专区53 | 亚洲精品综合欧美二区变态 | 玖玖精品在线 | 国产精品一区二av18款 | 亚洲精品欧洲 | 天天射天天干天天色 | 国产一区黄 | 亚洲精品国产一区二区精华液 | 国产一级特黄aa大片出来精子 | 色淫湿视频 | 娇小性xxxxx极品娇小小说 | 国内精品久久人妻互换 | 天堂av中文网 | 99国产精品入口 | 日本极品xnxxcom | 久操视频免费在线观看 | 日本人与禽zozzo小小的几孑 | b站永久免费看片大全 | 成人国产一区二区三区精品麻豆 | 午夜精品久久久久久久 | 午夜福利1000集在线观看 | 粉嫩av在线播放一绯色 | 人体做爰aaaa免费 | 日韩精品久久久久久免费 | 一性一交一伦一色一按—摩 | 亚洲不卡在线播放 | 久久精品tv | 99久久人妻无码精品系列 | 国语精品一区二区三区 | 亚洲另类激情综合偷自拍图 | 午夜激情网址 | 国产猛男猛女超爽免费视频网站 | 日韩av一区二区精品不卡 | 久久久久久久久久久久久大色天下 | 夜夜爱av | 久久久在线免费观看 | 日本裸体精油4按摩做爰 | 欧美在线亚洲 | av在线www | 久久精品店| 欧美日韩卡一卡二 | 天天躁日日躁狠狠躁欧美老妇小说 | 欧美日韩国产在线 | 五月婷六月丁香狠狠躁狠狠爱 | 欧美一区二区视频在线 | 精品一区二区在线播放 | 日韩精品免费一区二区三区 | 成人免费三p在线观看 | 久久久久久不卡 | 男女xx网站| 日本理论片在线 | 亚洲国产精品欧美久久 | 欧美一区综合 | 中文字幕超清在线观看 | 精品乱人码一区二区二区 | 91丨porny丨国产丝袜福利 | 国产激情视频在线播放 | 日本妞vs黑人巨大xxxxx | 中文字幕日韩欧美一区二区三区 | 亚洲男女av | 久久这里只有 | 亚洲中文字幕无码av永久 | 乡村美女户外勾搭av | 天天舔天天干 | 国产一级特黄,真人毛片 | 欧美成人午夜精品免费 | 96国产精品 | 久在线| 丝袜脚交国产在线观看 | 日本舌吻大尺度呻吟视频 | 五月丁香综合缴情六月小说 | 成人做爰69片免费看网站色戒 | 色偷偷一区二区无码视频 | 亚洲国产一区二区视频 | 最近中文字幕无免费 | 香蕉视频一区二区 | 加勒比久久综合 | 久久久精品视 | 97在线观看播放 | 日韩成人免费观看视频 | 福利一区二区视频 | a级黄色片 | 亚洲国产视频一区 | 亚洲欧美日韩国产精品一区午夜 | 懂色一区二区三区av片 | 青青草精品视频 | 狠狠色丁香婷婷综合欧美 | 中国xxx农村性视频 欧美寡妇xxxx黑人猛交 | 国产精品亚洲一区二区无码 | 日韩亚洲在线 | 国产精品青草综合久久久久99 | 日本一二三不卡视频 | 成人免费视频一区二区三区 | 欧美日韩免费高清 | 久久婷婷综合99啪69影院 | 久久亚洲综合网 | 亚洲综合无码明星蕉在线视频 | 国内露脸8mav | 天海翼一区| 51精品视频在线视频观看 | 情五月| 日日艹| 国产精品亚洲专区无码不卡 | 欧美黄色免费在线观看 | 日韩在线观看视频一区二区 | 日本中文字幕在线 | 屁屁影院,国产第一页 | 中文在线a√在线8 | 久久精品人人爽人人爽 | 69视频在线看 | 色视频欧美一区二区三区 | 女同精品一区二区三区在线播放器 | 久热免费视频 | 欧美成人二区 | 一级做a免费看 | 欧美又大又硬又粗bbbbb | 精品福利在线视频 | 国产黄色片视频 | 精品人妻系列无码人妻漫画 | 一本色道久久综合亚洲精品小说 | 99ri视频 | 国产av一区二区精品久久凹凸 | 九九热影院 | 中文字幕av一区二区三区人妻少妇 | 欧美激情第1页 | 操日本女人 | 曰本黄色片 | 久久精品夜色噜噜亚洲a∨ 久久精品一二三 | 久草在线免 | 久草福利资源 | 久久香蕉国产线熟妇人妻 | 色综合视频二区偷拍在线 | jizz 亚洲大全 | 又黄又爽又无遮挡免费的网站 | 久久99青青精品免费观看 | 亚洲a∨国产av综合av网站 | www.久久爱.com狼人 | 操你啦免费视频 | 日本男女激情视频 | 免费av成人| 91精品久久久久久久久青青 | 三上悠亚久久爱一区 | 少妇又紧又色又硬又爽 | 色偷偷亚洲 | 人妻美妇疯狂迎合系列视频 | 国产漂亮白嫩美女在线观看 | 日韩精品一区二区三区国语自制 | www.嫩草.com| 男人添女人下部高潮视频 | 日韩三级中文字幕 | 日本黄色美女视频 | 欧美大浪妇猛交饥渴大叫 | 亚洲精品一区二区在线 | av免费在线观看免费 | 欧美日本在线播放 | 国产精品美女一区 | 一卡二区| 黄色激情视频网站 | 真人毛片高清免费播放 | 每日在线更新av | 国产h自拍| 天天色棕合合合合合合合 | 欧美激情一区二区久久久 | 在线观看av的网址 | 亚洲精品久久久蜜桃 | 色网站观看 | 九色porny丨精品自拍视频 | 国产成人免费观看 | 精品国产一区二区国模嫣然 | 国产成人精品视频 | 欧美性猛交xxxx乱大交俱乐部 | 免费黄色av| 91精品国产欧美一区二区 | 操女网站 | 小罗莉极品一线天在线 | 亚洲大尺度无码无码专线一区 | 亚洲成av人片香蕉片 | 午夜夜伦鲁鲁片六度影院 | 久久成人人人人精品欧 | 美女撒尿无遮挡网站 | 五月激情婷婷综合 | 亚洲毛茸茸少妇高潮呻吟 | 欧美黑人xxxⅹ高潮交 | 久久婷婷五月综合97色直播 | 亚洲一线在线观看 | 亚洲国产成人一区 | av夜夜| 国产suv精品一区二人妻 | 成人免费无码大片a毛片抽搐 | 99精品国产九九国产精品 | 舒淇裸体午夜理伦 | 欧美做受高潮动漫 | 久久久久久久久久久久久久久久久久 | 五月丁香综合缴情六月小说 | 久久精品无码一区二区三区免费 | 中国精品久久 | 国产精品视频啪啪 | 色妞色综合久久夜夜 | 日韩高清片| 亚洲一区黄色 | 欧美另类在线视频 | 美女视频黄是免费 | 亚洲欧洲在线视频 | 好湿好紧太硬了我太爽了视频 | 玖玖爱免费视频 | 熟妇人妻无乱码中文字幕 | 亚洲综合色丁香婷婷六月图片 | 青青青国内视频在线观看软件 | 中国美女囗交视频 | 狠狠操天天操夜夜操 | 天堂а√在线中文在线新版 | 欧美成人自拍 | 激情图片区 | 亚洲国产一区二区a毛片 | 成人97| 肉色超薄丝袜脚交一区二区蜜av | xxx国产在线观看 | 久久综合久久综合久久 | av老司机福利 | 国产男女视频网站 | 无码专区3d动漫精品免费 | 可以免费看成人啪啪过程的软件 | 欧美xxxx性xxxxx高清 | 日韩一级黄色毛片 | 久久精品国产麻豆 | 91avcn| 欧美一区视频在线 | 中文字幕日本精品一区二区三区 | 草草影院第一页yycc.com | 欧美永久视频 | 日韩免费精品视频 | 黄色调教视频 | 超碰三级 | 日韩在线视频看看 | 色妞综合| 寂寞人妻瑜伽被教练日 | 狼人射综合 | 亚洲一区二区自拍偷拍 | 粉嫩av一区二区三区粉 | 免费一级做a爰片性视频 | 日产精品一区二区三区在线观看 | av无码不卡一区二区三区 | 91亚洲欧美 | 黄页网址大全免费观看 | 强制中出し~大桥未久在线 | 亚洲精品一区二区三区四区五区 | 国产精品欧美福利久久 | 国产精品久久国产精麻豆96堂 | 最新在线黄色网址 | 久久免费视频播放 | 欧美日韩v| 成熟少妇99av视频 | 色偷偷av | 成人羞羞国产免费 | 国产a∨精品一区二区三区不卡 | 成人软件在线观看 | 国产精品成人久久 | 天堂在线成人 | 久久99中文字幕 | 大伊香蕉精品一区视频在线 | 自拍偷拍在线播放 | 免费看a视频 | 亚洲国产精品久久人人爱 | 男女做爰猛烈叫床高潮的书 | 久久久久久久久久一毛喷水 | 久草中文在线视频 | 色avav色avav爱av亚洲 | 黄色片在线免费 | 美一女一无一伦一性一交 | www.狠狠操.com | 精品九九九| 天天操天天射天天爽 | 91爱爱影院 | 国产不卡毛片 | 国产精品色综合一区二区三区 | 欧美最顶级丰满的aⅴ艳星 欧美最黄视频 | 在线观看免费人成视频 | 亚洲一区二区三区av天堂 | 日本黄区免费视频观看 | 日本欧美一区二区三区在线播放 | 亚洲一区二区色 | 夜夜嗨av一区二区三区四季av | 精品视频久久久久 | a∨变态另类天堂无码专区 人妻丰满熟妇av无码区不卡 | 福利视频网址 | 国产真实夫妇交换视频 | xxxx黄色片| 精品人妻午夜一区二区三区四区 | 亚洲 欧美 国产 日韩 精品 | xox0人妖国产另类 | 成人免费视频免费观看 | 欧美乱妇高清无乱码 | 69网址| 国产精品日韩av在线播放 | 欧美在线成人影院 | 1000部拍拍拍18勿入免费视频下载 | 欧美日韩一区视频 | 午夜精品久久久久久久久久 | 在线免费观看成年人视频 | 少妇一级淫片 | 色接久久 | 国产男女性潮高清免费网站 | 伊人网91| 天天爱天天做天天爽夜夜揉 | 久久伊人蜜桃av一区二区 | 国产a级精品 | 藏精阁成人免费观看在线视频 | 国产91免费看 | 国内毛片毛片毛片毛片毛片 | 毛片的视频| 激情在线视频 | 动漫av纯肉无码av在线播放 | www日韩avcom| av网站的免费观看 | 视色影院 | 果冻传媒色av国产在线播放 | 日韩一区网站 | 草综合| 亚洲2022国产成人精品无码区 | 真实的国产乱xxxx在线91 | 91精品国产乱码久久桃 | 蜜桃网av| 中文幕无线码中文字夫妻 | 在线观看亚洲色图 | 久久99精品一区二区蜜桃臀 | 成人性调教91 | 青青草视频免费看 | 中韩无矿砖专区综合 | 欧美亚洲国产日韩 | 东北少妇白嫩bbwbbw | 狂野欧美性猛交xxxx | 亚洲一区二区三区在线观看视频 | 91人人揉日日捏人人看 | 亚洲影视在线 | 强行挺进皇后紧窄湿润小说 | 好了av四色综合无码 | 日日橹狠狠爱欧美二区免费视频 | 女色琪琪窝窝777777换脸 | 欧色图| 国产欧美在线观看不卡 | 亚洲伦理在线播放 | 久久久久人妻精品一区三寸 | 国产女人第一次做爰毛片 | 亚洲国产中文字幕在线 | 日本免费一区二区视频 | 日韩精品无玛区免费专区又长又大 | 亚洲精品国产一区黑色丝袜 | 久久久久久久久久久免费精品 | 久久77777| 国产激情在线视频 | 国产女爽123视频.cno | 日本免费视频 | 日本一本在线视频 | 乱肉合集乱高h久久爱 | 国产男女猛烈无遮挡a片漫画 | 黄色网占 | 丁香花在线影院观看在线播放 | 国产黄色片一级 | 97国产爽爽爽久久久 | 女人脱了内裤趴开腿让男躁 | 日韩午夜视频在线观看 | 精品久久免费视频 | 亚洲视频中文字幕在线观看 | 美女网站免费视频 | 91久久久久国产一区二区 | 一级α片免费看刺激高潮视频 | 中文字幕com | 久久中文骚妇内射 | 五月婷婷一区二区三区 | 日韩成人中文字幕 | 亚洲乱码国产乱码精品精小说 | 精品久久免费视频 | 久久精品专区 | 免费一级全黄少妇性色生活片 | 国产妇女馒头高清泬20p多 | 欧美日韩一区二区在线观看 | 小镇姑娘高清在线观看 | 免费人成视频在线观看视频 | 国产色在线 | 污网站在线观看免费 | 中文学幕专区 | 精品欧美久久 | 91麻豆精品国产91久久久无需广告 | 欧美裸体xxxx | 无码中文字幕日韩专区 | 日韩免费在线 | 久久人人爽人人爽人人片亞洲 | 亚洲男人第一无码av网站 | 婷婷伊人综合中文字幕 | 国内女人喷潮完整视频 | 岛国精品资源网站 | 苍井空浴缸大战猛男120分钟 | 日韩在线 | 中文 | 午夜三级做爰视频在线看 | 亚洲综合热 | av在线网址观看 | 日本乱码一区二区三区芒果 | 青娱乐在线视频免费观看 | 双腿张开被9个黑人调教影片 | 99久久婷婷国产综合亚洲 | 二级大黄大片高清在线视频 | 日韩av一 | 欧产日产国产蜜网站 | 亚洲天堂午夜 | 精品 日韩 国产 欧美 视频 | 精品国产亚洲第一区二区三区 | 91综合国产 | 欧美偷拍一区二区 | 国产一区日韩二区欧美三区 | 免费91网站 | 欧美日韩成人网 | 欧美成人不卡视频 | 伊人网视频在线观看 | 祝英台艳史高h(np)小说全文 | 天天做夜夜操 | 亚洲精品aaaa| 日韩精品久久久久久久软件91 | 国产一区二区视频在线 | 一级 黄 色 毛片 | 亚洲两性视频 | 乳霸冲田杏梨中文字幕担心学生的 | 国产69精品久久久久99尤物 | 在线 国产 欧美 亚洲 天堂 | 国语啪啪 | 亚洲va欧洲va国产va不卡 | 最新日本中文字幕 | 波多野结衣视频一区 | 国产美女91呻吟求 | 精品国产乱码久久久久久精东 | av激情在线| 日本免费在线观看视频 | 又黄又爽又色的免费网站 | 小莹浴室激情2 | 三级一区二区 | 99热2| 影音先锋女人av鲁色资源网久久 | 妲己艳史淫片免费看 | www色| 亚洲一区中文字幕永久在线 | 五月色婷婷亚洲精品制服丝袜1区 | 丝袜美腿中文字幕 | 消息称老熟妇乱视频一区二区 | 免费无码av片在线观看 | 免费看男女www网站入口在线 | 女人被弄到高潮的免费视频 | 粉嫩老牛aⅴ一区二区三区 粉嫩欧美一区二区三区 | 婷婷五月色综合 | 国产精品欧美激情在线 | 国产成人夜色高潮福利影视 | 美女扒开屁股让男人桶 | 欧美图片一区二区 | 成年人香蕉视频 | 91激情在线观看 | 精品综合久久88少妇激情 | 成人在线播放网站 | 久久久久久久久久99 | 色婷婷综合成人av | 曰韩黄色一级片 | 69色堂| 日韩影视一区 | 五月天丁香婷 | 99久久国语露脸精品国产 | 四虎1515hh海外永久免费 | 亚洲精品自在在线观看 | 国产精品欧美一区二区三区 | 久久999精品久久久有什么优势 | 精品偷拍被偷拍在线观看 | 亚洲二区视频 | 久草视频污 | 日韩欧美在线视频播放 | 国产在线超碰 | 久久精品一二三区 | www中文字幕com| 免费在线观看毛片 | 天海翼精品久久中文字幕 | 亚洲国产精品久久网午夜 | 97成人在线观看 | 亚洲综合在线第一页 | 99久久99久久精品免费看蜜桃 | 久久久精品久久日韩一区综合 | 草草影院第一页yycc.com | 国产全肉乱妇杂乱视频 | 亚洲人色婷婷成人网站在线观看 | 国产成人精品一区二区三区免费 | caoporn视频在线 | 慈禧一级淫片91 | 免费看毛片的网站 | 又色又爽无遮挡免费视频男男 | 久章草影院 | 日本男人天堂 | 粉嫩在线一区二区三区视频 | 亚洲色丰满少妇高潮18p | 国产午夜性春猛交ⅹxxx | 国产女人十八毛片 | 国产精品一级二级三级 | 免费 成 人 黄 色 网 | 欧洲av无码放荡人妇网站 | www国产精品内射熟女 | 黄色伊人 | 欧美资源 | 99草在线视频 | 无码人妻丰满熟妇片毛片 | 国产女人与拘做受视频9 | 国产亚洲欧美日韩俺去了 | 激情综合五月丁香亚洲 | 亚洲欧洲成人在线 | 国产肉丝袜在线观看 | 人妻精品久久久久中文字幕 | 四虎视频国产精品免费入口 | 亚洲啪啪aⅴ一区二区三区9色 | 日韩在线免费观看视频 | 男人的天堂在线视频 | 日韩福利网 | 亚洲网av | 欧美精品一区二区三区在线四季 | 国产精品久久久一区麻豆最新章节 | 91在线网| 能看av的网址 | 国产又粗又硬又大爽黄老大爷视 | 首页 亚洲 欧美 制服 丝腿 | 999精品免费视频 | 99久热在线精品996热是什么 | 日韩人妻精品无码一区二区三区 | 国产精品任我爽爆在线播放 | 在线视频观看一区二区 | 456av | 好吊妞精品视频 | 久久综合香蕉国产蜜臀av | 欧美特级黄色片 | 国产精品国产三级国产专区51区 | 99精品福利 | 97视频免费在线观看 | 无遮挡啪啪成人免费网站 | 国产成人久久久精品免费澳门 | 日日鲁鲁鲁夜夜爽爽狠狠视频97 | 亚洲中文字幕无码久久2017 | 黄色片一级毛片 | 日本69式三人交 | 国产精品国产片 | 国产免费播放 | 好紧好爽再进去一点在线视频 | 中文字幕日韩欧美一区二区 | 久久综合伊人77777麻豆 | 久久久a级片 | 一进一出抽搐gif | 亚洲精品欧美综合四区 | 色婷婷九月 | 日韩av手机在线观看 | 国产精品久久久久久久久久免费 | 国产免码va在线观看免费 | 久久爱影视i | 久久久网| 久久丫精品久久丫 | 少妇乳大丰满诱人2 | 91视频导航 | 一边添奶一边添p好爽视频 欧美 变态 另类 人妖 | 波多野结衣在线观看视频 | 欧美一二三四五区 | 丝袜美腿亚洲一区二区图片 | 成人性生交大片免费看r老牛网站 | 人妻少妇被粗大爽.9797pw | 婷婷成人基地 | 真人做爰免费毛片视频 | 成年人黄色片网站 | 中文字幕色偷偷人妻久久 | 国精品无码一区二区三区在线蜜臀 | 欧美xxxxx做受vr91九色 | 人妻少妇久久中文字幕一区二区 | 久久精品国产清自在天天线 | 一本色道久久88加勒比—综合 | 嫩草影院在线观看视频 | 色婷婷综合久久 | 91精品国产福利在线观看的优点 | 国产精品一区二区久久 | 污导航在线观看 | 毛片网站大全 | 免费在线观看中文字幕 | 中文在线√天堂 | 国产大片一区二区三区 | 亚洲美女屁股眼交3 | 欧美a图| 在线a久青草视频在线观看 无套内射极品少妇chinese | 一区二区三区国产亚洲网站 | 99久久综合狠狠综合久久止 | 亚洲一区二区三区小说 | 99久久一区| 日本视频在线看 | 少妇高潮惨叫久久久久久 | 亚洲欧美国产精品久久久久久久 | 成人自拍视频在线 | 欧美kkkk7777免费看 |