1 設計思路
(1)主要描述題目演算法
第一步:利用指標psum接收sum的位址,指標pdiff接收diff的位址,因此 * psum為sum, * pdiff為diff。
第二步:對 * psum及 * pdiff進行賦值。
2.實驗**
void sum_diff( float op1, float op2, float *psum, float *pdiff )
1 設計思路
(1)主要描述題目演算法
第一步:根據函式中形參指數型intpart為實參intpart的位址,fracpart也是如此,因此 * inpart的值為實參inpart的值,fracpart也是一樣。
第二步: * inpart為x的整數部分,因此表示小數部分的 * fracpart=x- * inpart。
(2)流程圖
2.實驗**
void splitfloat( float x, int *intpart, float *fracpart )
3.本題除錯過程碰到問題及解決辦法
錯誤原因:誤使 * fracpart=f-(x/1),誤記為浮點型資料與整型資料進行運算,最後結果為整型,正確應為浮點型。 改正方法:因 * intpart為整型資料,且為x的整數部分,因此直接用f- * intpart就可以。
1 設計思路
(1)主要描述題目演算法
第一步:定義k=-1,如果陣列中有與x相等的元素時,另k等於其元素對應的下標。
第二步:遍歷陣列,為了找到最小下標,正向遍歷陣列,且當有乙個對應元素時,即跳出迴圈。
第三步:返回k的值。
(2)流程圖
2.實驗**
int search( int list, int n, int x )
} for(j=n-1;j>=0;j--)
} return 0;
}void output(int *arr,int n)
for(; *s != '\0';s++,j++)
} return (answer);
}
1 設計思路
(1)主要描述題目演算法
第一步:呼叫函式t,s指向主函式中的t,s。
第二步:將指標型t中的值賦值給另乙個陣列,計算出陣列的長度,將m的大小與陣列的長度用if語句來進行比較。
第三步:如果m大於陣列得長度,則陣列s直接輸出為空陣列;另一種則遍歷陣列,使陣列s滿足要求。
第四步:最後不要忘了,在if語句的最後寫上*s='\0'。
(2)流程圖
主函式:
strmcpy函式:
2.實驗**
void strmcpy( char *t, int m, char *s )
if(m>i) else
*s = '\0';
return 0;
}
3.本題除錯過程碰到問題及解決辦法
錯誤點1:並沒有在最後加上*s = '\0',導致在最後提交時最後乙個調試點錯誤。解決方法:在詢問同學及參考了同學的**後找出了自己的錯誤點,字串的結尾應加'\0'. 錯誤點2:當m>i時,直接內容為空,導致最後的結果不為空字元。解決方法:在查閱書籍之後,發現內容應不為空,而為 * s='\0'。
額外加題3:為了防止資訊被別人輕易盜取,需要把電碼明文通過加密方式變換成為密文。變換規則如下:小寫字母y變換為a,小寫字母z變換為b,其他字母變換成為該字母ascii碼順序後2為字幕,比如o變換成q。要求給出你的姓名全拼加密後的結果。
1 設計思路
(1)主要描述題目演算法
第一步:想到用全域性變數來定義n,及運用新學的指標來完成**。
第二步:定義name[n],newname,並將name的首元素位址傳給指標型newname。
第三步:遍歷迴圈,用newname++來使newname迴圈指向下乙個元素,分情況將newname中的元素進行替換,最後不要忘了使newname = '\0'。
(2)流程圖
2.實驗**
總結:在這兩周我複習了陣列,學習了指標的含義和概念,陣列和指標以及字串與指標,而對於字串與陣列的運用是最不熟練的,希望在寫一次寫部落格總結時,自己可以寫上對於字串與陣列的運用是已經完全掌握的,這是大的方面。
而在小的方面,在做pta中的題目時,覺得自己對選擇法排序的掌握已經退步為差不多為0,而選擇法排序和冒泡法排序都是十分重要的,自己會盡快的去熟練掌握它們的。
pta第四次作業的第二題,自己印象是最深刻的,因為在這題自己也是一籌莫展,在網上查詢完題目,提交了理解了以後就自己的**,但因為自己最後的一點點不甘心,最後在同學的幫助下,還是用自己的思路完成了**。而在此次分析網上的**時,**中可以有很多簡化的地方,strlen(陣列名)即為該陣列的長度,不需要用for迴圈用i++來表示,書中和之前牛老師都有提到過,在以後自己也會使用這種方法的。
在總結的最後,分享乙個應該掌握但有可能沒有注意到的知識點:pta第三次作業的第二題中主函式的**
#includevoid sort(int *x,int n);
int main ( )
c 第一次作業
要求 計算 的注釋行,行,空行和總行數。步驟解析 先開啟檔案,讀取檔案,因為注釋行開頭以 或者 開頭,所以有 或者 的行為注釋行。空行就是什麼都沒有的,為空的。行就是有 的,實現這些功能的過程中需要用到trim這個函式。如下 using system using system.collections...
c 第一次作業
using system using system.collections.generic using system.linq using system.text using system.threading.tasks using system.io using system.text.regul...
c 第一次作業
c 第一次作業 一 程式設計分析題。1.分析程式寫出結果 x,y 15,25 x,y 15,25 x,y 15,25 x,y 14,26 include using namespace std voidf1 int x,int y voidf2 int x,int y voidf3 int x,in...