當前位置:首頁 » 編程語言 » c語言怎麼修改字元
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言怎麼修改字元

發布時間: 2022-05-23 10:29:23

1. c語言修改、刪除文件中的字元串

字元串其實是一個數組。你把後面的abcd依次移到****位置上。然後讓字元串結束就好了。
符串或串(string)是由零個或多個字元組成的有限序列。一般記為
s='a1a2???an'(n>=0)。它是編程語言中表示文本的數據類型。
通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。
[編輯本段]字元串函數
1.
連接運算
concat(s1,s2,s3…sn)
相當於s1+s2+s3+…+sn.
例:concat(『11』,'aa』)='11aa』;
2.
求子串。
(s,i,l)
從字元串s中截取第i個字元開始後的長度為l的子串。
例:(『abdag』,2,3)=』bda』
3.
刪除子串。過程
delete(s,i,l)
從字元串s中刪除第i個字元開始後的長度為l的子串。
例:s:=』abcde』;delete(s,2,3);結果s:=』ae』
4.
插入子串。
過程insert(s1,s2,i)
把s1插入到s2的第i個位置
例:s:=abc;insert(『12』,s,2);結果s:=』a12bc』
5.
求字元串長度
length(s)
例:length(『12abc』)=5
在asp中
求字元串長度用
len(s)例:
len("abc12")=5
6.
搜索子串的位置
pos(s1,s2)
如果s1是s2的子串
,則返回s1的第一個字元在s2中的位置,若不是子串,則返回0.
例:pos(『ab』,』12abcd』)=3
7.
字元的大寫轉換。upcase(ch)
求字元ch的大寫體。
例:upcase(『a』)=』a』
8.
數值轉換為數串。
過程
str(x,s)
把數值x化為數串s.
例:str(12345,s);
結果s=』12345』
9.
數串轉換為數值。
過程val(s,x,i)
把數串s轉化為數值x,如果成功則i=0,不成功則i為無效字元的序數
例:val(『1234』,x,i);結果
x:=1234

2. C語言中如何替換一個字元串中的字元

include
<stirng.h>
void
strrpl(char
*s,
const
char
*s1,
const
char
*s2)
{
char
*ptr;
while
(ptr
=
strstr(s,
s1))
/*
如果在s中找到s1
*/
{
memmove(ptr
+
strlen(s2)
,
ptr
+
strlen(s1),
strlen(ptr)
-
strlen(s1)
+
1);
memcpy(ptr,
&s2[0],
strlen(s2));
}
return
s;
}
int
main()
{
char
*str1="abc",
*str2="a",
*str3="de",
Str0[100];
//如果字元串很長,100不夠則需要預留更大的空間。
strcpy(Str0,Str1);
strrpl(Str0,
str2,
str3);
printf("%s\n",
Str0);
return
0;
}

3. C語言怎麼改變系統中字元的輸入(不是簡單的在程序里輸入)

可以按照如下步驟:
1 讀入字元串,可以使用scanf以%s的方式讀入字元串,也可以以gets一次讀入整行字元串。
2 判斷字元串。使用strcmp函數,與設定的字元串相比較。如輸入字元串存在字元數組cmd中,當輸入"test"的時候執行程序,那麼當strcmp(str, "test")返回值為0時,代表需要執行對應程序。
3 執行程序。
如果要執行的是某一個函數,那麼直接在2步中判斷成功時調用對應函數即可。
如果要執行的是另外一個可執行文件,可以通過
system(exec_file_name);
的方式,執行可執行文件。其中exec_file_name是存儲要執行的可執行文件名及路徑的字元串。

4. C語言如何更改字元串的內容

是的。如果是修改字元串中全部內容,可以使用strcpy
但是,如果是局部修改,部分修改的話,或者是修改字元串中某個指定的字元等等,得自己定義一個函數實現。

5. c語言:如何將字元串中指定的字元替換為另一個指定字元

void
rep(char
*s,char
*s1,char
*s2)
{
char
*p;
for(;*s;s++)
/*順序訪問字元串s中的每個字元*/
{
for(p=s1;*p&&*p!=*s;p++);/*檢查當前字元是否在字元串s1中出現*/
if(*p)
*s=*(p-s1+s2);
/*當前字元在字元串s1中出現,用字元串s2中的對應字元代替s中的字元*/
}
}
不知道對於不對,你自己去試下,對了請採納,不對請往下瀏覽

6. C語言中結構體的中的字元串的內容如何修改

兩步。
1、#include<string.h>
2、strcpy(p->name,(p+1)->name);
也可整體賦值:
*p=*(p+1);

7. 怎樣在C語言中修改字元串的一個字元的值

根據字元串存儲的變數的不同,方法不同,參考代碼:
存儲在char數組中(支持C/C++)
char
str[]="hello"
;
int
i;
for(
i=0;str[i];i++
)
printf("%c\n",
str[i]
);
//以數組方式引用一個字元:str[i]
for(
i=0;*(str+i);i++
)
printf("%c\n",
*(str+i)
);
//以指針方式引用一個字元:*(str+i)
存儲在string中(僅支持C++)
string
str="abcde";
for(string::iterator
iter
=
s.begin();
iter!=s.end();
iter++)
//使用迭代器
{
cout<<*iter<<endl;
}
cout<<endl;
for(
int
i=0;i<s.length();i++
)
{
cout<<s[i]<<endl;
//使用數組方式調用,得到單個元素
}

8. c語言中怎麼讀取文件中的字元並更改

運算符優先順序的問題:
while((c=fgetc(p)!=eof))
被解釋成:
while(c=(fgetc(p)!=eof)),
c被賦值為(fgetc(p)!=eof)這個邏輯值了,所以不管文本里的內容是什麼,都會在文件指針未指向文件結尾時列印ascii碼為1的字元(因為fgetc(p)!=eof為真),也就是那個笑臉,到文件結尾時fgetc(p)!=eof為假
c
=
0才退出循環。改動很簡單,加個括弧防止fgetc(p)先和!=eof結合就行了:while((c=fgetc(p))!=eof)

9. c語言怎樣改寫文件中間的字元

C語言的寫文件操作是覆蓋模式,而不是插入模式。即寫入字元時,會覆蓋原本位置的字元,除非寫到文件結尾後繼續寫,否則不會改變原本文件的大小。
所以要改寫文件中間的字元,直接向文件寫入數據即可。
1 打開文件,使用fopen函數。打開時,文件模式需要支持寫操作。
2 對文件通過fseek操作,將文件指針定位到需要寫入的位置。
3 通過fwrite, fprintf, fputs, fputc等函數,向文件寫入新的數據。
4 關閉文件。