當前位置:首頁 » 編程語言 » c語言子串

c語言子串

發布時間: 2022-05-04 19:52:27

A. c語言之求字元串的子串

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char*sub(char*s,intst,intlen)
{char*s1;
inti;
s1=(char*)malloc(len);
for(i=0;i<len;i++)s1[i]=s[st+i-1];
s1[i]='';
returns1;
}
intmain()
{intn,i,j;
chars[200];
scanf("%d%*c",&n);
while(n--)
{printf("inputastring:");
gets(s);
printf("i=");
scanf("%d",&i);
printf("j=");
scanf("%d%*c",&j);
if(i+j>strlen(s))printf("Error ");
elseprintf("%s ",sub(s,i,j));
}
return0;
}

B. C語言字元串

若你的編譯器支持中文字元輸出,則你可把輸出語句里的英文字元改用中文。
#include<stdio.h>
int main()
{
char s[80];
int i;
printf("input a string (upper-case latters only) please:\n");
loop: gets(s);
for (i=0;i<strlen(s);i++){
if (s[i]>='A' && s[i]<='Z') continue; //大寫判斷
else {
printf("re_input a string (upper-case latters only) please:\n");
goto loop; //轉向語句
};
};
printf("output reversed:\n");
for (i=strlen(s)-1;i>=0;i--) printf("%c",s[i]);
return 0;
}

C. c語言,取字元串的子串

//vc++ 6.0下運行通過
#include <stdio.h>
#include <stdlib.h>
char *subs(char *s,int n,int m)
{
char *p;
int i=0;
p=s;
while(*p++ != '\0') //NULL是void *型
{
i++;
}
if(n<0||m<0||m<n||m>i)
{
printf("Substring invidal !\n");
exit (0);
}
p=s+n;
*(p+m+1)='\0';//必須'\0',printf函數讀到'\0'停止;
return(p);
}

int main(void)
{
char s1[]="The c programing language!";// char *常量
system("cls");
printf("%s\n",subs(s1,5,16));
}

D. c語言字元串長度有哪些

這個字元串長度為10個字元。

可以用strlen("ab'1'\12803")來求這個字元串的長度。

也可以用sizeof("ab'1'\12803")來求,但是這個求出的結果是多了一個字元串結束符。

可以試著輸出這個字元串看看是不是10個字元。

strlen()函數判斷的字元串長度是以為結尾作為標志的。

當char * m=new char[TOKEN_LENGTH]後,雖然為指針分配了地址,但是其指向的內容未被初始化,所以m指向的內容是未知的,可能在第24個字元的位置發現了所以strlen()顯示長度為24。

數據類型

字元串數據類型是建模在形式字元串的想法上的數據類型。字元串是幾乎在所有編程語言中可以實現的非常重要和有用的數據類型。在某些語言中它們可作為基本類型獲得,在另一些語言中做為復合類型獲得。多數高級語言的語法允許通常用某種方式引用起來的字元串來表示字元串數據類型的實例;這種元字元串叫做「文本」或「字元串文本」。

以上內容參考:網路-字元串

E. C語言怎麼合並兩個字元串

代碼:

char str1="123";

char str2="abc";

strcat(str1,str2);

printf("%s",str1);

例如:

#include <stdio.h>

#include <string.h>

main()

{

char strDes[N]= "kkkjdah", strSor[N]="sdasdaaa";

strcat(strSor,strDes);//鏈接

puts(strDes);

puts(strSor);

}

(5)c語言子串擴展閱讀:

字元串在存儲上類似字元數組,它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。

通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。

F. C語言判斷一個字元串是否是另一個字元串的子串

1、首先,定義兩個整型變數,保存判斷的數和同構串計數。

G. C語言中判斷一個字元串是否為另一字元串的子串

你的if語句後面再加個if語句判斷f是否等於1,等於1就不用循環了。你沒判斷,後面的字元又把你的1改回0了。修改後代碼如下

