国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

c語(yǔ)言之要求寫一個(gè)函數(shù),將字符串中的空格替換為%20

Carson / 677人閱讀

摘要:題目要求寫一個(gè)函數(shù),將字符串中的空格替換為。新的字符串就是將舊的字符串里面的空格改成。我們需要求出原來(lái)字符串的長(zhǎng)度,再求出空格的數(shù)量,新的字符串的長(zhǎng)度就原來(lái)字符串的長(zhǎng)度加上空格數(shù)量的二倍。

題目:要求寫一個(gè)函數(shù),將字符串中的空格替換為%20。

樣例: “abc defgx yz” 轉(zhuǎn)換成 “abc%20defgx%20yz”

一.創(chuàng)建新的字符串

根據(jù)題目要求,我們可以創(chuàng)建兩個(gè)字符串,一個(gè)字符串用來(lái)放原字符串,另一個(gè)可以遍歷后成新的字符串。新的字符串就是將舊的字符串里面的空格改成%20。

這種算法也比較簡(jiǎn)單就是單純的從前面往后面遍歷,遇見空格就改成%20。

具體代碼如下:

void repace(char arr[], char arr1[]){	int i = 0;	int j = 0;	for (i = 0; arr[i] != "/0"; i++)	{		if (arr[i] == " ")		{			arr1[j++] = "%";			arr1[j++] = "2";			arr1[j] = "0";		}		else		{			arr1[j] = arr[i];		}		j++;	}}

二.原來(lái)字符串改動(dòng)

第二種算法不用創(chuàng)建新的字符串,就是在原來(lái)的字符串上修改。我們需要求出原來(lái)字符串的長(zhǎng)度,再求出空格的數(shù)量,新的字符串的長(zhǎng)度就原來(lái)字符串的長(zhǎng)度加上空格數(shù)量的二倍。

然后從舊字符串的最后一個(gè)先前遍歷,遇見空格就倒序輸出%20;

具體代碼如下:

void  repace(char str[]){	int oldnum = 0;   //老的數(shù)量	int newnum = 0;   //新的數(shù)量	int old = 0;      //老的最后一個(gè)字符	int new = 0;      //新的最后一個(gè)字符	int kong = 0;     //空格的數(shù)量	while (str[oldnum] != "/0")	{		if (str[oldnum] == " ")		{			kong++;		}		oldnum++;	}	newnum = oldnum + kong * 2;	old = oldnum -1 ;	new = newnum - 1;	while (old >= 0)	{		if (str[old] == " ")		{			str[new--] = "0";			str[new--] = "2";			str[new] = "%";		}		else		{			str[new] = str[old];		}		old--;		new--;	}}

三.整體代碼

第一個(gè)整體代碼:

#includevoid repace(char arr[], char arr1[]){	int i;	int j = 0;	for (i = 0; arr[i] != "/0"; i++)	{		if (arr[i] == " ")		{			arr1[j++] = "%";			arr1[j++] = "2";			arr1[j] = "0";		}		else		{			arr1[j] = arr[i];		}		j++;	}}int main(){	char arr[20] = "abc defgx yz";	char arr1[30] = { 0 };	repace(arr, arr1);	printf("%s/n", arr1);	return 0;}

第二個(gè)整體代碼:

#includevoid  repace(char str[]){	int oldnum = 0;   //老的數(shù)量	int newnum = 0;   //新的數(shù)量	int old = 0;      //老的最后一個(gè)字符	int new = 0;      //新的最后一個(gè)字符	int kong = 0;     //空格的數(shù)量	while (str[oldnum] != "/0")	{		if (str[oldnum] == " ")		{			kong++;		}		oldnum++;	}	newnum = oldnum + kong * 2;	old = oldnum -1 ;	new = newnum - 1;	while (old >= 0)	{		if (str[old] == " ")		{			str[new--] = "0";			str[new--] = "2";			str[new] = "%";		}		else		{			str[new] = str[old];		}		old--;		new--;	}}int main(){	char arr[20] = "abc defgx yz" ;	repace(arr);	printf("%s/n", arr);	return 0;}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/118814.html

相關(guān)文章

  • 你真的知道Python的符串怎么用嗎?

    摘要:方法可接收兩個(gè)參數(shù),第一個(gè)參數(shù)是分隔符,即用來(lái)分隔字符串的字符,默認(rèn)是所有的空字符,包括空格換行制表符等。拆分過程會(huì)消耗分隔符,所以拆分結(jié)果中不包含分隔符。 正如《你真的知道Python的字符串是什么嗎?》所寫,Python 中字符串是由 Uniocde 編碼的字符組成的不可變序列,它具備與其它序列共有的一些操作,例如判斷元素是否存在、拼接序列、切片操作、求長(zhǎng)度、求最值、求元素的索引位...

    scwang90 評(píng)論0 收藏0
  • 你真的知道Python的符串怎么用嗎?

    摘要:方法可接收兩個(gè)參數(shù),第一個(gè)參數(shù)是分隔符,即用來(lái)分隔字符串的字符,默認(rèn)是所有的空字符,包括空格換行制表符等。拆分過程會(huì)消耗分隔符,所以拆分結(jié)果中不包含分隔符。 正如《你真的知道Python的字符串是什么嗎?》所寫,Python 中字符串是由 Uniocde 編碼的字符組成的不可變序列,它具備與其它序列共有的一些操作,例如判斷元素是否存在、拼接序列、切片操作、求長(zhǎng)度、求最值、求元素的索引位...

    jifei 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<