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=亮白色