zoukankan      html  css  js  c++  java
  • 华为2013年的一题上机笔试题(关于字符串)

      题目大致的意思是这样的:输入一段字符串,输出每个字母以及它们出现的次数,重复字母只输出一次。

      例如:输入AAABBB

         输出A3B3

      程序如下:

      

    #include<stdio.h>
    #include<string.h>
    #define M 100
    void eval(char *p, int );
    int main()
    {
     int length;
     char str[M];
     scanf("%s", str);
     length = strlen(str);
     eval(str, length);
     printf(" ");
     return 0;
    }

    void eval(char *p, int length)
    {
     int i, j, k;
     for(i=0; i<length; i++)
     {
      if(p[i])
      {
       int a = 1;
       for(j=i+1; j<length; j++)
       {
        if(p[i]==p[j])
        {
         p[j] = 0;//设置标识,只要相同的字母,除了第一次出现,其他出现的位置都置0,然后加上if判断,防止重复输出。
         a++;
        }
       }
       printf("%c%d", p[i], a);
      }
     }
      
    }

  • 相关阅读:
    Bresenham画线算法
    DDA算法
    GL_LINES & GL_LINE_STRIP & GL_LINE_LOOP
    贝塞尔曲线
    弱引用
    Lambert模型
    ShadowVolume
    Phong Shading
    求反射向量
    Vertex Modifier of Surface Shader
  • 原文地址:https://www.cnblogs.com/wdc123/p/3384850.html
Copyright © 2011-2022 走看看