C语言取某个字符后的字符串存到另一个字符串
假设某一特定字符是“φ”并在A1单元格(φ可改成想找的字符) B1=IF(ISNUMBER(FIND("φ",A1)),"有","无")
java 判断一个字符串中是否含有另一个字符串中的字符非常简单:
boolean a = s.contains("??");
思路:先遍历字符串,如果找到该字符后,把后面的所有字符复制到另一个字符串。
例如:
#include <stdio.h>
#include <string.h>
int main ()
{
char ch1[]="123456789",ch2[20],a='4';
int i=0,j=0;
while(ch1[i++]!=a);
while(ch1[i]){
ch2[j++]=ch1[i++];
}
ch2[j]='\0';
puts(ch2);
return 0;
}
/*
输出:
56789
*/
#include<stdio.h>
#include<string.h> //支持strlen()的应用
#include<stdlib.h> //支持exit(1)
char *mcopy(char*s ,int m); //函数的定义
void main(void)
{
char str1[100];
char *str2;
int m;
printf("请输入你要输入的字符串\n");
gets(str1);
printf("请输入你要开始复制字符的位置m\n");
scanf("%d",&m);
if(m>=strlen(str1)) //若输入m值过大,结束程序
{
printf("输入值超出字符串长度...\n");
exit(1);
}
str2=mcopy(str1,m); //程序的调用
for(int j=0;j<strlen(str2);j++) //把数组进行输出
printf("字符串第%d个元素是%c\n",m++,str2[j]); //字符的输出
}
char *mcopy(char*s ,int m)
{
static char array[100];
int count=0;
for(int i=m-1;i<strlen(s);i++)
{
array[count]=s[i];
count++;
}
return array;
}
#include <stdio.h>
void main()
{
char buf[200]="Network Number: 58.154.16.0 - 58.154.31.255\0",buf1[200];
int i=0;
while(buf[i]!=0&&buf[i]!=':') i++;
if(buf[i]==':') i++;
sprintf(buf1,"%s",buf+i);printf("[%s]",buf1);/*buf1就是:后面的内容*/
}
运行如下:
[ 58.154.16.0 - 58.154.31.255]
代码如下。。。我测试过了。。。。
#include "stdio.h"
main()
{
char s1[] = "Network Number: 58.154.16.0 - 58.154.31.255";
char s2[] = "Network Name: SYIAEC-CN";
char result1[30];
char result2[30];
int i,j;
for(i = 0; i<strlen(s1);i++)
if(s1[i]==':'){
j = i+1;
break;
}
for(i=0;j<strlen(s1);i++,j++)
result1[i] = s1[j];
result1[i] = '\0';
puts(result1);
for(i = 0; i<strlen(s2);i++)
if(s2[i]==':'){
j = i+1;
break;
}
for(i=0;j<strlen(s2);i++,j++)
result2[i] = s2[j];
result2[i] = '\0';
puts(result2);
getch();
}
希望对你有帮助。。。。仍有问题可以HI我。。。。。
#include <stdlib.h>
#include <string.h>
void main()
{
FILE *fp;
char buf[3][1024];
char *Input1=buf[0],*Input2=buf[1],*save=buf[2];
printf("请输入密码:\n");
scanf("%s",Input1);
fp=fopen("code.txt","w"); //以读写方式打开code.txt文件,如果没有文件就建立这个文件
fputs(Input1,fp); //将save里边的字符窜(即密码)写入code.txt文件中
printf("请再输入密码:\n");
scanf("%s",Input2);
fclose(fp);
fp=fopen("code.txt","r");
fgets(save,1024,fp);
fclose(fp);
if(strcmp(Input2,save)==0) //string.h 里边的函数
printf("success\n");
else
printf("error\n");
}
C语言取某个字符后的字符串存到另一个字符串
思路:先遍历字符串,如果找到该字符后,把后面的所有字符复制到另一个字符串。例如:include <stdio.h>#include <string.h>int main (){char ch1[]="123456789",ch2[20],a='4';int i=0,j=0;while(ch1[i++]!=a);while(ch1[i]){ch2[j++]=ch1[i++];}ch2[j]='\\0';puts(ch2)...
C语言取某个字符后的字符串存到另一个字符串
思路:先遍历字符串,如果找到该字符后,把后面的所有字符复制到另一个字符串。 例如: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include <stdio.h> #include <string.h> int main () { char ch1[]="123456789",ch2[20],a='4'; int i=0,j=0; while(ch1[i++]!=a); while(...
...第3个字母开始的其余的字符并保存到另一个字符串中
在C语言中,如果想要从一个字符串的第3个字符开始提取其余的字符,并将这些字符保存到另一个字符串中,首先需要正确地定义字符串变量。例如,使用char *x="abcdefg"这样的定义方式,这里定义了一个字符串变量,而非仅仅定义了一个字符变量,如char x。在赋值时,只能给x赋一个单个字符,例如x='a'。
怎么把字符串中的一段取出来赋到另一个字符串中
用memcpy函数吧,很简单,看看下面的例子就知道了 memcpy 原型:extern void *memcpy(void *dest, void *src, unsigned int count);用法:#include <string.h> 功能:由src所指内存区域复制count个字节到dest所指内存区域。说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。注意:与strcpy...
c语言将一个字符串复制到另一个字符串
用标准函数 strcpy() 即可。例如:char s1[40]="abcd_1234";char s2[40];strcpy(s2,s1); \/\/复制到s2 printf("%s\\n",s2); \/\/输出。
...第3个字母开始的其余的字符并保存到另一个字符串中
应该这样定义 char *x="abcdefg",这样定义就是定义了一个字符串变量,而你的定义char x 只是定义x为字符变量,在赋值的时候只能赋给x单个字符,如x='a',要搞清楚 字符 和 字符串 的概念 至于你说的提取字符,可如下方法 for(i=0; i<n; i++)\/\/n是字符串变量y的字符个数 { y[i]=x[...
求教c语言怎么将字符串指定字符后面的数字提取,然后放入其他字符串?
情况1:输出数组字符串,字符串输出遇见'\\0',表示结束 情况2:按照单个字节打印,
用c语言求解 输入一个字符串,逆序存放到另一个数组中,并输出?
include<stdio.h> include<string.h> void main(){ char a[20],b[20];int i,j=0;gets(a);for(i=strlen(a)-1;i>=0;i--){ b[j++]=a[i]; } b[j]='\\0';puts(b);}
怎么用c语言在a.txt文件中获取一指定字符串,如(china),然后将其写入到...
首先,打开一个tmp.txt的文件保存结果文件 FILE* out=fopen("tmp.txt","w");FILE* in=fopen("原文件.txt","r");循环采用fgets从in中读入字符串,fgets可以指定读入的最大字符串长度,因此可以一部分一部分地读,处理到文件结束为止 然后,因为你是要对完整的单词进行处理,所以fgets完之后再继续...
c++,c语言把一个字符串复制到另外一个字符串中。我不明白为什么要在复制...
没有初始化的时候。编译器默认分配的字符,就是那些乱码 烫~~~输出puts函数是遇到'\0'结束符就结束字符串的输出,没有结束符标志自然全部输出,会有乱码 如果你不进行str2[i] = '\\0';赋值的话。那你在最开始 str2[80]要进行初始化 str2[80]=0;这样就一样的效果。有问题请追问 ...