#include<stdio.h>
#include<string.h>
main(){
chara[100],b[100];
inti,j,f=0;
gets(a);//cde
gets(b);//aabbcdefghbcd
for(i=0;i<strlen(b);i++){
if(b[i]==a[0]){
for(j=1;j<strlen(a);j++){
if(a[j]==b[i+j]){
f=1;
continue;
}else{
f=0;
break;
}
}
}
if(f==1){
break;
}
}
if(f==1)
printf("YES");
else
printf("NO");
}

使用庫函數strstr

#include<stdio.h>
#include<string.h>
main(){
chara[100],b[100];
gets(a);
gets(b);
if(strstr(b,a)!=NULL){//第2個參數第1個參數的子串
printf("YES");
}else{
printf("NO");
}
}

H. 如何用c語言來表達一個字元串

1)在串值後面加一個不計入長度的結束標記字元,比如'\0'來表示串值的終結

初始化一個字元串的方法如下,在最後添加'\0'

char str[] = {'I','a','m','h','a','p','p','y','\0'};
也可以直接使用字元串常量初始化字元數組(系統自動加上'\0'),這種方法符合人們的習慣。

char str[] = "I am happy";
或者
char str[] = {"I am happy"};
注意:不能使用下面的賦值方式:
char str[20];
str = "I am happy";
但可以用字元指針指向這個字元串:
char *str;
str = "I love China";

(2)將實際串長度值保存在數組0的下標下

#define MAXSIZE 20 //數組的長度
typdef char String[MAXSIZE+1];
初始化字元串的方法:

String t;
StrAssign(t,"I am happy");
int StrAssign(String T,char *chars)
{
T[0] = strlen(chars); //下標為0存放數組長度
for(i=1;i<=strlen(chars);i++) //下標位置從1開始存放數據
{
T[i] = *(chars+i-1);
}
return 1;
}
(3)使用結構體類型(自定義類型)

#define MAXSIZE 20
typedef struct{
char ch[MAXSIZE];
int len;
}String;
其中:MAXSIZE表示串的最大長度,ch是存儲字元串的一維數組,len是字元串的長度
初始化函數示例:

String t;
StrAssign(&t,"I am happy");
int StrAssign(String *t,char *chars)
{
int i;
if(strlen(chars)>MAXSIZE+1) //字元串的長度大於數組的長度,操作失敗,返回0
return 0;
for(i=0;i<strlen(chars);i++)
{
t->ch[i] = *(chars+i);
}
t->len = strlen(chars); //數組的長度
return 1; //返回1,操作成功
}
說明:這里的StrAssign函數的參數t使用的是指針,是因為結構體變數做做形參,用法和普通變數一樣屬於值傳遞方式,在子函數中要給t賦值,所以輸入的是t的指針。與之對比的是(2)子函數中T是數組,傳入的是數組的首地址(改變形參也就改變了實參)。

————————————————
版權聲明:本文為CSDN博主「chenkaibsw」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/chenkaibsw/article/details/78957944

I. C語言子串

比如字元串「abcdefghi」,「a」、「bcd」、「defg」等都是「abcdefghi」子串

熱點內容
安徽新能源網路配置是什麼 發布:2025-05-14 10:06:24 瀏覽:630
pinode搭建伺服器 發布:2025-05-14 10:04:23 瀏覽:3
電腦伺服器ip名稱 發布:2025-05-14 10:01:09 瀏覽:748
connectorpython 發布:2025-05-14 09:48:50 瀏覽:763
配置不好怎麼辦 發布:2025-05-14 09:46:40 瀏覽:622
數據流程圖中的數據存儲是指 發布:2025-05-14 09:46:39 瀏覽:445
我的世界伺服器id前綴mod 發布:2025-05-14 09:45:53 瀏覽:830
完整後台網站源碼 發布:2025-05-14 09:45:46 瀏覽:455
傳奇祝福腳本 發布:2025-05-14 09:34:12 瀏覽:572
電腦文件加密的軟體 發布:2025-05-14 09:29:20 瀏覽:354