c語言字元串中查找字元
1. 一個簡單c語言題目,大神求助!在字元串中查找指定字元
1、打開python語言命令窗口,定義字元串變數s1並進行賦值。
2. c語言在字元串中查找指定字元,並輸出指定字元在字元串中出現的次數及下標
#include<stdio.h>
#include<string.h>
int main()
{
char a[80]={"abcdefghijklmnopqrstuvwxyz"},ch;
int i,j,m=0,flag=0,b[80],len;
len=strlen(a);
scanf("%c",&ch); //改成%c。「%s」是字元串輸入。ch只是單個字元
for(i=0;i<len;i++)
if(ch==a[i])
{b[m]=i;
m=m+1;
flag=1;}
if(flag==0)
printf("no found\n");
else
printf("m=%d",m);
for(j=0;j<m;j++)
printf("\n%d\n",b[j]);
return 0;
}
3. 用c語言在一個字元串中查找另一個字元串,並統計個數
例如,asdfgasfgasf,as,則輸出3。
#include<stdio.h>
#include<stdlib.h>
intmain()
{
charS[100],T[20];
charch1,ch2;
printf("請輸入主字元串:\n");
ch1=getchar();
inti=0;
while(ch1!='\n')
{
S[i]=ch1;
i++;
ch1=getchar();
}
printf("請輸入要篩選的字元串:\n");
ch2=getchar();
intj=0;
while(ch2!='\n')
{
T[j]=ch2;
j++;
ch2=getchar();
}
intm,n;//m為S的下標,n為T的下標
m=0;
n=0;
intnum=0;//num用於記錄選定單詞出現的次數
while(m<=i&&n<=j)
{
if(S[m]==T[n])
{
m++;
n++;
}
else
{
m=m-n+1;
n=0;
}
if(n==j)
{
num++;
}
}
if(m==i+1)
{
printf("出現的次數是%d",num);
}
}
(3)c語言字元串中查找字元擴展閱讀:
while語句若一直滿足條件,則會不斷的重復下去。但有時,需要停止循環,則可以用下面的三種方式:
一、在while語句中設定條件語句,條件不滿足,則循環自動停止。
如:只輸出3的倍數的循環;可以設置范圍為:0到20。
二、在循環結構中加入流程式控制制語句,可以使用戶退出循環。
1、break流程式控制制:強制中斷該運行區內的語句,跳出該運行區,繼續運行區域外的語句。
2、continue流程式控制制:也是中斷循環內的運行操作,並且從頭開始運行。
三、利用標識來控制while語句的結束時間。
4. C語言中在字元串中查找指定字元串
#include"stdio.h" #include"string.h" void main() { char *str1="nayitian anzd"; char *str2="anz"; int index[20]; int num = 0; int i,j; for (i = 0; i < strlen(str1) - 3; i++) for (j = 0; j < 3; j++) { if (*(str1 + i) == *(str2 + j)) //比較 { i ++; //str1移到下一位 if (j == 2) //如果比較了三次都相等則找到一個 { index[num] = i - 2; //記錄str1下標 num ++; } } else { i = i - j; //有不相等的跳出,i回到比較前的值 break; } } printf("共找到:%d個\n",num); printf("下標分別是:"); for (i = 0; i < num; i++) { printf("\t%d",index[i]); } getchar(); }
5. C語言實現在一個字元串中查找指定的字元,並輸出指定字元在字元串中出現的次數和位置
package com.string.to;
import java.util.Arrays;
import java.util.Scanner;
public class JudeCount{
public static void main(String[]args){
System.out.println("請輸入你要判斷的字元串:");
Scanner s=new Scanner(System.in);
String str=s.nextLine();
char[]ch=str.toCharArray();
Arrays.sort(ch);//對數組排序
char max='a';//記錄出現次數最多元素
int maxcount=0;//記錄最大出現次數
int count=1;//中間傳值參數判斷當前元素出現次數
for(int i=0;i<ch.length-1;i++){//進行判斷
if(ch<i>==ch[i+1]){
count++;
}
if(ch<i>!=ch[i+1]){
if(count>maxcount){
maxcount=count;
max=ch<i>;
}
count=1;
}
}
System.out.println("出現最多的元素是:"+max+"次數為:"+maxcount);
}
}
(5)c語言字元串中查找字元擴展閱讀:
system函數用法:
用法:intsystem(char*command);
程序例:
#include<stdlib.h>
#include<stdio.h>
intmain(void)
{
printf("AbouttospawnandrunaDOScommand\n");
system("dir");
return0;
}
又如:system("pause")可以實現凍結屏幕,便於觀察程序的執行結果;system("CLS")可以實現清屏操作。而調用color函數可以改變控制台的前景色和背景,具體參數在下面說明。
例如,用system("color0A");其中color後面的0是背景色代號,A是前鬧扒握景色代號。各顏色代碼如此純下:
0=黑色1=藍色2=綠色3=湖藍色4=紅色5=紫色6=黃色7=白色8=灰色9=淡藍色A=淡綠色B=淡淺綠色C=淡紅色D=淡紫色E=淡黃色F=亮白色
(注意:MicrosoftVisualC++6.0支持system)
顏色屬性由兩個十六進制數字指定--第一個對應於背景,第二個對應於前景。每個數字
可以為以下任何值:
0=黑色8=灰色
1=藍色9=淡藍色
2=綠色A=淡綠色
3=淺綠色B=淡淺綠色
4=紅色C=淡紅色
5=紫色D=淡紫色
6=黃色E=淡黃色
7=白液慶色F=亮白色