本文目錄一覽:
c語言編程字元串處理
#includestdio.hchar
str1[100],str2[100];char
*mystrcat(char
*s,char
*ct)
//字元串連接
{
while(*(s++));
s–;
while(*ct)
*(s++)
=
*(ct++);
return
s;
}char
*mystrcpy(char
*s,char
*ct)
{
while(*(s++)=*ct,*(ct++));
return
s;
}int
mystrcmp(char
*s,char
*ct)
{
while(*s
*ct)
{
if(*(s++)
==
*(ct++))
continue;
else
return
*(s-1)-*(ct-1);
}
return
0;
}int
mystrlen(char
*s)
{
int
length
=
0;
while((length++,*s++));
return
length-1;
}char
*mystrsort(char
*s)
{
int
i,j,length
=
mystrlen(s);
char
t;
for(i
=
0;i
length;i++)
for(j
=
0;j
length-i-1;j++)
{
if(s[j]
s[j+1])
{
t
=s[j];
s[j]
=
s[j+1];
s[j+1]
=
t;
}
}
return
s;
}int
mystrfind(char
*s,char
ch)
{
int
index
=
0;
while(*s)
if(index++,*s
==
ch)
return
index;
return
-1;
}void
menu()
{
int
choose
=
1;
char
ch;
while(choose
!=
0)
{
printf(“\n1.字元串連接\n2.拷貝\n3.比較\n4.求字元串長度\n5.對字元串內字元進行排序\n6.查找字元串中某個字元是否存在\n0.退出\n”);
scanf(“%d”,choose);
switch(choose)
{
case
1:printf(“輸入2字元串:\n”);
scanf(“%s%s”,str1,str2);
mystrcat(str1,str2);
printf(“連接後的字元串:%s\n”,str1);
break;
case
2:printf(“輸入要拷貝的字元串:\n”);
scanf(“%s”,str2);
mystrcpy(str1,str2);
printf(“拷貝的字元串:%s\n”,str1);
break;
case
3:printf(“輸入要比較的2字元串:\n”);
scanf(“%s%s”,str1,str2);
printf(“%d\n”,mystrcmp(str1,str2));
break;
case
4:
printf(“輸入要求長度的字元串:\n”);
scanf(“%s”,str1);
printf(“長度為:%d\n”,mystrlen(str1));
break;
case
5:
printf(“輸入要求排序的字元串:\n”);
scanf(“%s”,str1);
mystrsort(str1);
printf(“排序後:%s\n”,str1);
break;
case
6:printf(“輸出字元串:\n”);
scanf(“%s”,str1);
printf(“輸入要查找的字元:\n”);
scanf(“%c”,ch);
scanf(“%c”,ch);
printf(“ch所在位置為%d\n”,mystrfind(str1,ch));
}
}
}int
main()
{
menu();
return
0;
}
c語言字元串處理
假如定義字元數組char
a[n];scanf(“%s”,a)不接收空格,遇空格結束讀取,gets(a)從鍵盤讀取n-1個字元,不是n個,第n個字元是系統加的字元串結束符’\0’,
C語言中字元串的處理
strncmp函數【返回值】若str1與str2的前n個字元相同,則返回0;若s1大於s2,則返回大於0的值;若s1 若小於s2,則返回小於0的值。—-百度百科 所以這個的意思就是如果b【0】與a【la-testlen】開始比較testlen個元素,如果相等if就成立 因為!非零==0 !0==1
在C語言中如何實現用鍵盤輸入一個字元串,並列印出來?
在C語言中輸入字元串後然後列印出來的編程方法如下:
1.首先需要先定義一個存放字元串的數組空間,如給字元串100個數組空間。
2.接著使用gets()函數來獲取鍵盤輸入的字元串。一般格式為gets(定義的字元數組名)。
3.然後再使用puts()函數來輸出之前輸入的字元串內容。一般格式puts(定義的字元數組名)。
4.最終運行程序,即可成功實現輸入字元串,然後原樣在屏幕中輸出字元串。
擴展資料:
1.gets從標準輸入設備讀字元串函數,其可以無限讀取,不會判斷上限,以回車結束讀取,所以程序員應該確保buffer的空間足夠大,以便在執行讀操作時不發生溢出。
2.puts()函數用來向標準輸出設備(屏幕)輸出字元串並換行,具體為:把字元串輸出到標準輸出設備,將’\0’轉換為回車換行。其調用方式為,puts(s);其中s為字元串字元(字元串數組名或字元串指針)。
參考資料:
百度百科-gets
百度百科-puts
原創文章,作者:QJJF,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/139035.html