注意,该程序最多可输入20个字符,如果要更多,自己把*p[20];里的数字改得列大就行了
include<stdio.h>void main() { char str[256],str1[256],str2[256],*p,*q,*r; gets(str); p=str1; q=str2; r=str; while ( *r ) { if ( *r>='0' && *r<='9' ) { *p=*r; p++; } else if ( *r>='a' && *r<='z' ) { *q=*r; q++; } ...
include<stdio.h>int strcat(char*s1,char*s2){char *p; for(p=s1;*p;p++); for(;*p++=*s2++;); return p-s1-1;}int main(){char s1[100],s2[100]; gets(s1); gets(s2); printf("%d\n",strcat(s1,s2)); return 0;} ...
以下是一个C语言程序,可以读入一串字符串,去除其中的空格和数字字符,并输出结果。程序会一直读取输入,直到遇到回车符为止。 ```c #include <stdio.h> #include <ctype.h> int main() { char str[100]; int i = 0; printf("请输入字符串(以回车结束):\n"); while (1) { char c = getchar(); ...
include <stdio.h> int main(){char s1[200],s2[200],s3[400],*p1,*p2;gets(s1);gets(s2);for(p1=s1,p2=s3;*p2++=*p1++;);for(p1=s2,p2--;*p2++=*p1++;);puts(s3);printf("%d\n",p2-s3);return 0;}
如果是 scanf 用的%s,回车、Tab或者空格都可以的。如果是用的getline,那么必须回车
include <stdio.h> include <string.h> void main(){ int i, len;char temp;char buf[512] = { 0 };scanf("%s", buf);len = strlen(buf);for (i = 0; i < len/2; i++){ temp = buf[i];buf[i] = buf[len - 1 - i];buf[len - 1 - i] = temp;} printf("%s"...
思路是创建一个指向数组头的指针和数组尾的指针,然后首尾位置上的变量逐个交换值,最后到中间即2/len就...