第一篇:C語言程序設計第四次(2.8)實驗報告范文
C語言程序設計
實驗報告
專業(yè)
班級
日期
11月26日
成績
實驗組別
第 3(2.7)次實驗
指導教師
李開
學生姓名
學號
同組人姓名
實驗名稱 實驗8 指針實驗
一、實驗目的
(1)熟練掌握指針的說明、賦值、使用。
(2)掌握用指針引用數(shù)組的元素,熟悉指向數(shù)組的指針的使用。
(3)熟練掌握字符數(shù)組與字符串的使用,掌握指針數(shù)組及字符指針數(shù)組的用法。(4)掌握指針函數(shù)與函數(shù)指針的用法。(5)掌握帶有參數(shù)的main函數(shù)的用法。
二、實驗任務
8.2 實驗內容及要求 1.源程序改錯
2.源程序完善、修改、替換 3.跟蹤調試 4.程序設計 5.選做題
8.3 指定main函數(shù)的參數(shù)
三、實驗步驟及結果
(要求給出源程序和程序運行結果。另外,根據(jù)實驗內容,記錄編輯、編譯、鏈接、調試程序的操作過程和實驗現(xiàn)象)8.2 實驗內容及要求 1.源程序改錯
下面程序是否存在錯誤?如果存在,原因是什么?如果存在錯誤,要求在計算機上對這個例子程序進行調試修改,使之能夠正確執(zhí)行。#include
存在,錯誤為指針一開始沒有初始化,而sacnf傳入的是float型指針指向的地址,我們并不知道系統(tǒng)能給我們分配什么地址,所以說我們輸入的地址很有可能使程序崩潰。修改后代碼:
#include
2.源程序完善、修改、替換
(1)下面的程序通過函數(shù)指針和菜單選擇來調用字符串拷貝函數(shù)或字符串連接函數(shù),請在下劃線處填寫合適的表達式、語句、或代碼片段來完善該程序。#include
printf(“tt1 copy string.n”);
printf(“tt2 connect string.n”);
printf(“tt3 exit.n”);
printf(“ttinput a number(1-3)please!n”);
scanf(“%d”,&choice);}while(choice<1 || choice>5);switch(choice){ case 1:
p=strcpy;
break;
case 2:
p=strcat;
break;case 3:
goto down;} getchar();printf(“input the first string please!n”);i=0;gets(a);printf(“input the second string please!n”);i=0;gets(b);
result= p(a,b);printf(“the result is %sn”,result);down:;}(2)請上機運行第(1)題程序,使之能按要求輸出下面結果:((輸入)表示該數(shù)據(jù)是鍵盤輸入數(shù)據(jù))
copy string.2 connect string.3 exit.input a number(1-3)please!2(輸入)
input the first string please!the more you learn,(輸入)input the second string please!the more you get.(輸入)
the result is the more you learn,the more you get.3.跟蹤調試
#include
進入strcpy時:
返回main時:
(2)排除錯誤,使程序輸出結果為: there is a boat on the lake.#include