1.在字串中查詢指定字元(90分)題目內容: 在字串中查詢指定字元。編寫函式char *findchar(char *s, char
c),利用指標訪問方式,在s指向的字串中查詢字元c,若找到,則把字串中首次出現的c的位址返回,否則返回null。在main函式中驗證該函式的正確性,輸出字串中c及之後的內容,或者輸出no found。
輸入格式: 第一行:輸入乙個字串,字串長度小於100。 第二行:要查詢的字元。 輸入範圍包含整個ascii字符集(包括空格)。輸出格式: 輸出字串中c之後的內容,或者輸出no found。
輸入樣例: sajkajkajsafaa j輸出樣例: jkajkajsafaa
#include
using
namespace std;
char
*findchar
(char
* str,
char ch)
intmain()
2.a+b(100分) 題目內容:輸入字串a+b,輸出它們的和c。設計兩個函式,乙個函式void separate(char
s,chars1,char*s2),將輸入的字串中的兩個加數a與b分割出來。再設計乙個函式void add(char s1,chars2)計算a+b的和。 輸入格式: 乙個包含兩個數值串行和乙個加號的字串
輸出格式: 輸出c
輸入樣例: 11111111111111111111111111111111111+1111111111111111111111111111
輸出樣例: 11111112222222222222222222222222222
#include
using
namespace std;
void
separate
(char
* s,
char
* s1,
char
* s2)
index_s1 -=2
;while
(s[index_s2++]!=
0)index_s2 -=2
;//s1儲存的內容是521,s2儲存的內容是94321
for(
int i = index_s1; i >=
0; i--
) s1[index_s1 - i]
+= s[i]
;for
(int j = index_s2; s[j]
!='+'
; j--
) s2[index_s2 - j]
+= s[j];}
void
add(
char
* s,
char
* s1,
char
* s2)
;//儲存s1+s2的結果
int p1 =
0, p2 =0;
while
(s1[p1]!=0
)while
(s2[p2]!=0
)for
(int i =
0; i <=
100; i++
)for
(int i =
0; i <=
100; i++)}
int place_of_last_num =
100;
//例如:213459的最後乙個數的下標為5
while
(res[place_of_last_num]
<=
0) place_of_last_num--
;for
(int k = place_of_last_num; k >=
0; k--
) cout << res[k];}
intmain()
, s1[
100]
=, s2[
100]=;
cin >> s;
separate
(s, s1, s2)
;add
(s, s1, s2)
;return0;
}
3.字串排序(20分)題目內容: 設計乙個函式void input(char ** ps, int n)完成n個不等長字串的輸入,用new運算子根據實際輸入的字串長度分配儲存空間,依次使指標陣列中的元素指向每乙個輸入的字串;設計乙個函式void
sort(char ** ps, int
n)完成n個字串排序(在排序的過程中,要求只交換指向字串的指標值,不交換字串);設計乙個函式void release(char **
ps, int n)將n個字串的空間delete在主函式中定義乙個指向字串的指標陣列,完成將排序後的字串輸出。
輸入格式: 先輸入乙個整數代表字串個數,然後輸入字串,字串可包含空格。
輸出格式: 輸出排序後的字串
輸入樣例: 5 sfafajksjfks fsdfdgd ggkdsklskl;sksdkgslklgs dgs gsgfdgfd
輸出樣例: dgs fsdfdgd ggkdsklskl;sksdkgslklgs gsgfdgfd sfafajksjfks
#include
#include
#include
using
namespace std;
bool
compare
(char
*p1,
char
*p2)
void
input
(char
** ps,
int n)
}void
sort
(char
** ps,
int n)
}void
release
(char
** ps,
int n)
}int
main()
;int n;
cin >> n;
ps =
newchar
*[n]
;input
(ps, n)
;sort
(ps, n)
;release
(ps, n)
;return0;
}
Effective C 條款8 第2章
prevent exception from leving destructors.c 並不禁止析構函式吐出異常,但它不鼓勵這樣做.這是有原因的,考慮以下 class widget 假設這個可能吐出乙個異常 void dosomething v在這裡被自動銷毀當vector v被銷毀,它有責任銷毀其...
第8章 標準IO庫 2
8.2 條件狀態 io標準庫管理一系列條件狀態 condition state 成員,用來標記給定的io物件是否處於可用狀態,或者碰到了哪種特定的錯誤。strm iostate 機器相關的整型名,由各個iostream類定義,用於定義條件狀態。strm badbit strm iostate型別的值...
第8周作業作業
1 對稱加密過程由那三部分組成 加密 傳送方將資訊通過對稱金鑰加密形成密文 傳輸 傳送方通過網路把密文傳出 解密 接收者將資訊用對稱金鑰進行解密形成明文 2 使用 openssl 中的 aes 對稱加密演算法對檔案 file.txt 進行加密,然後解密 openssl enc aes 128 cbc...