字元串連接函數c語言
㈠ 用c語言編寫程序,將兩個字元串連接起來,不要用strcat函數
#include<stdio.h>
#include<string.h>
voidstrc(charc1[],charc2[]);
voidmain()
{
chars1[30]="abc";
chars2[30]="def";
strc(s1,s2);//請在後面補充strc函數的功能,完成兩個字元串的連接
puts(s1);
}
voidstrc(charc1[],charc2[])
{
//請填空,完成兩個字元串的連接
inti,j;
for(i=0;c1[i];i++);
for(j=0;c2[j];j++)
c1[i+j]=c2[j];
c1[i+j]=0;
}
㈡ C語言:寫一函數,將兩個字元串連接
會不會是系統測試的數據太長了?
改成s1[161],s2[81]試試?
㈢ C語言中字元串連接怎麼解決
可以使用字元串連接函數strcat()函數,頭文件是#include<string.h>;
舉例如下:
兩個字元串char [100]="abc",b[50]="def";
將其變為一個字元串並輸出
#include<stdio.h>
#include<string.h>
int main()
{
char a[100]="abc",b[50]="def";
strcat(a,b);
printf("%s ",a);
}
拓展資料
C語言是一門通用計算機編程語言,廣泛應用於底層開發。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標准局為C語言制定了一套完整的美國國家標准語法,稱為ANSI C,作為C語言最初的標准。 目前2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標准,也是C語言的最新標准,該標准更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。
C語言是一門面向過程的計算機編程語言,與C++,Java等面向對象的編程語言有所不同。
其編譯器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
㈣ C語言,編寫一個函數,作用是連接兩個字元串
錯誤有三處:
printf("連接後字元串為:%s",c[80]);
改成printf("連接後字元串為:%s",c); %s讀的是字元串的地址,而不是數組
return c[80];
你定義的函數為char catStr(char a[], char[]b)類型,意思是返回值為一個字元
如果要返回串的地址,應該寫成char * catStr(char a[ ], char b[ ])
你返回了函數內c[ ]的地址,c的地址在你每次調用函數時才分配
最好寫成void catStr(char a[], char b[], char c[]);
㈤ c語言問題 編寫函數,把一個字元串連接到另一個字元串的後面,形成一個新的字元串
char * strcat(char *, char *)
這個是strcat的原型聲明,樓主傳入的a和b都是char類型,當然會報錯了。
char a,b,c;
scanf("%s%s",&a,&b);
%s是接收字元串,樓主傳入的只是一個char類型,這怎麼行呢?
這個樣子不就行了?
voidlink(char*a,char*b)
{
strcat(a,b);
}
voidmain()
{
chara[100],b[100];
scanf("%s%s",a,b);
link(a,b);
printf("%s",a);
return;
}
㈥ C語言:寫一個函數,將兩個字元串連接起來(用字元數組for循環)
摘要 一:char* catStr(char str1[],char str2[])
㈦ 用C語言:寫一個函數,將兩個字元串連接
樓上的人們說得沒錯,你可以調用庫函數的,這個就自己動手查查啦,非要自己寫的話,下面提供一個:
#include
#include
#include
char
*
cat(char
*
str1,
char
*
str2)
{
int
len1,
len2;
char
*
p;
len1
=
strlen(str1);
len2
=
strlen(str2);
char
*
str
=
(char
*)
malloc((len1+len2+1)*sizeof(*str));
strcpy(str,
str1);
p
=
str
+
strlen(str1);
strcpy(p,
str2);
return
str;
}
int
main(void)
{
char
*
str
=
(char
*)
malloc(1024*sizeof(*str));
char
*
s
=
(char
*)
malloc(1024*sizeof(*s));
gets(str);
gets(s);
printf(
"%s\n",
cat(str,
s)
);
return
0;
}
樓主,要學會查庫,庫裡面提供了很多有用的函數,不是什麼都要自己寫的。我上面的程序也調用了strcpy。不然就又得自己搞個循環賦值。
㈧ C語言字元串連接函數
strcat;a的內存長度不夠,要出錯的。多看一下書,再練習吧。