c語言中怎樣將字串的第02468位置

時間 2021-10-14 21:21:19

1樓:大野瘦子

這樣:#include

#include

int main(void)

{ int i;

char string[9]="abcdefg";

for(i=0;i<7;i++,i++)

printf("%c",string[i]);

return 0;

2樓:會飛的小兔子

#include

#include

intmain()

charstr1="123456",str2[7];

inti,j=0,len;

len=strlen(str1);

for(i=len-1;i>=0;i--)str2[j++]=str1[i];

str2[6]='\0';

printf("%s",str2);

return0;

//方法二指標法

#include

#include

intmain()

charstr1="123456",*p,str2[7];

inti;

p=&str1[5];

for(i=0;istr2[i]=*p--;

str2[strlen(str1)]='\0';

printf("%s",str2);

return0;

擴充套件資料c語言高效複製連線字串

源字串的長度未知且目標字串大小固定時,遵循一些流行的安全編碼準則來將連線結果限制為目標區大小實際上會導致兩個冗餘的傳遞。例如,按照cert關於安全使用strncpy和strncat的建議,並且目標區的大小是dsize位元組,我們可能會得到以下**。

與對strncat的呼叫不同,當s1的長度大於d的大小時,上面對strncpy的呼叫不會將nul('\0')結束符追加到d上。它是乙個常見的想當然的錯誤。此外,當s1短於dsize-1時,strncpy函式將所有剩餘的字元填滿為nul('\0'),這也被視為一種浪費的,因為隨後對strncat的呼叫將覆蓋掉它們。

3樓:

#include "string.h"

char s1[50]=;

char s2[50]=;

int i,j=0,len;

strcpy(s1,"my english is very bad");

len=strlen(s1);

for(i=0;i

4樓:匿名使用者

#include

void main()

i++;

}str2[j]=0;

printf("%s\n",str2);}

c語言問題:寫乙個函式,將乙個字串中的偶數字置的字母複製到另乙個字串中,然後輸出

5樓:好程式設計師

用乙個for迴圈,i的值初始為1 i《字串的長度 i=i+2,在for迴圈裡複製就行了(建議用字元陣列)

6樓:

#include

#include

int main()

int i,j=0;

char t[30],s[30]= ;//*舉個例子;

for(i=0; it[j++]=s[i];

t[j]='\0';

printf("%s\n",t);

return 0;

c語言 輸入乙個字串,將該字串中從第m個字元開始的全部字元複製到另乙個字串

7樓:大野瘦子

這樣:#include

#include

int main ()

void copystr(char *,char *,int);

int m;

char str1[20],str2[20];

printf("input string:");

gets(str1);

printf("which character that begin to copy?");

scanf("%d",&m);

if(strlen(str1) < m)

printf("input error!");

else

copystr(str1,str2,m);

printf("result:%s\n",str2);

return 0;

void copystr(char *p1,char *p2,int m)

int n;

n = 0;

while(n < m - 1)

n++;

p1++;

while(*p1 != '\0')

*p2 = *p1;

p1++;

p2++;

*p2 = '\0';

注意事項

/*輸入乙個字串,將該字串中從第m個字元

開始的全部字元複製成另乙個字串。m由使用者

輸入,小於字串的長度。*/

#include

#include

void mcopy(char array1,char array2,int m)

int i,j;

for(i=m-1,j=0;array2[j]!=0;i++,j++)

array1[i]=array2[j];

array1[i]=0;

int main()

char array1[20],array2[10];

int m;

printf("give array1:");

gets(array1);

printf("give array2:");

gets(array2);

printf("give m:");

scanf("%d",&m);

mcopy(array1,array2,m);

printf("after changed:");

puts(array1);

return 0;

8樓:會飛的小兔子

#include

#include

intcopy(char*p1,char*p2,intm);

intmain()

charstr1[40],str2[40];

printf("輸入第乙個字串:\n");

gets(str1);

intm;

printf("輸入第m個字元開始:\n");

scanf("%d",&m);

if(strlen(str1)printf("錯誤");

else

copy(str1,str2,m);

printf("%s",str2);

return0;

intcopy(char*p1,char*p2,intm)

intn;

n=0;

while(nn++;

p1++;

while(*p1!='\0')

*p2=*p1;

p1++;

p2++;

擴充套件資料

c語言字元指標字串複製

#include

voidcopy(chardststr,charsrcstr);

intmain()

chara[100],b[100];

printf("pleaseenterastring:");

gets(a);//輸入字串,存放陣列a中

copy(b,a);//將字元陣列a中的字串複製到b中

printf("thecopyis:\n");

puts(b);//輸出複製後的字串b

return0;

voidcopy(char*dststr,char*srcstr)

while(*srcstr!='\0')//迴圈直到字元srcstr[i]是字串的結束標誌為止

*dststr=*srcstr;//複製當前指標所指向的字元

srcstr++;//使srcstr指向下乙個字元

dststr++;//使dststr指向下乙個儲存單元

*dststr='\0';//在字串dststr的末尾新增字元的結束標誌,避免複製的字串溢位

//或則函式copy()編寫成這樣

voidcopy(char*dststr,char*srcstr)

do*dststr=*srcstr;//複製當前指標所指向的字元

srcstr++;//使srcstr指向下乙個字元

dststr++;//使dststr指向下乙個儲存單元

}while(*srcstr!='\0');//迴圈直到字元srcstr[i]是字串的結束標誌為止

事實上,還可以如下更為簡潔的形式編寫函式copy():

voidcopy(char*dststr,char*srcstr)

while((*dststr++=*srcstr++)!='\0')//迴圈直到字元srcstr[i]是字串的結束標誌為止

9樓:匿名使用者

當然是乙個字元了 你的函式的引數應該如下改#include

int m=3;int i;

int sort(char *p3,char *p4)}int main(int argc, char *ar**);char b[10]=;

char *p1,*p2;

p1=&a[0];

p2=&b[0];

sort(p1,p2);

printf("%s",*p1);

return 0;}

10樓:

#include

int m=3;int i,j;

void sort(char st,char ss)}int _tmain(int argc, _tchar* ar**)

;char b[10]=;

sort(a,b);

printf("%s",a);

return 0;}

c語言中字串連線怎麼解決,C語言中字串連線怎麼解決??

大野瘦子 include char a 10 123 char b 10 abc char c 20 strcpy c,a 把串a複製到有足夠空間的c中strcat c,b 把b連線到c的串尾需要注意的事項 c的長度一定要能夠容納要轉換的數字的長度,比如下面的例子,c的長度至少為8 1234567 ...

C語言如何返回字串,C語言中函式如何返回字串?

1 c語言中,字串不是一種基本型別,其本質是字元陣列,因此直接返回字串是不行的。因為c語言不允許例如 char 10 fun 這樣的函式定義方式。但是可以返回字元指標。返回一個動態分配的記憶體地址。2 例如 char c char getinput int length length 為要輸入字串的...

c語言怎麼返回字串陣列,C語言中怎麼查詢字串陣列中的某個字元?

風若遠去何人留 c語言返回值不支援返回陣列,不過可以通過返回指標型別,用以替代陣列。在c語言中,陣列大多數時候是可以用指標替代的。不過需要注意的是,不能夠返回在函式內部定義的區域性變數陣列,因為一旦函式退出,區域性變數就會被釋放,導致陣列指標無效。可以返回以下幾種 1 全域性變數,或者全域性變數空間...