用C语言实现输入一字符串后输出该字符串所有子串

比如 输入abcd后输出a,b,c,d,ab,ac...所有子串

第1个回答  2012-11-18
#include<stdio.h>
#include<string.h>
void main()
{
char a[100];
int i,j,k,n;
gets(a);
n=strlen(a);
for(i=0;i<=n;i++)
for(j=i;j<n;j++)
{for(k=i;k<=j;k++)
printf("%c",a[k]);
printf("\n");
}
}
第2个回答  2011-12-13
刚好是我刚做过得....#include <stdio.h>
#include <stdlib.h>

char *substr(char *s,int pos,int n,char *t) { // 返回字符串s中从pos开始的n个字符
int i = 0;
while((i < n) && (*s)) {
t[i] = s[pos + i];
++i;
}
t[i] = '\0';
return t;
}

int main() {
char t[20],s[] = "the c programing language!";
printf("t = %s\n",substr(s,6,10,t));
system("pause");
return 0;
} 赞同0| 评论追问

不是我想要的功能

用C语言实现输入一字符串后输出该字符串所有子串
printf("%c",a[k]);printf("\\n");} }

...一个不超过100字符的字符串,输出其中最长子字符串和它的长度。咋写...
int main(int argc,char *argv[]){ char str[101],i,j,k,x,y,m,f;printf("Enter a string...\\nstr=");scanf("%100s",str);for(k=0;str[k];k++);for(f=m=i=0;i<k;i++)for(j=k-1;j>i;j--)if(str[j]==str[i]){ for(y=j,x=i;x<y;x++,y--)if(str[x...

C语言编程:从键盘输入一个字符串,查找指定子串第一次出现的位置。求问题...
include <stdio.h>#include <stdlib.h>#include <math.h>int SearchString(char s[], char d[]);main(){char s[81]; \/\/储存一串字符char d[10]; \/\/储存要查找的字符int flag;\/\/输入一串字符printf("Input a string:");gets(s);\/\/输入想要查找的字符printf("Input another string...

C语言:输入一串字符串,输出三角形样式图案,每行包含行号和子串
include <stdio.h>int main(){ int i; char c; char str[100]; scanf("%s",str); for(i=0;str[i]!='\\0';i++) { c=str[i+1]; str[i+1]='\\0'; printf("%d: %s\\n",i+1,str); str[i+1]=c; }} ...

C语言 输入一个字符串,输出三角形样式图案,每行包含行号与子串。
include <stdio.h> #include <string.h> int main(int argc, char **argv){ printf("请输入:\\n"); char a[10]; scanf("%s", a); int len = strlen(a); int i=0; int j; for(;i<len; i++){ for(j=i+1; j<len; j++){ printf("%c...

c语言中如何输入输出字符串
在C语言中,输入输出字符串有以下两种方式:1 用scanf\/printf输入输出。scanf\/printf是C语言的格式化输入输出函数,可以用于输入输出各种基础类型,字符串(char*)也 其支持范围内。格式化字符为%s。定义 char str[100];输入 scanf("%s",str);输出 printf("%s",str);2 C语言还支持专门的字符串输入...

c语言,取字符串的子串
{ printf("Substring invidal !\\n");exit (0);} p=s+n;(p+m+1)='\\0';\/\/必须'\\0',printf函数读到'\\0'停止;return(p);} int main(void){ char s1[]="The c programing language!";\/\/ char *常量 system("cls");printf("%s\\n",subs(s1,5,16));} ...

C语言怎么用printf输出字符串。
C语言怎么用printf输出字符串printf函数的一般格式printf(格式控制字符串,输出表列);以图1所示为例。图1.函数参数包括两部分:【1】格式控制字符串,是用双引号括起来的字符串,也称为转换控制字符串,它指定输出数据项的类型和格式。它包括两种信息:●格式说明项:由%和格式字符组成,如%d,%f...

C语言 将用户输入的字符串中的所有数字提取出来
{ intz=0;intt,i;int*p;intm=0;ints=0;chara[10];\/\/输入一个字符串到a[6]printf("请输入一个字符串\\n");scanf("%s",a);\/\/输入字符串 for(i=0;i<10;i++)\/\/计算a[6]中的数字个数 { if(a[i]>='0'&&a[i]<='9')m++;} if(m==0)printf("字符串中没有数字\\n");p...

【C语言】问题求助:输入一个字符串,内有数字和非数字字符,
printf("请输入一个包含整数的字符串:\\n");gets(str);n = getNumber( str, pi );printf( "共包含 %d 个整数数值: \\n", n );for( i = 0; i < n; i++ )printf(" %d\\n", *(pi + i) );free(pi);return 0;} 输入:132,568a79555+11151%125548&987113#11 46213 输出:共...

相似回答