1樓:快先帶兒子走
話說b陣列不應該是整形呀,不然不能儲存字母了。以下是我的**。。。
#include
#include
#include
using namespace std;
void yasuo(char a,char b)else if(count==2)
else
b[p++]=a[i];
}void printb(char b)
void backb(char b)
else
cout int main() ,b[1000]= ; gets(a); yasuo(a,b); printb(b); backb(b);} 2樓:育知同創教育 如果資料結構是陣列的話,主要是要解決兩個問題,一是統計重複的字元,二是確定陣列壓縮後每個元素在陣列中所處的位置。 可以用一個指標遍歷陣列,另一個指標標記儲存位置。 字串或串(string)是由數字、字母、下劃線組成的一串字元。一般記為 s="a1a2···an"(n>=0)。它是程式語言中表示文字的資料型別。 通常以串的整體作為操作物件,如:在串中查詢某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字串相等的充要條件是: 長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的儲存方式是順序儲存方式和連結儲存方式。 3樓:參觀西湖 /*b陣列可以是整形呀*/ #define src_max 50 #define dest_max 100 void yasuo(char * srcarray, int dstarray) else p++; }if (*p == null) }void dayin(int arr) }printf("\n"); }void huanyuan(int arr)}}printf("\n"); }int main() ;gets(a); int b[dest_max] = ; yasuo(a, b); dayin(b); huanyuan(b);} include int main scanf s a for i 0 a i 0 i for j 0 j 5 j 修改 1 下標從0 4,共5個 return 0 每行結尾的 僅僅是為了連線字串使用的,如果一個字串過長,寫在一行比較不合適,就在該行結尾處加上一個反斜槓 就可以在下邊的行繼續寫這個字串... 第6行改為 char a 100 b 100 如果要輸出最終結果,沒必要每複製一個字元就輸出一次。將第25行刪掉。可以參考一下這個,講的很清楚 亂碼問題 codeblocks亂碼問題。它這個是codeblocks的,其他其實也差不 太多吧。關鍵是 原始檔儲存編碼 編譯器解釋原始檔的編碼 生成執行檔案... include include main char a 100 b 100 c 100 int i 0,j 0,n 0 gets a while a i 0 if a i 7 0 a i 1 7 0 b j a i b j a i 1 n i i b j 0 for i j 0 i 0 i j if...c語言字串陣列的問題C語言字串陣列的問題
C語言字串出現亂碼,C語言 字串輸出時最後出現亂碼
c語言字串符