c语言 2、题目:字符串的处理 3.题目:求一个字符串的子串。
本人只是个小菜鸟 你的这个题目如果用 C++相当的简单~~C语言的话 在下用最原始的方法做的 看看行不?
#include
int main()
{
char a[100],b[100],c[100],pp;
int i;
scanf("%s%s%s",a,b,c);
for(i=0;i<=99;i++)
{
if(a[i]>b[i])
{ pp='a';
break;
}
else if(a[i]<b[i])
{ pp='b';
break;
}
else if(a[i]==b[i]&&a[i+1]=='\0'&&b[i+1]=='\0')
{ pp='a';
break;
}
}
if(pp=='a')
{for(i=0;i<=99;i++)
if(a[i]>c[i])
{ pp='a';
break;
}
else if(a[i]<c[i])
{ pp='c';
break;
}
else if(a[i]==c[i]&&a[i+1]=='\0'&&c[i+1]=='\0')
{ pp='a';
break;
}
}
else if(pp=='b')
for(i=0;i<=99;i++)
{ if(b[i]>c[i])
{ pp='b';
break;
}
else if(b[i]<c[i])
{ pp='c';
break;
}
else if(c[i]==b[i]&&c[i+1]=='\0'&&b[i+1]=='\0')
{ pp='a';
break;
}
}
if(pp=='a') printf("%s",a);
else if(pp=='b') printf("%s",b);
else if(pp=='c') printf("%s",c);
return 0;
}
#includeint main(){ int i,j; char a[100],b[100]; gets(a); gets(b); for(i=0;a[i]!='\0';i++) {if ( a[i]==b[0] ){int k;for(k=i+1,j=1;b[j]!='\0';j++,k++){if ( a[k]!=b[j] )break;}if ( b[j]=='\0' ){printf("%d
", i );break;}} }if( a[i]=='\0' )printf("-1
"); return 0;}
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[100], c;
int i, j;
printf (”Enter string:”);
gets (str);
for ( i=0; 【 str[i] != '\0' 】; i++ ); /* 定位到字符串串尾的'\0'*/
i--; /* 寻找到'\0'的前一个字符*/
for ( j=0; j<i; 【 j++ 】,【 i-- 】 ) /* 进行逆序排列*/
{ 【 c=str[i] 】;
str[i]=str[j];
【str[j] =c 】;
}
printf(”Output string:%s\n”, str);
return 0;
}
3.题目:求一个字符串的子串。
程序3:是求一个字符串的子串,输入m,n,(要求m<n,是从0开始的字符编号),求一个字符数组m和n之间(不包含m和n)的部分;
#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[100], sub[100]; /* 字符数组str用来存放字符串,sub用来存放m和n之间的子串 */
int m, n, k, p;
printf(”Enter string:”);
gets(str);
printf(”Enter m n:”);
scanf(”%d%d”, &m, &n);
for ( k=0; k<m &&【str[k] != '\0' 】; k++ );
【k++ 】;
for ( p=0; 【k<n 】; k++, p++ ) /* 复制子串*/
【sub[p] = str[k] 】;
【 sub[p] = '\0' 】; /* 在串sub的后面加上串结束标记 */
printf (”sub=%s\n”, sub);
}
2
潘勉晴尔: 程序2:#include <stdio.h>#include <stdlib.h> int main() { char str[100], c; int i, j; printf (”Enter string:”); gets (str); for ( i=0; 【 str[i] != '\0' 】; i++ ); /* 定位到字符串串尾的'\0'*/ i--; /* 寻找到'\0'的前一个字符*/for ( j=0; j<i; 【 j++ 】,【 i-- 】 ) /* 进...
石渠县19758955809: c语言 2、题目:字符串的处理 3.题目:求一个字符串的子串. - ?
潘勉晴尔: 程序2:#include #include int main(){ char str[100], c; int i, j; printf (”Enter string:”); gets (st...
石渠县19758955809: c语言编程字符串处理 - ?
潘勉晴尔: #include<stdio.h> char str1[100],str2[100]; char *mystrcat(char *s,char *ct) //字符串连接 { while(*(s++)); s--; while(*ct) *(s++) = *(ct++); return s; } char *mystrcpy(char *s,char *ct) { while(*(s++)=*ct,*(ct++)); return s; } int mystrcmp(char *s,char *ct) { while(*...
石渠县19758955809: c语言编程:字符串处理 - ?
潘勉晴尔: #include#include#include int sortArr(int *arr, int count) { int i = 0, j = 0,tmp; for (i = 0; i{ for (j = i + 1; j{ if (arr[i]>arr[j]) { tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp; } } } return 0; } void main() { int rv = 0; int buf[300] = { 0 }; int count = 0; int i = 0; char tmp; int num...
石渠县19758955809: C语言的字符串处理的,求指教 - ?
潘勉晴尔: A错误 str未赋初值 B在x16系统下正确,部分编译器正确 C++ x32下可以写成12345 DWORDflOldProtect; HANDLEhProc = GetCurrentProcess(); VirtualProtectEx(hProc, str4, strlen(str4)+1, PAGE_READWRITE, &flOldProtect); strcpy(str4,"...
石渠县19758955809: C语言 字符串处理 - ?
潘勉晴尔: #include int main() { char *a="测试字符"; char *b="abcd"; char *c=NULL; int i = 0; char buf[64]; printf("a = %s\n",a); printf("b = %s\n",b); printf("strlen a =%d\n",strlen(a)); printf("strlen b =%d\n",strlen(b)); memset(buf,0,64); for(i = 0; ...
石渠县19758955809: C语言简单的字符串、字符处理问题求助 - ?
潘勉晴尔: 第一题:简单点的做法是申请个足够大的char数组.比如假定最多1000种字串,每串最大长度为20,就申请word[1000][20],以及一个num[1000],一个字串个数wordNum,初始化置为0.然后每读到一个字串就d到word中检测有没有重复的,有...
石渠县19758955809: 求教一个C语言中字符串的处理问题 - ?
潘勉晴尔: 这其实就是字符串数组插入,定义一个足够大的数组存放第一个串,然后依次...
石渠县19758955809: C语言字符串处理问题 - ?
潘勉晴尔: char sql[256]; sprintf( sql, "insert into user (name,age,sex) values('%s',%d,'%d')", name, age, sex );
石渠县19758955809: 一道C语言字符串处理题,编辑一个自定义函数delch(char s[],char ch),并在main()函数中调用. - ?
潘勉晴尔: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18#include <stdio.h> #include <string.h> voiddelch(chars[], charch) {inti, j;for(i = strlen(s); i >= 0; i--)if(s[i] == ch)break;for(j = i ; s[j] != '\0'; j++)//<==============s[j] = s[j+1];//<================//s[...