輸入描述: 每一行包括兩個字串,長度不超過100。
輸出描述: 可能有多組測試資料,對於每組資料, 不借用任何字串庫函式實現無冗餘地接受兩個字串,然後把它們無冗餘的連線起來。 輸出連線後的字串。
輸入例子: abc def
輸出例子: abcdef
要求:1.無冗餘地接受兩個字串
2.無冗餘的連線
顯然像以前那樣隨便定義乙個固定大小的陣列是不行的(這是大一養成的惡習)o(╯□╰)o
當然用c++的string類,實現這兩點非常簡單.
**:
#include using namespace std;int main()
length1=i;
i=0;
while((c=getchar())!='
\n')
length2=i;
str=(char *)malloc((length1+length2+1)*sizeof(char
)); i=0
;
while(i<=length1-1
) tmp=i;
i=0;
while(i<=length2-1
) str[tmp]='\0'
; cout
free
(str1);
free
(str2);
free
(str);
//}return0;
}
通過malloc和realloc函式實現了字串無冗餘接受,但是呢,這個**過不了(o(╯□╰)o),因為沒法實現輸入多組資料,不過本身這些題本身是由華科上機題改動過來的
這樣寫應該沒問題。
還有一點要強調一下,如果你想用printf()或者是cout輸出字串時,需要在字串最後面加上乙個'\0'。當然你也可以不加,那就用乙個迴圈將字元乙個乙個的輸出(o(╯□╰)o)
平時我們在定義乙個字元陣列時沒有考慮到這個問題是因為,一般來說定義的固定陣列的大小要大於輸入的串長度,剩下空缺的位置,系統會自動轉為'\0'誒。
吐槽一下:在網上蕩了蕩**,發現幾乎都是先定義兩個固定大小的陣列,再開始擼**。
華科機考 a b
時間限制 1秒 空間限制 32768k 題目描述 實現乙個加法器,使其能夠輸出a b的值。輸入描述 輸入包括兩個數a和b,其中a和b的位數不超過1000位。輸出描述 可能有多組測試資料,對於每組資料,輸出a b的值。輸入例子 2 6 10000000000000000000 100000000000...
字串連線
輸入n個字串s i 你要把他們按某個順序連線起來,使得字典序最小。1 n 100 每個字串長度 100 字串只包含小寫字母 input 第一行乙個整數n。接下來每行乙個字串s i output 一行乙個字串表示把輸入的n個字串按某個順序連線之後的結果input示例 6 itlooks like an...
字串連線
mysql select abc 123 abc 123 123 1 row in set,1 warning 0.00 sec mysql select 123 123 123 123 246 1 row in set 0.00 sec mysql select 123 123 123 123 2...