C语言:将字符串中的前导*号全部移到字符串的尾部。

//规定输入的字符串中只包含字母和*号,fun函数:将字符串中的前导*号全部移到字符串的尾部。

 1 #include <stdio.h>
 2 void  fun( char *a )
 3 {
 4     char b[81];
 5     char *c,*d;
 6     c = a;
 7     int i = 0;
 8     while (*c == ‘*‘)
 9     {
10         c++;
11     }
12     d = c;
13     while (*c != ‘\0‘)
14     {
15         b[i] = *c;
16         i++;
17         c++;
18     }
19     int e = 0;
20     while (a < d)
21     {
22         b[i] = *a;
23         i++;
24         a++;
25         e++;
26     }
27     a = a - e;
28     for (int j = 0; j < i; j++)
29     {
30         *a = b[j];
31         a++;
32     }
33     *a = ‘\0‘;
34 }
35
36 void main()
37 {  char  s[81];  int  n=0; void NONO ();
38    printf("Enter a string:\n");gets(s);
39    fun( s );
40    printf("The string after moveing:\n");puts(s);
41    NONO();
42 }
43 void NONO ()
44 {/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
45   FILE *in, *out ;
46   int i ; char s[81] ;
47   in = fopen("in.dat","r") ;
48   out = fopen("out.dat","w") ;
49   for(i = 0 ; i < 10 ; i++) {
50     fscanf(in, "%s", s) ;
51     fun(s) ;
52     fprintf(out, "%s\n", s) ;
53   }
54   fclose(in) ;
55   fclose(out) ;
56 }

原文地址:https://www.cnblogs.com/ming-4/p/10583369.html

时间: 2024-11-05 23:30:56

C语言:将字符串中的前导*号全部移到字符串的尾部。的相关文章

怎么移除一个字符串中的前导空格

字符串中的前导空格就是出现在字符串中第一个非空格字符前的空格,我们使用方法lstrip()可以将它从字符串中移除 a=' Ayushi '.lstrip() print(a) #Ayushi  可以看到,该字符串既有前导字符,也有后缀字符,调用lstrip()去除了前导空格,如果我们想去除后缀空格,就用rstrip()方法 a=' Ayushi '.rstrip() print(a) # Ayushi 原文地址:https://www.cnblogs.com/z-x-y/p/9906772.ht

找出一个字符串中最长重复次数的子字符串,并计算其重复次数

原题 找出一个字符串中最长重复次数的子字符串,并计算其重复次数.例如:字符串"abc fghi bc kl abcd lkm abcdefg",并返回"abcd"和2. 我的思路 为了方便表述,我们使用变量src作为原字符串,sub_str作为子字符串. 由于题目要求寻找至少重复2次的最长的子字符串,重点在于最长的子字符串,而不在于重复的最多次数.因此我们可以从长度最长的字符串入手,计算其重复次数.只要重复达到2次,即可返回该字符串. 显然长度最长的子字符串就是原串

使用正则表达式寻找字符串中出现了几个[***]样式的字符串

使用正则表达式寻找字符串中出现了几个[***]样式的字符串 源码如下: - (NSUInteger)analyseRX:(NSString *)string withPatternString:(NSString *)patternString { // \\[[^\\]]+\\] 用以匹配字符串中所出现的 [*] 的个数 // <[^>]+> 用以匹配字符串中所出现的 <*> 的个数 if (string == nil) { return 0; } // 正则表达式 NSR

JavaScript基础 substr(startIndex, length) 在原始字符串中,截取并返回一个子字符串

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

字符串中连续出现最多的子串 &amp;amp; 字符串中最长反复子串

字符串中连续出现最多的子串 & 字符串中最长反复子串 字符串中连续出现最多的子串 & 字符串中最长反复子串,这两个问题都能够用后缀数组来表示,至于后缀数组能够參考编程珠玑P156:后缀数组就是定义一个数组指针,分别指向字符串中的相应位置,例如以下: a b c a b c a b c d e .substr[0] b c a b c a b c d e ....substr[1] c a b c a b c d e .......substr[2] a b c a b c d e ....

java中把某个字符串中的单引号替换成双引号

String regexp = "\'";String str = "'good'";System.out.println("替换前:" + str);str = str.replaceAll(regexp, "\""); 注意此处一定要写成str = str.replaceAll(regexp, "\"");这样的形式: 不能写成str.replaceAll(regexp, "

js从字符串中提取身份证号,连续18位数字

<!DOCTYPE html> <html> <head> <title>提取身份证号</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalabl

判断java或js中的某个字符串中是否包含有某个字符或是字符串

js中: varCts = "aaddssyes"; if(Cts.indexOf("yes") > 0 ){     alert('Cts中包含Text字符串'); } 找的是最开始的位置,如果没找到,则返回的是-1. functionIndexDemo(str){    varstr1 = "BABEBIBOBUBABEBIBOBU"    vars = str1.indexOf(str);    return(s); } str是外边

编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。

char str[255] = {0}; printf("请输入一个字符串:\n"); scanf("%[^\n]", str);//意思是非'\n'.也就是说只要没有遇到换行就继续输入,当遇到换行符的时候此语句结束.而默认情况是遇到换行语句执行结束,但是str的值只是第一个空格前的值.但这样写,按回车时scanf执行完,中间所有内容包括空格都会输入到str中去. // gets(str); int maxLength = 0, maxIndex = 0; int