[置顶] 我的程序员之路(4)---C语言课程设计
???? 我們學院是很重視實踐,所以每學期末都有專業課的課程設計,說簡單就是用你所學的語言編一個小應用。軟件工程和c語言都有課程設計,其實軟件工程有點理論。都是找個系統或網站在分析,寫網站或系統的過程,但是不編碼,所以比較輕松。我們五個人一組,我很有幸做了組長,組長也就是給他們分任務,自己多做點。我第一次和別人合作,體驗一個小團隊的力量,團隊成員之間有爭論、有合作,這個課程設計很快就結束了。接下來做的是C語言課程設計,說實話我當時感覺學的一般,很害怕。當時老師不建議太多人合作,希望自己獨立完成。當時我很迷茫,老師要求代碼要達到400(大概是這樣,具體數我記不清)行以上,對于當時的我來說,感覺很難。平時最多寫幾十行代碼。不過沒辦法,這也是門課程,還要算成績。最后我們原來的團隊商量還是大家一起做,一個人寫實在有點難。也許一個人你會怕,可是大家一起就沒感覺那么怕。我們選了一個題目---職工管理系統,我們分工兩周的任務,先寫文檔,后一人分一個函數。也就是現在經常用的增、刪、改、查,還有一個main函數和顯示函數。一人一分就沒那么怕,只要寫好自己的函數,最后有main函數調就行了。我們的分工不一定科學,可是當時幫我們解決很大問題。我們選用了文件存儲(也有人用鏈表,我當時真不太懂指針,就沒用鏈表)。幾天之后終于寫完自己的函數。其實自己寫的函數也是參考書上的(其實書上的代碼還是有問題,最后調試才發現)。我們就用main函數調用,又出現了很多問題,我們一個個解決(有亂碼問題等等)。最后基本毛病都沒有了。當時我們有點驕傲,因為大概任務已經完成。也有同學知道我們做完,就看我們代碼,最后無意間發現刪除函數有毛病,如果刪除第一條,就全部刪除了。我們團隊已經分開了,因為老師不讓一起做,我們核心代碼一樣,自己再改界面和自己擴展。我改了半天,還是沒一天頭緒。當時我認識人很少,真的感覺很痛苦,沒學長幫忙,沒學長問。最后終于找到一大三的學長(我們團隊里的人認識的),那哥上來就問我一堆問題,把我問懵了,最后問題也沒解決。那時候我才發現調試才是最痛苦的。一天晚上我在社團調試到快絕望時,真想罵娘,也不想調試。見了副主任軍哥(他大二,和他不熟,不過他還是很熱心),聽說他大一時C語言學的不錯,就問他。他說拿他電腦試試,他不熟悉VC6.0,他用Microsoft Visual Studio2010(我沒見過這東東),不過我目的是解決問題。整了半天,我都不抱希望,最后軍哥真幫我解決了,我當時好開心,原來書上用的是break跳出循環,應該用continue。這樣刪第一個就不會全刪除。這個問題解決之后,我又改進了界面,聽說別人有密碼函數,我就業整了一個。最后我把自己任務全部完成,順利通過了老師的驗收,他問我問題基本我都遇見過。最后得了個A,心里還是感覺不錯。從課程設計我學到很多,我總結了只要是你自己敲的代碼,你的收獲會很大,因為敲就會出問題,你去解決問題時就進步了。之后我感覺自己C語言很多東西都明白了,實踐中才明白的東西,很牢固。所以我一直很自信自己的C語言基礎,其實也就一般,自我感覺良好。
部分函數如下(我的資源里面上傳的有)
#include<stdio.h>??
#include<string.h>
#include<stdlib.h>
#include<conio.h>
struct Info
{
? char num[10];/*職工號*/
? char name[15];/*姓名*/
? char? sex[3];/*性別*/
? char education[20] ;/*文化程度*/
? char phone[20];/*電話*/
? char duty[20];/*職務*/
? char? addr[30];/*住址*/
? double wage ; /*工資*/
};
/*菜單函數*/
char? menu()
{
?char n;
?system("CLS");???????????????? /*清屏函數? 其頭文件為“#include<stdlib.h>”*/
??? system("color 0A");??????????? /*屏幕和字體顏色控制*/
?printf("歡迎進入系統:\n");
?printf("\t\t\t??? 職工信息管理系統\n");
?printf("\t******************************菜單*****************************\n");
?printf("\t***************************************************************\n");
?printf("\t|***********?????????????????????????????????????? ***********|\n");?????
?printf("\t|*******??????????????????????????????????????????????? ******|\n");???????
?printf("\t|****????? 1.職工信息錄入????????????? 2.職工信息顯示???? ****|\n");???
?printf("\t|****???????????????????????????????????????????????????? ****|\n");???
?printf("\t|****????? 3.職工信息查詢????????????? 4.職工信息刪除???? ****|\n");???
?printf("\t|****???????????????????????????????????????????????????? ****|\n");???
?printf("\t|****????? 5.職工信息修改????????????? 6.退出???????????? ****|\n");???
?printf("\t|*********????????????????????????????????? **制作? ********|\n");???
?printf("\t***************************************************************\n");
?printf("\t***************************************************************\n");
?printf("選擇1-6:[ ]\b\b");????
?while(1)
?
?{?? fflush(stdin); /*清除緩沖區域*/
? n=getchar();
? if(n<'1'||n>'6')printf("輸入錯誤,請重新輸入1-6:[ ]\b\b");
????? else
? break;
?}return n;
?}
?
?
?
轉載于:https://www.cnblogs.com/jiangu66/archive/2013/04/02/2996698.html
總結
以上是生活随笔為你收集整理的[置顶] 我的程序员之路(4)---C语言课程设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: aserisk笔记(dahdi工具相关)
- 下一篇: 静态方法和实例方法