《高階語言程式設計》課程設計
設計題目:用乙個字元陣列儲存乙個英文句子
指導教師:
班級:小組人員:
電腦科學與工程系
2023年8月
目錄一.課程設計題目2
二.課程設計要求 2
三.系統環境 2
1.硬體平台 2
2.軟體平台 2
⑴.visual c++6.0特點 2
⑵.visual c++6.0具有的優點 3
四.課程設計目的 3
五.課程設計內容 4
六.設計結果與分析 11
七.心得體會 12
附錄一:程式源** 14
附錄二:參考文獻16
一、 課程設計題目:
用乙個字元陣列儲存乙個英文句子
二、 課題設計要求:
1.刪除該英文句子中的前導空格,後導空格,並刪除句子中多餘的空格(單詞之間留乙個空格);
2.統計該句子中單詞出現的頻率;
3.查詢並替換某個單詞。
三、 系統環境:
1. 硬體平台
硬體平台是程式設計與執行所需要的硬體環境,主要包括計算機機型及硬體配置。由於本課程是用字元陣列儲存乙個英文句子的程式設計,因此對計算機硬體的要求不高,比較經濟,只要配備有pii300處理器(或以上)、64m記憶體(或以上)、20g硬(或以上)的普通微機即可順利執行。
2. 軟體平台
軟體平台是程式設計與執行的軟體環境。本程式開發使用的是visual c++ 6.0
⑴ visual c++ 6.0特點
visual c++ 6.0是功能最為強大的視覺化開發工具之一,它不僅支援傳統的軟體開發方法更重要的是它能支援物件導向、視覺化的開發風格。因此visual c++ 6.
0又稱作是乙個整合開發工具,它提供了軟體**自動生成和視覺化資源編輯功能。
⑵ visual c++ 6.0具有的優點:
提供了物件導向的應用程式框架mfc(microsoft foundation class),簡化了程式設計師的程式設計工作,提高了模組的可重用性;提供了基於case技術的視覺化軟體的自動生成和維護工具app wizard、class wizard、visual studio、wizard bar等,實現了直觀、可視的程式設計風格,方便的編譯和管理各種類,維護程式的源**;封裝了windows的api函式、user、kernel、gdi函式,簡化了程式設計時建立、維護視窗的許多複雜的工作。
其中mfc 是乙個很大的、擴充套件了的 c++ 類層次結構,它能使開發 windows 應用程式變得更加容易。mfc 是在整個 windows 家族中都是相容的,也就是說,無論是 windows3.x、windows95 還是 windows nt,所使用的 mfc 是相容的。
每當新的 windows 版本出現時,mfc 也會得到修改以便使舊的編譯器和**能在新的系統中工作。mfc 也回得到擴充套件,新增新的特性、變得更加容易建立應用程式。 使用 mfc 的最大優點是它為你做了所有最難做的事。
mfc 中包含了上成千上萬行正確、優化和功能強大的 windows **。你所呼叫的很多成員函式完成了你自己可能很難完成的工作。從這點上將,mfc 極大地加快了你的程式開發速度。
由於mfc程式設計方法充分利用了物件導向技術的優點,它使得我們程式設計時極少需要關心物件方法的實現細節,同時類庫中的各種物件的強大功能足以完成我們程式中的絕大部分所需功能,這使得應用程式中程式設計師所需要編寫的**大為減少,有力地保證了程式的良好的可除錯性。
四、 課程設計目的:
1.掌握高階程式語言的基本思想、基本概念、基本方法和基本技能;
2.初步學會利用 c 語言編制一些程式以解決一般實際應用問題;
3.培養學生分析問題和解決問題的能力;
五、 程式設計內容:
★第一步:刪除該英文句子中的前導空格,後導空格,並刪除句子中多餘的空格(單詞之間留乙個空格);流程圖設計如下:
程式設計①
#include
#include ----前兩行為包含語句,指的是檔案"stdio.h","string.h"包含在該c語言語句裡,這個程式設計執行時,要把這兩個檔案開啟
char str[200定義字串str (最大的儲存量為200個字元)。
char tmp[200定義字串tmp (最大的儲存量為200個字元)。
char frequency[200定義字串frequency (最大的儲存量為200個字元)。
void tz函式tz
函式tz開始
int i,j,flag,len定義整形字元 i,j,flag,len
j=0給j賦值0
flag=1給flag賦值1
len=strlen(str把strlen(str)值賦值給len
for(i=0;ifor迴圈,開始
if(str[i]==' '&&flag==1if判斷,str[i]==' '並且flag==1
if條件判斷開始
tmp[j++]=str[i使用str[i]給tmp[j++]賦值
flag=0給flag賦值0
if條件判斷結束
elseelse如果上面if條件不符合
if(str[iif條件判斷,判斷str[i]!=''
if條件開始
tmp[j++]=str[i使用str[i]給tmp[j++]賦值
flag=1給flag賦值1
if條件結束
for迴圈,結束
len=strlen(tmp把strlen(tmp)值賦值給len
j=0給j賦值0
if(tmp[0if條件判斷,判斷條件是tmp[0]!=' '
str[j++]=tmp[0符合上面條件,使用tmp[0]給str[j++]賦值
for(i=1;i str[j++]=tmp[i使用tmp[i]給str[j++]賦值
if(tmp[len-1if條件判斷,判斷條件tmp[len-1]!=' '
str[j++]=tmp[len-1符合if條件下,使用tmp[len-1]給str[j++]賦值
str[j]='\0給str[j]賦值'\0';
printf("\ntz result:\n%s\n",str); ----輸出符合"刪除該句子中的前導空格,後導空格,並刪除句子中多餘的空格;單詞之間只留乙個空格"條件的字串
函式tz結束
★ 第二步:統計該句子中單詞出現的頻率
;流程圖設計如下:
程式設計②
#include
#include -----前兩行為包含語句,指的是檔案"stdio.h","string.h"包含在該c語言語句裡,這個程式設計執行時,要把這兩個檔案開啟
char str[200定義字串str (最大的儲存量為200個字元)。
char tmp[200定義字串tmp (最大的儲存量為200個字元)。
char frequency[200]; ------定義字串frequency (最大的儲存量為200個字元)。
void tj函式tj
函式tj開始
int i, j, len, k, h, count定義整形字元 i,j,len,k,h,count
k=0給k賦值0
len=strlen(str把strlen(str)值賦值給len
printf("\nfrequency:\n輸出\nfrequency:\n"
for(i=0;ifor迴圈,開始
j=0給j賦值0
字元陣列,字元指標,sizeof,strlen總結
cpp 字元陣列,字元指標,sizeof,strlen總結 對於字元陣列與字元指標 1.以字串形式出現的,編譯器都會為該字串自動新增乙個0作為結束符,如在 中寫 abc 那麼編譯器幫你儲存的是 abc 0 2.字串直接量作為字元指標的初始值 hello 是乙個字串直接量,編譯器將其作為const c...
C語言陣列和字串
實驗10 陣列和字串 實驗目的 1 理解一維陣列和二維陣列在記憶體中的存放形式。2 掌握一維陣列和二維陣列變數的定義和陣列元素的引用。3 掌握字串庫函式的用法。4 掌握字串和字元陣列的區別。實驗準備 1 一維陣列的定義。定義形式如下 儲存型別符資料型別符陣列變數名 整形常量表示式 如 int a 1...
《用字母表示數量關係》案例 李連保
在歡樂富有活力的氛圍中 新知 用字母表示數量關係 教學設計案例 襄州區張灣紅星小學李連保 案例描述 片斷一 在輕鬆愉悅中親近新知 1 同學們,上節課我們學習了用字母表示數,老師給同學們帶來一首兒歌,考考你的聽力和思考力。2 動畫。3 學生完成填空 1只青蛙1張嘴,2只眼睛4條腿,撲通一聲跳下水。2只...