第一篇:計算機軟件技術基礎大作業(yè)心得體會
計算機軟件技術基礎大作業(yè)心得體會
一開始拿著這個計算機軟件技術基礎大作業(yè)電子詞典C語言程序設計和開發(fā)題目,給我滿頭霧水,不知從哪開始怎么做。通過網上查看其他同學的相關程序,給了我一個程序設計的方向。首先要明確自己程序設計的目的;根據目的,設置思路框架;再根據思路框架分步驟寫出相關調用函數和主函數。同時也在反思為何別人能做到,我卻不知從何處開始,由于時間緊張,要抓緊復習面對考試了,于是我便在網上參考別的同學設計的一個程序。經過幾天的思考與數次上機操作和同學之間相互幫忙,程序初步能夠運行。但實用度很底,數據修改,增減都是臨時的,退出程序后不能保存。所查的單詞也只能是機構體中輸入的單詞,查閱范圍有限。經過和同學的討論,我們也找到了初步解決的方案——以文件的形式保存詞條,這樣就能初步保存修改后的詞典,但由于馬上就要交大作業(yè)了,不能繼續(xù)完善,所以只能把這份程序作為自己的作業(yè)。我會在課余時間里繼續(xù)修改完善這份大作業(yè)。
在這幾天的大作業(yè)設計中,雖然設計不是一帆風順,從一開始的錯誤重重,幾經周轉,到最后能夠運行程序,并能夠查閱,我很享受這個過程,為最終能夠運行程序,感到非常有成就感,雖然程序中存在種種不足讓人感到頭疼,但是從中也學到了不少C語言知識和與同學交流合作的方式技巧。作為一名大三學生,雖然我的C語言省二級考試順利通過,但是只學到了一點皮毛,只能應付考試,在以后工作中要是從事軟件開發(fā)還需更深一步的學習C語言編程知識。在這份大作業(yè)設計中,我對word軟件基本操作越來越熟悉了,學會了畫流程圖,也提高了在網上查閱相關資料的能力,我想以后大四畢業(yè)設計應該不成問題。
這份大作業(yè)設計完,我感到我的大學生活浪費了不少時間,沒有做一件事使自己很有成就感,在學習上雖然能拿獎學金,但是也沒有多大用處,沒有學習電氣專業(yè)方面操作的軟件,以后出來找工作很麻煩的。現(xiàn)在我大三了,學習時間更加緊張,不能向大一大二那樣混日子了,我要努力學好專業(yè)課知識,同時更要學會一些技能軟件操作方面的知識,平時也要鍛煉身體,不能在寢室里長時間玩電腦啊。真誠的感謝秦老師給我們上了這么多的課,布置這次大作業(yè),既學到了計算機方面的基礎知識,又提高了我們的動手操作軟件能力,在課堂上讓我們了解了大四找工作方面的知識和分享生活中的一些經驗,我從中受益匪淺啊?,F(xiàn)在的我還有點感到迷茫,沒有奮斗目標真可怕,就像船在大海中漂泊沒有指南針也不知道下一步到哪去,過著寢室教室食堂三點一線的單調生活,也缺少跟同學之間學習生活的交流,沒有交到很多好朋友,人脈圈少啊??墒菚r間在無情的流逝,時間不等人,過著這個村,就沒有那個店,我真的不能在敢浪費時間了,要抓住時機搞學習,在艱難也就是兩年不到,大學生活也會很快結束了,我要好好反省自己,總結大一大二時的過失,從中吸取教訓,使自己更加明智一點?,F(xiàn)在就抓緊時間學習吧,要有奮斗目標,做事情不能拖拉,提高做事的效率和能力,也要和社會打交道,提高做人做事的能力和技巧。我相信有努力就有所收獲,不能辜負父母和老師的期望,更不能對不起自己啊,希望我大學畢業(yè)時能大豐收并能找到一份好工作,過著幸福的生活。
第二篇:計算機軟件技術基礎實驗報告
計算機軟件技術基礎
實驗報告
自動化0901班
郝萬福
學號:20092395 實驗1:線性表的排序與查找
目的:
掌握數據結構的基本概念、線性表的基本操作以及查找和排序方法的設計。內容:
鍵盤輸入一組無序數據,添加到線性表中; 排序線性表并輸出排序結果;
鍵盤輸入一個數,并插入到排好序的線性表中(要求插入后的表仍為有序表),輸出結果;
鍵盤輸入一個數,并從線性表中刪除相應的數據,輸出結果。要求:
程序清單;
運行過程及運行結果。
實驗代碼:
/*
*/
#include “stdafx.h” #include “iostream” #include
// 程序實現(xiàn)有各種方法,這里給出一個實例。
// 定義一個線性表
const int nMaxSize = 15;// 最大值 int nLen = 0;
// 定義操作 void LSort();void LOut();void LInsert(int n);void LDelete(int n);
int main(){
// 輸入數據并放入線性表中
printf(“Please input datan”);// std::cout << “Please input datan”;int nIn = 0;
// 表中元素個數
int nLinearList[nMaxSize];班級:自動化 0901 班 姓名:郝萬福 學號:20092395
編譯環(huán)境: Visual Studio 2011 Windows 7 x86-64 旗艦版
} for(int i = 0;i <= 9;i++){
}
LSort();// 排序線性表 LOut();// 輸出結果 scanf(“%d”,&nIn);nLen++;
//
std::cin >> nIn;
nLinearList[i] = nIn;printf(“Please input a data to insert n”);scanf(“%d”,&nIn);LInsert(nIn);LOut();printf(“Please input a data to delete n”);scanf(“%d”,&nIn);LDelete(nIn);LOut();char chTmp;printf(“Please input a char to finish this program.”);chTmp = getch();return 0;// 輸入一個數字,并從線性表中刪除 // 輸入一個數字,并插入到線性表中
void LSort(){
}
void LOut(){
// 冒泡排序,由大到小
for(int j=0;j<=10;j++){
} for(int i=0;i<11-j;i++)
if(nLinearList[i] int temp=nLinearList[i];nLinearList[i]=nLinearList[i+1];nLinearList[i+1]=temp;} printf(“n”);for(int i = 0;i < nLen;i++){ } } printf(“%d, ”, nLinearList[i]);printf(“n”);void LInsert(int n){ nLen++;nLinearList[nLen] = n;for(int k=0;k<=nLen;k++){for(int l=0;l 實驗結果: 實驗2:棧與隊列的應用 目的: 掌握棧與隊列的基本概念、基本操作及設計與應用。內容: 鍵盤輸入算數表達式,并放入隊列當中; 應用棧的概念設計表達式求值算法; 輸出表達式求值結果; 要求: 程序清單; 運行過程及運行結果。 要求: 實現(xiàn)實驗內容的SQL語句,以及輸出結果 為檢驗實驗內容的有效性而執(zhí)行的SQL語句,例如向數據表中插入數據; 檢驗運行結果(例如插入、刪除)的SQL語句,以及輸出的結果。 實驗代碼: /* */ #include “stdafx.h” #include const int MAX_LEN = 10; // 定義一個隊列的結構 struct QUEUE { int nMaxSize;int nCount;int nFront;// 最大值 // 個數 // 頭 // 字符串的長度 const int MAX_SIZE = 30;// ?;蜿牭淖畲笤貍€數 班級:自動化 0901 班 姓名:郝萬福 學號:20092395 編譯環(huán)境: Visual Studio 2011 Windows 7 x86-64 旗艦版 int nRear;// 尾 char szQueue[MAX_SIZE][MAX_LEN];} QQ;//定義一個棧的結構 struct STACK { // 隊列的操作 void InitQueue(QUEUE *q,int nMaxSize){ } void InQueue(QUEUE *q, char *pItem){ } void OutQueue(QUEUE *q, char *pItem){ if(q->nCount == 0){ } q->nCount--;int i;printf(“隊列已空n”);getch();return 0;if(q->nMaxSize == q->nCount){ } q->nCount++;int i;for(i=0;i<10;i++){ } q->nFront ++;return;q->szQueue[q->nFront][i]= pItem[i];printf(“隊列已滿n”);getch();return 0;q->nMaxSize=nMaxSize;q->nCount=0;q->nFront=0;q->nRear=0;int nMaxSize;int nTop;// 最大值 // 棧頂 char szStack[MAX_SIZE][MAX_LEN];} ST; } for(i=0;i<10;i++){ } q->nRear ++;return;pItem[i] = q->szQueue[q->nRear][i];//棧的操作 void InitStack(STACK *s,int nMaxSize){ } void PushStack(STACK *s, char *pItem){ } void PopStack(STACK *s, char *pItem){ if(s->nTop == 0){ } printf(“堆棧已空n”);getch();return 0;if(s->nTop == s->nMaxSize-1){ } for(int i=0;i<10;i++){ } s->nTop++;s->szStack[s->nTop][i]= pItem[i];printf(“堆棧已滿n”);getch();return 0;s->nMaxSize=nMaxSize;s->nTop=0;// 棧頂 // 最大值 s->nTop--;for(int i=0;i<10;i++){ } void GetTopStack(STACK *s, char *pItem){ pItem[i] = s->szStack[s->nTop][i];} } for(int i=0;i<10;i++)pItem[i] = s->szStack[s->nTop-1][i];{ } int Priority(char *op);式的值 int main(){ int i=0; char c,temp[10]; // 聲明一個隊列 QUEUE qq; // 聲明OS棧和NS棧 STACK ns,os; // 獲得操作符的優(yōu)先級 // 計算表達void Compute(char *num1, char *num2, char *op, char *chResult); InitQueue(&qq,MAX_SIZE);InitStack(&ns,MAX_SIZE);char x[MAX_LEN];char op[MAX_LEN]; // 定義掃描的表達式 // 棧頂運算符 // 運算結果 InitStack(&os,MAX_SIZE);char num1[MAX_LEN], num2[MAX_LEN];// 兩個操作數 char chResult[MAX_LEN];printf(“Input expression please:n”);while((c=getchar())!='n'){ InQueue(&qq,temp);temp[0]=c;InQueue(&qq,temp);i=0; if(isdigit(c)){ } else { for(;i<10;i++){ } temp[i]='