给定100个字符串,字符串由随机函数自动产生,从键盘上输入一个不少于5个字符组成的字符串
#include<stdio.h>
#include <string.h>
#include<time.h>
#define NUM 100
//以下代码from http://blog.csdn.net/u011303443/article/details/70146384
char temp_str[NUM]; // 临时子串
void ReadStrUnit(char * str,char *temp_str,int idx,int len) // 从母串中获取与子串长度相等的临时子串
{
int index = 0;
for(index; index < len; index++)
{
temp_str[index] = str[idx+index];
}
temp_str[index] = '\0';
}
int GetSubStrPos(char *str1,char *str2)
{
int idx = 0;
int len1 = strlen(str1);
int len2 = strlen(str2);
if( len1 < len2)
{
printf("error 1
"); // 子串比母串长
return -1;
}
while(1)
{
ReadStrUnit(str1,temp_str,idx,len2); // 不断获取的从 母串的 idx 位置处更新临时子串
if(strcmp(str2,temp_str)==0)break; // 若临时子串和子串一致,结束循环
idx++; // 改变从母串中取临时子串的位置
if(idx>=len1)return -1; // 若 idx 已经超出母串长度,说明母串不包含该子串
}
return idx; // 返回子串第一个字符在母串中的位置
}
int main()
{
int i,n;
char arr[NUM],sub[NUM];
srand((unsigned)time(NULL));
for(i=0;i<NUM;i++)
arr[i]=rand()%(126-33)+33;
printf("%s
",arr);
scanf("%s",sub);
i = 0;
i = GetSubStrPos(arr,sub);
if( i<0 )
{
printf("not found
");
}
else
{
printf("i = %d
",i);
}
return 0;
}
结果:
给定100个字符串,字符串由随机函数自动产生,从键盘上输入一个不少于5个...
\/\/ 子串比母串长 return -1; } while(1) { ReadStrUnit(str1,temp_str,idx,len2); \/\/ 不断获取的从 母串的 idx 位置处更新临时子串 if(strcmp(str2,
从键盘任意输入不超过100个字符的字符串,该字符串只包含数字字符和空格...
输入格式 允许 前面有任意空格,中间分隔符为1个或多个空格,数据后允许任意个空格(不知道是不是有这样花里胡哨的要求)。include <stdio.h> include <stdlib.h> void f1(char *s){ printf("input one line string\\n");gets(s);printf("your input is:\\n%s\\n",s);} void f2(char *s...
输入一个字符串(最长100个字符)请编写专门函数,统计输入的字符串中有...
在这段代码中,我们定义了一个函数 countChar,用于统计字符串中有多少个字符。我们使用了 string 库中的 length 函数来计算字符串的长度。
c 输入为多个字符串(每个长度不超过100个字符),每个字符串占一行,
include <string.h> include <stdio.h> int main(){char s[200],s1[200];int n,max=0;while(1){gets(s);if(strcmp(s,"***end***")==0)break;n=strlen(s);if(n>max){max=n;strcpy(s1,s);} } printf("%d\\n%s\\n",max,s1);return 0;} ...
编写程序,任意输入一个字符串(字符数小于100),输入一个字符,然后去掉字 ...
编程任务是处理一个字符串,该字符串由用户输入,长度小于100个字符,然后用户输入一个特定字符。程序的目标是从字符串中移除所有出现的该特定字符。具体步骤如下:首先,使用一个字符数组s来存储输入的字符串。通过`gets(s)`函数读取用户输入的字符串,并通过`scanf("%c",&k)`读取要移除的字符。接...
编写一个函数,实现输入长度小于100的字符串,输出有效字符串,并在main函...
include <stdio.h>void fun(char *s){ scanf("%s",s); printf("%s\\n", s);}int main(){ char str[100]; fun(str); return 0;}
输入一个长度不超过 100 的字符串,删除串中的重复字符
include <stdio.h> define N 100 int main(){ char a[N];int i,j,m;scanf("%s",a);for(i=0;a[i]!=0;i++)for(j=i+1;a[j]!=0;j++)if(a[i]==a[j]){ for(m=j;a[m]!=0;m++){ a[m]=a[m+1];} j--;} puts(a);return 0;} ...
c语言题,编写函数,对n个字符串(n<=100,每个字符串的长度不超过1024)进 ...
include<string.h> define N 100 define L 1025 int main(){ char str[N][L],*p[N],*t;int i,j,n;scanf("%d",&n);for(i=0;i<n;++i){ scanf("%s",str[i]);p[i]=str[i];} for(i=0;i<n-1;++i)for(j=0;j<n-i-1;++j)if(strcmp(p[j],p[j+1])>0){ t=...
按键精灵写脚本,如何添加随机防封字符功能
1.确定生成的字符集,可以包含数字、字母、特殊符号等字符,或根据需要进行限制。2.使用随机函数生成特定长度的随机字符串,将生成的字符串与字符集比较,如果不符合要求,则重新生成。3.将生成的字符串插入到按键精灵脚本中,作为防封字符使用。通过添加随机防封字符功能,可以有效提高按键精灵脚本的执行...
编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和...
System.out.println("字母个数:" + chars + "\\n数字个数:" + nums + "\\n空格个数:" + spaces + "\\n其他字符个数:" + others);} \/ param args \/ public static void main(String[] args) { printString("...abcdefghijklmnopqrstuvwxyz ABCD 01 234 5678 901234-[]\/].");} ...