版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C課程設(shè)計(jì)---字符串處理系統(tǒng)課程設(shè)計(jì)說(shuō)明書(shū)(C程序設(shè)計(jì))班級(jí):信管B-1姓名:_____________設(shè)計(jì)題目:________字符串處理系統(tǒng)___________設(shè)計(jì)時(shí)間:________至_______指導(dǎo)教師:___________________________評(píng)語(yǔ):_____________________________________________________________________________________________________________________________________________________________________________________________________評(píng)閱成績(jī):____評(píng)閱教師:_____C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第1頁(yè)。
C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第1頁(yè)。《C程序設(shè)計(jì)》課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第2頁(yè)。開(kāi)課實(shí)驗(yàn)室:基礎(chǔ)實(shí)驗(yàn)室四C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第2頁(yè)。實(shí)驗(yàn)題目字符串處理系統(tǒng)一、實(shí)驗(yàn)?zāi)康耐ㄟ^(guò)該課程的學(xué)習(xí),使學(xué)生鞏固和加深《C程序設(shè)計(jì)》理論知識(shí),進(jìn)一步掌握編程技巧和方法,并通過(guò)課程設(shè)計(jì)實(shí)踐進(jìn)一步加強(qiáng)學(xué)生獨(dú)立分析問(wèn)題和解決問(wèn)題的能力、綜合設(shè)計(jì)及創(chuàng)新能力的培養(yǎng),同時(shí)注意培養(yǎng)學(xué)生調(diào)試程序、綜合應(yīng)用的能力。二、設(shè)備與環(huán)境PC兼容機(jī)、Windows操作系統(tǒng)、TurboC/Wintc,Vc++軟件等。三、實(shí)驗(yàn)內(nèi)容功能模塊簡(jiǎn)介和系統(tǒng)結(jié)構(gòu)圖:字符串處理系統(tǒng)字符串處理系統(tǒng)13--退出系統(tǒng)12--讀取字符串文件11--保存字符串文件10--讀取數(shù)字文件9--保存數(shù)字文件8--取出字符串7--字符數(shù)組的運(yùn)算1--輸入字符串2--顯示數(shù)字3--將數(shù)字排序4--顯示字母5--顯示特殊字符6--計(jì)算字符串長(zhǎng)度13--退出系統(tǒng)12--讀取字符串文件11--保存字符串文件10--讀取數(shù)字文件9--保存數(shù)字文件8--取出字符串7--字符數(shù)組的運(yùn)算1--輸入字符串2--顯示數(shù)字3--將數(shù)字排序4--顯示字母5--顯示特殊字符6--計(jì)算字符串長(zhǎng)度7.5--返回主菜單7.4--兩個(gè)字符串的比較7.3--字符串逆序排列7.2--字符串的連接7.1--字符串的復(fù)制7.5--返回主菜單7.4--兩個(gè)字符串的比較7.3--字符串逆序排列7.2--字符串的連接7.1--字符串的復(fù)制4.5--返回主菜單4.4--顯示元音字母4.3--顯示小寫(xiě)字母4.2-4.5--返回主菜單4.4--顯示元音字母4.3--顯示小寫(xiě)字母4.2--顯示大寫(xiě)字母4.1--顯示所有字母該功能模塊一共有一級(jí)菜單13個(gè),二級(jí)菜單10個(gè)。進(jìn)入主界面后共有:1.輸入字符串。該模塊的功能是輸入要處理的字符串,輸入后會(huì)提示是否確定輸入,確定后輸出提示“字符串已成功輸入!”。2.顯示數(shù)字。該模塊的功能是將字符串中的連續(xù)數(shù)字作為一個(gè)整數(shù),依次存入數(shù)組a中并輸出。3.將數(shù)字排序。該模塊的功能是將數(shù)組元素按升序排序。4.顯示字母。該模塊的功能是將字符串的所有字母、大寫(xiě)字母、小寫(xiě)字母、元音字母在屏幕上輸出。5.顯示特殊字符。該模塊的功能是輸出字符串中的特殊字符。6.計(jì)算字符的長(zhǎng)度。該模塊的功能是對(duì)字符串進(jìn)行統(tǒng)計(jì),統(tǒng)計(jì)出字符串的長(zhǎng)度、數(shù)字的個(gè)數(shù)、字母的個(gè)數(shù)、特殊字符的個(gè)數(shù)。7.字符數(shù)組的運(yùn)算。該模塊的功能是對(duì)字符串進(jìn)行復(fù)制、連接、逆序排列、比較等操作。8.取出字符串。該模塊的功能是取字符串中指定位置的指定個(gè)數(shù)的字符串。9.保存數(shù)字文件。該模塊的功能是將按升序排序后的數(shù)組元素一次存入文件data.out中10.讀取數(shù)字文件。該模塊的功能是從文件讀出輸出到屏幕。11.保存字符串文件。該模塊的功能是將字符串存入一個(gè)文件。12.讀取字符串文件。該模塊的功能是從文件中讀出字符串到屏幕。13.退出系統(tǒng)。該模塊的功能是退出系統(tǒng),返回到Windows狀態(tài)。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第3頁(yè)。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第3頁(yè)。系統(tǒng)主要界面設(shè)置及運(yùn)行說(shuō)明:1.輸入字符串。將字符串設(shè)為全局變量,用scanf函數(shù)從鍵盤輸入字符。然后判斷是否確定,若確定,則輸入y,輸出“字符串已成功輸入!”,若否定,則按任意鍵重新輸入。2.顯示數(shù)字。用指針將字符串中的連續(xù)的數(shù)字作為一個(gè)整數(shù)放入a數(shù)組中。要注意將字符轉(zhuǎn)為數(shù)字的方法為用數(shù)字字符的ASCII與零的相減即得。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第4頁(yè)。3.將數(shù)字排序。將a數(shù)組里的數(shù)字用冒泡法進(jìn)行升序排列。冒泡法是將前一個(gè)數(shù)與后一個(gè)數(shù)進(jìn)行比較,若前面的數(shù)大,則交換。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第4頁(yè)。4-1.顯示所有字母。用if語(yǔ)句判斷字符串是否是字母,是則輸出。同時(shí)計(jì)算字母的個(gè)數(shù),若個(gè)數(shù)為0,則輸出“字符串中沒(méi)有字母!”。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第5頁(yè)。4-2.顯示大寫(xiě)字母。用for語(yǔ)句循環(huán),若字符串的字符是大寫(xiě)字母,則輸出。如果大寫(xiě)字母的個(gè)數(shù)為0,則輸出“字符串中沒(méi)有大寫(xiě)字母!”。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第5頁(yè)。4-3.顯示小寫(xiě)字母。方法同顯示大寫(xiě)字母。字符為小寫(xiě)字母時(shí)輸出。4-4.顯示元音字母。元音字母有a,e,i,o,u,方法同顯示大寫(xiě)字母。字符為元音字母時(shí)輸出,大小寫(xiě)均要輸出。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第6頁(yè)。5.顯示特殊字符。在二級(jí)菜單中按5進(jìn)入主菜單,用if……else語(yǔ)句,當(dāng)字符不是數(shù)字,也不是字母,就是特殊字符。當(dāng)特殊字符的個(gè)數(shù)為0是,輸出“字符串中沒(méi)有特殊字符!”。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第6頁(yè)。6.計(jì)算字符串的長(zhǎng)度。用for語(yǔ)句循環(huán),字符串不是‘\0’時(shí)字符串個(gè)數(shù)+1,同時(shí)用if語(yǔ)句判斷是否是數(shù)字或字母,計(jì)算個(gè)數(shù)。特殊字符的個(gè)數(shù)為字符串的長(zhǎng)度減去數(shù)字和字母的個(gè)數(shù)。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第7頁(yè)。7-1.字符串的復(fù)制。不用字符串函數(shù)做字符串的復(fù)制。先定義一個(gè)字符數(shù)組,將原字符串在循環(huán)中賦給定義的字符數(shù)組,數(shù)組的最后加‘\0’,就成為復(fù)制的字符串。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第7頁(yè)。7-2.字符串的連接。定義兩個(gè)字符數(shù)組,一個(gè)放輸入的要連接的字符串,一個(gè)復(fù)制原字符串,將輸入的要連接的字符串放在該數(shù)組后面,數(shù)組的最后加‘\0’,再輸出連接后的字符串。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第8頁(yè)。7-3.字符串的逆序排列。先計(jì)算出字符串的長(zhǎng)度,將原字符串的最后一個(gè)字符放在定義的數(shù)組的第一位,用循環(huán)依此類推,定義數(shù)組的最后加‘\0’,就變成將原字符串逆序排列的字符串,將之輸出。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第8頁(yè)。7-4.兩個(gè)字符串的比較。輸入一個(gè)字符串,定義c為原字符串減去新字符串,若c大于0,則原字符串大,若c小于0,則新字符串大,若c等于0,則兩個(gè)字符串相等。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第9頁(yè)。8.取出字符串。在二級(jí)菜單中輸入5,返回主菜單。定義一個(gè)新數(shù)組,輸入取出串的位置和取出串的個(gè)數(shù),從取出串的位置處開(kāi)始循環(huán),將指定個(gè)數(shù)的字符放入新數(shù)組中,最后加‘\0’即可。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第9頁(yè)。9.保存數(shù)字文件。將升序排序后的a數(shù)組一次存入文件data.out中。打開(kāi)文件,若打不開(kāi),輸出“不能打開(kāi)文件!”,用fwrite將數(shù)組存入文件中,若不能寫(xiě)入,則輸出“文件打開(kāi)錯(cuò)誤!”。寫(xiě)入后,關(guān)閉文件,輸出“數(shù)字已寫(xiě)入文件,文件關(guān)閉!”。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第10頁(yè)。10.讀取數(shù)字文件。打開(kāi)9中保存的文件,若不能打開(kāi),輸出“不能打開(kāi)文件!”,將從文件中讀出的數(shù)輸出到屏幕上,關(guān)閉文件。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第10頁(yè)。11.保存字符串文件。定義文件名,輸入文件名并建立文件,將字符串寫(xiě)入文件中,若寫(xiě)入錯(cuò)誤,輸出“文件打開(kāi)錯(cuò)誤!”。關(guān)閉文件,輸出“字符串已寫(xiě)入文件,文件關(guān)閉!”。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第11頁(yè)。12.讀取字符串文件。將11中輸入的文件名作為全局變量,打開(kāi)該文件,讀出文件里的字符串并輸出在屏幕上。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第11頁(yè)。13.退出系統(tǒng)。當(dāng)菜單中選擇的數(shù)大于該菜單的模塊數(shù),則輸出“輸入錯(cuò)誤!請(qǐng)重新輸入!”,并跳回選擇數(shù)字鍵的地方。退出系統(tǒng)即進(jìn)入空語(yǔ)句,退回到Windows狀態(tài)。四、實(shí)驗(yàn)結(jié)果及分析(源程序代碼)#include<stdio.h>charstr[100],*p;inta[100],*pa;intn;/*n為a數(shù)組的個(gè)數(shù)*/intm;/*m為字符串的長(zhǎng)度*/charfilename[10];/*定義字符串文件名為全局變量*/voidmain(){ voidinput();/*1--輸入字符串*/ voidnumber();/*2--顯示數(shù)字*/ voidsort();/*3--將數(shù)字排序*/ voidalphabet();/*4--顯示字母*/ voidspecial();/*5--顯示特殊字符*/ voidlength();/*6--計(jì)算字符串長(zhǎng)度*/ voidarray();/*7--字符數(shù)組的運(yùn)算*/ voidextraction();/*8--取出字符串*/ voidsave_number();/*9--保存數(shù)字文件*/ voidread_number();/*10--讀取數(shù)字文件*/ voidsave_string();/*11--保存字符串文件*/ voidread_string();/*12--讀取字符串文件*/C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第12頁(yè)。 intc;C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第12頁(yè)。 system("cls");/*清屏*/ printf("┏━━━━━━━━━━━━━━━━━━━━━━┓\n"); printf("┃☆★☆字符串處理☆★☆┃\n"); printf("┠──────────────────────┨\n"); printf("┃◆1--輸入字符串┃\n"); printf("┃◆2--顯示數(shù)字┃\n"); printf("┃◆3--將數(shù)字排序┃\n"); printf("┃◆4--顯示字母┃\n"); printf("┃◆5--顯示特殊字符┃\n"); printf("┃◆6--計(jì)算字符串長(zhǎng)度┃\n"); printf("┃◆7--字符數(shù)組的運(yùn)算┃\n"); printf("┃◆8--取出字符串┃\n"); printf("┃◆9--保存數(shù)字文件┃\n"); printf("┃◆10--讀取數(shù)字文件┃\n"); printf("┃◆11--保存字符串文件┃\n"); printf("┃◆12--讀取字符串文件┃\n"); printf("┃◆13--退出系統(tǒng)┃\n"); printf("┠──────────────────────┨\n"); printf("┠※※※※※※※謝謝使用本系統(tǒng)※※※※※※※※┨\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━━┛\n"); again: printf("〓〓〓【請(qǐng)用數(shù)字鍵選擇操作菜單】〓〓〓:"); scanf("%d",&c); switch(c){ case1:input();break; case2:number();break; case3:sort();break; case4:alphabet();break; case5:special();break; case6:length();break; case7:array();break; case8:extraction();break; case9:save_number();break; case10:read_number();break; case11:save_string();break; case12:read_string();break; case13:gotoend; default: { printf("輸入錯(cuò)誤!請(qǐng)重新輸入!\n"); gotoagain;}} end:;}/*如果選擇項(xiàng)不在1~11之間則重輸*/ voidinput()/*1--輸入字符串*/{ charc; do{ printf("\n"); printf("輸入一個(gè)字符串(以空字符串結(jié)束):\n");C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第13頁(yè)。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第13頁(yè)。 getchar(); printf("是否確定輸入?(按y確定,按任意鍵重新輸入)"); c=getchar();}while(c!='y'); printf("字符串已成功輸入!^-^\n"); getch();main();}voidnumber()/*2--顯示數(shù)字*/{ inti,f;/*將字符串中的連續(xù)數(shù)字作為一個(gè)整數(shù),依次存入數(shù)組a中并輸出*/ for(i=f=n=0,p=str;*p!='\0';p++) if(*p>='0'&&*p<='9') if(f)a[n-1]=a[n-1]*10+*p-'0'; else{f=1;a[n++]=*p-'0';} else f=0; printf("\n");printf("字符串中的數(shù)字有:\n"); for(pa=a;pa<a+n;pa++) printf("%d",*pa); getch();main();}voidsort()/*3--將數(shù)字排序*/{ inti,j,t; for(i=0;i<n-1;i++) /*用冒泡法從小到大排序*/ for(j=0;j<n-i;j++) if(a[j]>a[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;} printf("\n");printf("排序后數(shù)字為:\n"); for(i=0;i<n;i++) printf("%d",a[i]); getch();main();}voidalphabet()/*4--顯示字母*/{ voidalphabet_all();/*4.1--顯示所有字母*/ voidmajuscule();/*4.2--顯示大寫(xiě)字母*/ voidminuscule();/*4.3--顯示小寫(xiě)字母*/ voidvowel();/*4.4--顯示元音字母*/ intx; system("cls"); /*清屏*/ printf("┏━━━━━━━━━━━━━━━━━━━━━━┓\n"); printf("┃☆★☆字符串處理☆★☆┃\n"); printf("┠──────────────────────┨\n"); printf("┃◆顯示字母┃\n"); printf("┃●1--顯示所有字母┃\n"); printf("┃●2--顯示大寫(xiě)字母┃\n"); printf("┃●3--顯示小寫(xiě)字母┃\n"); printf("┃●4--顯示元音字母┃\n"); printf("┃●5--返回主菜單┃\n"); printf("┠──────────────────────┨\n"); printf("┠※※※※※※※謝謝使用本系統(tǒng)※※※※※※※※┨\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━━┛\n"); anew: printf("〓〓〓【請(qǐng)用數(shù)字鍵選擇操作菜單】〓〓〓:"); scanf("%d",&x);C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第14頁(yè)。 if(x==1)alphabet_all();C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第14頁(yè)。 elseif(x==2)majuscule(); elseif(x==3)minuscule(); elseif(x==4)vowel(); elseif(x==5)main(); else { printf("輸入錯(cuò)誤!請(qǐng)重新輸入!\n");gotoanew;}} /*如果選擇項(xiàng)不在1~5之間則重輸*/voidalphabet_all()/*4.1--顯示所有字母*/{ ints; printf("\n");printf("字符串中所有的字母為:\n"); for(s=0,p=str;*p!='\0';p++) if((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z')) {printf("%c",*p);s++;} if(s==0) printf("字符串中沒(méi)有字母!\n"); getch();alphabet();}voidmajuscule()/*4.2--顯示大寫(xiě)字母*/{ inta; printf("\n");printf("字符串中所有的大寫(xiě)字母為:\n"); for(a=0,p=str;*p!='\0';p++) if(*p>='A'&&*p<='Z') {printf("%c",*p);a++;} if(a==0) printf("字符串中沒(méi)有大寫(xiě)字母!\n"); getch();alphabet();}voidminuscule()/*4.3--顯示小寫(xiě)字母*/{ intb; printf("\n");printf("字符串中所有的小寫(xiě)字母為:\n"); for(b=0,p=str;*p!='\0';p++) if(*p>='a'&&*p<='z') {printf("%c",*p);b++;} if(b==0) printf("字符串中沒(méi)有小寫(xiě)字母!\n"); getch();alphabet();}voidvowel()/*4.4--顯示元音字母*/{ intc; printf("\n");printf("字符串中所有的元音字母為:\n"); for(c=0,p=str;*p!='\0';p++) if(*p=='a'||*p=='e'||*p=='i'||*p=='o'||*p=='u'||*p=='A'||*p=='E'||*p=='I'||*p=='O'||*p=='U') {printf("%c",*p);c++;} if(c==0) printf("字符串中沒(méi)有元音字母!\n"); getch();alphabet();}voidspecial()/*5--顯示特殊字符*/{ intd; printf("\n");printf("字符串中的特殊字符為:\n"); for(d=0,p=str;*p!='\0';p++) if(*p>='0'&&*p<='9'); elseif((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z')); else {printf("%c",*p);d++;} if(d==0) printf("字符串中沒(méi)有特殊字符!\n");C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第15頁(yè)。 getch();main();}C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第15頁(yè)。voidlength()/*6--計(jì)算字符串長(zhǎng)度*/{ intr,s,t; for(m=r=s=t=0,p=str;*p!='\0';p++) { m++; if(*p>='0'&&*p<='9') r++; if((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z')) s++;} t=m-r-s; printf("\n");printf("字符串的長(zhǎng)度為:%d\n",m); printf("字符串中數(shù)字的個(gè)數(shù)為:%d\n",r); printf("字符串中字母的個(gè)數(shù)為:%d\n",s); printf("字符串中特殊字符的個(gè)數(shù)為:%d\n",t); getch();main();}voidarray()/*7--字符數(shù)組的運(yùn)算*/{ voidcopy();/*7.1--字符串的復(fù)制*/ voidcatenate();/*7.2--字符串的連接*/ voidconverse();/*7.3--字符串逆序排列*/ voidcompare();/*7.4--兩個(gè)字符串的比較*/ inty; system("cls"); /*清屏*/ printf("┏━━━━━━━━━━━━━━━━━━━━━━┓\n"); printf("┃☆★☆字符串處理☆★☆┃\n"); printf("┠──────────────────────┨\n"); printf("┃◆字符數(shù)組的運(yùn)算┃\n"); printf("┃▲1--字符串的復(fù)制┃\n"); printf("┃▲2--字符串的連接┃\n"); printf("┃▲3--字符串逆序排列┃\n"); printf("┃▲4--兩個(gè)字符串的比較┃\n"); printf("┃▲5--返回主菜單┃\n"); printf("┠──────────────────────┨\n"); printf("┠※※※※※※※謝謝使用本系統(tǒng)※※※※※※※※┨\n"); printf("┗━━━━━━━━━━━━━━━━━━━━━━┛\n"); repeat: printf("〓〓〓【請(qǐng)用數(shù)字鍵選擇操作菜單】〓〓〓:"); scanf("%d",&y); if(y==1)copy(); elseif(y==2)catenate(); elseif(y==3)converse(); elseif(y==4)compare(); elseif(y==5)main(); else { printf("輸入錯(cuò)誤!請(qǐng)重新輸入!\n"); gotorepeat;}} /*如果選擇項(xiàng)不在1~5之間則重輸*/voidcopy()/*7.1--字符串的復(fù)制*/{ charstr1[100],*p1; for(p=str,p1=str1;*p!='\0';p++,p1++) *p1=*p;C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第16頁(yè)。 *p1='\0';printf("\n");C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第16頁(yè)。 printf("原字符串為:\n"); for(p=str;*p!='\0';p++) printf("%c",*p); printf("\n");printf("復(fù)制的字符串為:\n"); for(p1=str1;*p1!='\0';p1++) printf("%c",*p1); getch();array();}voidcatenate()/*7.2--字符串的連接*/{ inti,j; charstr2[100],*p2,str3[100],*p3; i=j=0;p=str,p2=str2,p3=str3; printf("\n");printf("輸入要連接的字符串:\n"); scanf("%s",str2); for(p=str,p3=str3;*p!='\0';p++,p3++) *p3=*p; *p3='\0'; while(*(p3+i)!='\0') i++; while(*(p2+j)!='\0') {*(p3+i)=*(p2+j);i++;j++;} *(p3+i)='\0'; printf("原字符串為:\n"); for(p=str;*p!='\0';p++) printf("%c",*p); printf("\n");printf("兩個(gè)字符串連接后為:\n"); for(p3=str3;*p3!='\0';p3++) printf("%c",*p3); getch();array();}voidconverse()/*7.3--字符串逆序排列*/{ inti,j; charstr4[100],*p4; for(i=j=0,p=str;*p!='\0';p++) j++; j--; for(i=0,p=str,p4=str4;*(p+i)!='\0';i++,j--) *(p4+j)=*(p+i); i++; *(p4+i)='\0';printf("\n");printf("原字符串為:\n"); for(p=str;*p!='\0';p++) printf("%c",*p); printf("\n");printf("字符串逆序排列后為:\n"); for(p4=str4;*p4!='\0';p4++) printf("%c",*p4); getch();array();}voidcompare()/*7.4--兩個(gè)字符串的比較*/{ inti=0,c; charstr5[100],*p5;p=str;p5=str5; printf("\n");printf("輸入要比較的字符串:\n"); scanf("%s",str5); while(*(p+i)!='\0'&&*(p5+i)!='\0') {if(*(p+i)==*(p5+i))i++; else break;} c=*(p+i)-*(p5+i); printf("原字符串為:\n"); for(p=str;*p!='\0';p++) printf("%c",*p);printf("\n"); if(c>0) printf("原字符串大\n"); elseif(c<0) printf("輸入的字符串大\n"); else printf("兩個(gè)字符串大小相等\n");C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第17頁(yè)。 getch();array();}C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第17頁(yè)。voidextraction()/*8--取出字符串*/{ inta,b; charstr_out[100],*po; printf("\n"); printf("原字符串為:\n"); for(p=str;*p!='\0';p++) printf("%c",*p); printf("\n");printf("輸入取出串的位置:\n");scanf("%d",&a); printf("輸入取出串的個(gè)數(shù):\n");scanf("%d",&b); for(p=str,po=str_out;p<(str+b);p++,po++) *po=*(p+a); *po='\0'; printf("取出的字符串為:\n"); for(po=str_out;*po!='\0';po++) printf("%c",*po); getch();main();}voidsave_number()/*9--保存數(shù)字文件*/{ FILE*fp; inti; printf("\n");/*數(shù)組元素按升序排序后一次存入文件data.out中*/ if((fp=fopen("data.out","w"))==NULL) {printf("不能打開(kāi)文件!\n"); return;} for(i=0;i<n;i++) if(fwrite(&a[i],4,1,fp)!=1) printf("文件打開(kāi)錯(cuò)誤!\n"); fclose(fp);printf("數(shù)字已寫(xiě)入文件,文件關(guān)閉!\n"); getch();main();}voidread_number()/*10--讀取數(shù)字文件*/{ FILE*fp; inti; printf("\n");/*從文件讀出輸出到屏幕*/ if((fp=fopen("data.out","r"))==NULL) {printf("不能打開(kāi)文件!\n"); return;} printf("讀取的數(shù)字文件為:\n"); for(i=0;i<n;i++) {fread(&a[i],4,1,fp);printf("%d",a[i]);} fclose(fp);printf("\n"); getch();main();}voidsave_string()/*11--保存字符串文件*/{ FILE*fp; inti; printf("\n");printf("輸入文件名:");scanf("%s",filename); if((fp=fopen(filename,"w"))==NULL) {printf("不能打開(kāi)文件!\n");return;} for(i=0;i<m;i++) if(fwrite(&str[i],1,1,fp)!=1) printf("文件打開(kāi)錯(cuò)誤!\n"); fclose(fp);printf("字符串已寫(xiě)入文件,文件關(guān)閉!\n"); getch();main();}voidread_string()/*12--讀取字符串文件*/{ FILE*fp; inti; printf("\n"); if((fp=fopen(filename,"r"))==NULL) {printf("不能打開(kāi)文件!\n"); return;}C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第18頁(yè)。 printf("讀取的字符串文件為:\n");C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第18頁(yè)。 for(i=0;i<m;i++) {fread(&str[i],1,1,fp);printf("%c",str[i]);} fclose(fp);printf("\n"); getch();main();}五.實(shí)驗(yàn)總結(jié)通過(guò)做C程序設(shè)計(jì)課程設(shè)計(jì),我復(fù)習(xí)了C語(yǔ)言的知識(shí),加深了對(duì)C語(yǔ)言中各種語(yǔ)句的理解和運(yùn)用,收獲很大。在這次程序設(shè)計(jì)中,我在老師要求的題目外,加入了字符串長(zhǎng)度的計(jì)算,字符串的復(fù)制、連接、逆序排列和比較。然而在做“將字符串中的連續(xù)數(shù)字作為一個(gè)整數(shù),依次存入數(shù)組a中并輸出”時(shí),遇到了困難,我去網(wǎng)上搜索了資料,并根據(jù)自己的理解寫(xiě)出了程序。這讓我認(rèn)識(shí)到了自己的不足,讓我明白在編程道路上我還有很遠(yuǎn)的路要走。在調(diào)試程序的過(guò)程中,我總結(jié)出了一些規(guī)律,懂得了怎樣才能更快更好地發(fā)現(xiàn)自己的錯(cuò)誤,這給了我很大的收獲。在以后的學(xué)習(xí)中,我會(huì)增加對(duì)知識(shí)的熟練度,盡量用簡(jiǎn)單明了的方法編寫(xiě)程序,增加知識(shí)面,,去了解更多的編程語(yǔ)言,使自己在以后的編程道路上走得更加順利。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第19頁(yè)。教師評(píng)價(jià)C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第19頁(yè)。評(píng)定項(xiàng)目ABCD評(píng)定項(xiàng)目ABCD算法正確界面美觀,布局合理程序結(jié)構(gòu)合理操作熟練語(yǔ)法、語(yǔ)義正確解析完整實(shí)驗(yàn)結(jié)果正確文字流暢報(bào)告規(guī)范題解正確其他:評(píng)價(jià)教師簽名:年月日C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第20頁(yè)。
C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第20頁(yè)。社會(huì)實(shí)踐報(bào)告系別:班級(jí):學(xué)號(hào):姓名:C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第21頁(yè)。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第21頁(yè)。作為祖國(guó)未來(lái)的事業(yè)的繼承人,我們這些大學(xué)生應(yīng)該及早樹(shù)立自己的歷史責(zé)任感,提高自己的社會(huì)適應(yīng)能力。假期的社會(huì)實(shí)踐就是很好的鍛煉自己的機(jī)會(huì)。當(dāng)下,掙錢早已不是打工的唯一目的,更多的人將其視為參加社會(huì)實(shí)踐、提高自身能力的機(jī)會(huì)。許多學(xué)校也積極鼓勵(lì)大學(xué)生多接觸社會(huì)、了解社會(huì),一方面可以把學(xué)到的理論知識(shí)應(yīng)用到實(shí)踐中去,提高各方面的能力;另一方面可以積累工作經(jīng)驗(yàn)對(duì)日后的就業(yè)大有裨益。進(jìn)行社會(huì)實(shí)踐,最理想的就是找到與本專業(yè)對(duì)口單位進(jìn)行實(shí)習(xí),從而提高自己的實(shí)戰(zhàn)水平,同時(shí)可以將課本知識(shí)在實(shí)踐中得到運(yùn)用,從而更好的指導(dǎo)自己今后的學(xué)習(xí)。但是作為一名尚未畢業(yè)的大學(xué)生,由于本身具備的專業(yè)知識(shí)還十分的有限,所以我選擇了打散工作為第一次社會(huì)實(shí)踐的方式。目的在于熟悉社會(huì)。就職業(yè)本身而言,并無(wú)高低貴賤之分,存在即為合理。通過(guò)短短幾天的打工經(jīng)歷可以讓長(zhǎng)期處于校園的我們對(duì)社會(huì)有一種更直觀的認(rèn)識(shí)。實(shí)踐過(guò)程:自從走進(jìn)了大學(xué),就業(yè)問(wèn)題就似乎總是圍繞在我們的身邊,成了說(shuō)不完的話題。在現(xiàn)今社會(huì),招聘會(huì)上的大字報(bào)都總寫(xiě)著“有經(jīng)驗(yàn)者優(yōu)先”,可還在校園里面的我們這班學(xué)子社會(huì)經(jīng)驗(yàn)又會(huì)擁有多少呢?為了拓展自身的知識(shí)面,擴(kuò)大與社會(huì)的接觸面,增加個(gè)人在社會(huì)競(jìng)爭(zhēng)中的經(jīng)驗(yàn),鍛煉和提高自己的能力,以便在以后畢業(yè)后能真正真正走入社會(huì),能夠適應(yīng)國(guó)內(nèi)外的經(jīng)濟(jì)形勢(shì)的變化,并且能夠在生活和工作中很好地處理各方面的問(wèn)題,我開(kāi)始了我這個(gè)假期的社會(huì)實(shí)踐-走進(jìn)天源休閑餐廳。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第22頁(yè)。實(shí)踐,就是把我們?cè)趯W(xué)校所學(xué)的理論知識(shí),運(yùn)用到客觀實(shí)際中去,使自己所學(xué)的理論知識(shí)有用武之地。只學(xué)不實(shí)踐,那么所學(xué)的就等于零。理論應(yīng)該與實(shí)踐相結(jié)合。另一方面,實(shí)踐可為以后找工作打基礎(chǔ)。通過(guò)這段時(shí)間的實(shí)習(xí),學(xué)到一些在學(xué)校里學(xué)不到的東西。因?yàn)榄h(huán)境的不同,接觸的人與事不同,從中所學(xué)的東西自然就不一樣了。要學(xué)會(huì)從實(shí)踐中學(xué)習(xí),從學(xué)習(xí)中實(shí)踐。而且在中國(guó)的經(jīng)濟(jì)飛速發(fā)展,又加入了世貿(mào),國(guó)內(nèi)外經(jīng)濟(jì)日趨變化,每天都不斷有新的東西涌現(xiàn),在擁有了越來(lái)越多的機(jī)會(huì)的同時(shí),也有了更多的挑戰(zhàn),前天才剛學(xué)到的知識(shí)可能在今天就已經(jīng)被淘汰掉了,中國(guó)的經(jīng)濟(jì)越和外面接軌,對(duì)于人才的要求就會(huì)越來(lái)越高,我們不只要學(xué)好學(xué)校里所學(xué)到的知識(shí),還要不斷從生活中,實(shí)踐中學(xué)其他知識(shí),不斷地從各方面武裝自已,才能在競(jìng)爭(zhēng)中突出自已,表現(xiàn)自已。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第22頁(yè)。C課程設(shè)計(jì)---字符串處理系統(tǒng)全文共26頁(yè),當(dāng)前為第23頁(yè)。在餐廳里,別人一眼就能把我人出是一名正在讀書(shū)的學(xué)生,我問(wèn)他們?yōu)槭裁?他們總說(shuō)從我的臉上就能看出來(lái),也許沒(méi)有經(jīng)歷過(guò)社會(huì)的人都有我這種不知名遭遇吧!我并沒(méi)有因?yàn)槲以谒麄兠媲皼](méi)有經(jīng)驗(yàn)而退后,我相信我也能做的像他們一樣好.我的工作是在那做傳菜生,每天9點(diǎn)鐘-下午2點(diǎn)再?gòu)南挛绲?點(diǎn)-晚上8:30分上班,雖然時(shí)間長(zhǎng)了點(diǎn)但,熱情而年輕的我并沒(méi)有絲毫的感到過(guò)累,我覺(jué)得這是一種激勵(lì),明白了人生,感悟了生活,接觸了社會(huì),了解了未來(lái).在餐廳里雖然我是以傳菜為主,但我不時(shí)還要做一些工作以外的事情,有時(shí)要做一些清潔的工作,在學(xué)校里也許有老師分配說(shuō)今天做些什么,明天做些什么,但在這里,不一定有人會(huì)告訴你這些,你必須自覺(jué)地去做,而且要盡自已的努力做到最好,一件工作的效率就會(huì)得到別人不同的評(píng)價(jià)。在學(xué)校,只有學(xué)習(xí)的氛圍,畢竟學(xué)校是學(xué)習(xí)的場(chǎng)所,每一個(gè)學(xué)生都在為取得更高的成績(jī)而努力。而這里是工作的場(chǎng)所,每個(gè)人都會(huì)為了獲得更多的報(bào)酬而努力,無(wú)論是學(xué)習(xí)還是工作,都存在著競(jìng)爭(zhēng),在競(jìng)爭(zhēng)中就要不斷學(xué)習(xí)別人先進(jìn)的地方,也要不斷學(xué)習(xí)別人怎樣做人,以提高自已的能力!記得老師曾經(jīng)說(shuō)過(guò)大學(xué)是一個(gè)小社會(huì),但我總覺(jué)得校園里總少不了那份純真,那份真誠(chéng),盡管是大學(xué)高校,學(xué)生還終歸保持著學(xué)生的身份。而走進(jìn)企業(yè),接觸各種各樣的客戶、同事、上司等等,關(guān)系復(fù)雜,但我得去面對(duì)我從未面對(duì)過(guò)的一切。記得在我校舉行的招聘會(huì)上所反映出來(lái)的其中一個(gè)問(wèn)題是,學(xué)生的實(shí)際操作能力與在校理論學(xué)習(xí)有一定的差距。在這次實(shí)踐中,這一點(diǎn)我感受很深。在學(xué)校,理論的學(xué)習(xí)很多,而且是多方面的,幾乎是面面俱到;而在實(shí)際工作中,可能會(huì)遇到書(shū)本上沒(méi)學(xué)到的,又可能是書(shū)本上的知識(shí)一點(diǎn)都用不上的情況?;蛟S工作中運(yùn)用到的只是很簡(jiǎn)單的問(wèn)題,只要套公式似的就能完成一項(xiàng)任務(wù)。有時(shí)候我會(huì)埋怨,實(shí)際操作這么簡(jiǎn)單,但為什么書(shū)本上的知識(shí)讓人學(xué)得這么吃力呢?這是社會(huì)與學(xué)校脫軌了
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 5《大學(xué)之道》說(shuō)課稿 2024-2025學(xué)年統(tǒng)編版高中語(yǔ)文選擇性必修上冊(cè)
- 福建省南平市吳屯中學(xué)2021-2022學(xué)年高一化學(xué)月考試卷含解析
- 個(gè)人續(xù)簽合同:2024年合作合同書(shū)意向確認(rèn)版B版
- 2024棄土場(chǎng)租賃合同環(huán)保驗(yàn)收標(biāo)準(zhǔn)范本3篇
- 2023-2024學(xué)年人教版高中信息技術(shù)必修一第二章第三節(jié)《程序設(shè)計(jì)基本知識(shí)》說(shuō)課稿
- 科學(xué)復(fù)習(xí)贏在期末
- 鏡頭下的旅行故事
- 培訓(xùn)服務(wù)合同(2篇)
- 《自救器的使用與創(chuàng)傷急救》培訓(xùn)課件2025
- 2024淘寶代運(yùn)營(yíng)服務(wù)合作協(xié)議及年度店鋪運(yùn)營(yíng)策略優(yōu)化協(xié)議3篇
- 第十七屆山東省職業(yè)院校技能大賽市場(chǎng)營(yíng)銷賽項(xiàng)賽卷第一套
- 塔吊司機(jī)和指揮培訓(xùn)
- 紅色簡(jiǎn)約2025蛇年介紹
- 專題3-6 雙曲線的離心率與常用二級(jí)結(jié)論【12類題型】(解析版)-A4
- 光伏電站運(yùn)維課件
- 糧庫(kù)工程合同范本
- 江蘇省蘇州市2023-2024學(xué)年高一上學(xué)期期末學(xué)業(yè)質(zhì)量陽(yáng)光指標(biāo)調(diào)研試題+物理 含解析
- 農(nóng)業(yè)合作社線上線下?tīng)I(yíng)銷方案
- 研發(fā)實(shí)驗(yàn)室安全培訓(xùn)
- 電信公司網(wǎng)絡(luò)安全管理制度
- 安全生產(chǎn)標(biāo)準(zhǔn)化知識(shí)培訓(xùn)考核試卷
評(píng)論
0/150
提交評(píng)論