這道題目理解起來其實並不難,關鍵是加密演算法的實現,這裡先把關鍵函式貼上來:
1值得注意的是呼叫了自定義函式my2pow,返回2的x冪次值,之所以不用系統的pow函式是為了避免型別轉換的麻煩(引數、返回值都是double型別):char charconv(char
mark)
2
1得到單個字元的加密轉換以後,可以新建字串加密函式strconv,迴圈呼叫上面的charconv函式返回加密的完整字串。int my2pow(intx)7
return
result;
8 }
1函式接受三個引數,第乙個引數是源字串,第三個引數是源字串的長度;第二個引數是儲存加密後字串的位址。函式結構也十分清晰、簡單。出過一些錯,不能用dst+index這種方法,會有問題,dst是char *型別,dst+1也就是:(dst指向的位址+1個位元組)位址。void strconv(char *src,char *dst,int
length)
7 }
1最後是main函式,根據題目要求來依次輸入n組字串,每組字串長度不超過20位元組。然後每輸入一組給temp臨時字元陣列,馬上加密、依次儲存到str_array指標陣列,最後迴圈輸出str_array陣列的n組解密值。**第11行容易出錯,傳參的型別不一致可能存在潛在風險。intmain()2;
5char *str_array[5][21]; //
assume the value of n doesn't bigger than 5
6 scanf("
%d",&n);78
for(index=0;index)914
for(index=0;index)
15 printf("
%s\n
",str_array[index]);
16return0;
17 }
C語言字串和寬位處理函式
c語言字串和寬位處理函式 字元分類 寬字元函式普通c 函式描述 iswalnum isalnum 測試字元是否為數字或字母 iswalpha isalpha 測試字元是否是字母 iswcntrl iscntrl 測試字元是否是控制符 iswdigit isdigit 測試字元是否為數字 iswgra...
C語言程式設計的題目
一 了解試卷,胸中有數 綜觀近幾年全國計算機等級二級基礎部分和c語言程式設計的題目,筆試中大多數考題是與大綱要求的基本內容一致的,難度不高,但內容十分廣泛,應牢固掌握。所以,全面複習非常重要。二 深刻理解,強化概念 對於計算機的基礎知識和體系,應注意理解,切忌死記硬背。例如,可以把計算機硬體系統的結...
浙大版《C語言程式設計(第3版)》題目集 (5上)
本題要求實現乙個計算m n mint sum int m,int n 其中m和n是使用者傳入的引數,保證有m include intsum int m,int n int main include intsum int m,int n int sum int m,int n return sum i...