四 川 大 學 計 算 機 學 院、軟 件 學 院
實 驗 報 告
學號: 姓名: 專業:計算機科學與技術 班級:5 第 13 周
課程名稱 c/C++ 實驗課時 2
實驗項目 字符串的復制與追加 實驗時間 08.5. 16
實驗目的 1.掌握字符串的基本操作和理解數據結構
實驗環境 VC 6.0
實驗內容(算法、程序、步驟和方法) 先計算出S1和S2的字符個數,為S3分配好空間,利用已有庫函數先將S1復制到S3中,再將S2追加到S3中,當顯示完後要記住收回空間,做好善後處理。
源代碼如下:
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
char *s1="abcdef";
char *s2="123456f";
int n=strlen(s1)+strlen(s2);//計算s1,和s2的總長度n
char *s3=new char[n+1]; //定義S3並分配空間大小為n
strcpy(s3,s1); //將s1復制到s3中
strcat(s3,s2); //將s2追加到s3後面
cout<<"s3="<<s3<<endl;
delete []s3; //收回空間
s3=NULL; //將指針指向空
return 0;
}
(接上)
實驗內容(算法、程序、步驟和方法)
結構是順序存儲結構,算法順序鏈接法
數據記錄
和計算 數據有:字符串S1 ,S2;和壹未知字符串S3
只需計算前兩個字符串長度之和
結 論
(結 果) 利用字符數組可以順序存儲字符數據,並且能夠順序處理數據;
算法復雜度O(n+m);處於中性
小 結 字符數組能夠帶來很好的存儲結構,便於操作,但是算法不是很好,只能順序遍歷數組,故復雜度不是很小
指導老師評 議
成績評定: 指導教師簽名: