程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 在線編程:字符串的完美度

在線編程:字符串的完美度

編輯:C++入門知識

[cpp] 
#include <stdlib.h>  
 
int perfect(const char *s) 

    char    *p=s; 
    int count_array[26]={0}; 
    int count=26; 
    int idle=0; 

#include <stdlib.h>

int perfect(const char *s)
{
    char    *p=s;
    int count_array[26]={0};
    int count=26;
    int idle=0;
[cpp] 
    int i=0; 
    to_upper(p); 
    while(*p) 
        count_array[*p++ - 'A']++; 
 
    sort(&count_array); 
    for(i=0;i<sizeof(count_array)/sizeof(int);i++) 
        idle+=count_array[i]*count--; 
 
    return idle; 

 
void sort(int *array) 

    int i=0; 
    int tmp=0; 
    int j=0; 
    for(i=0;i<26;i++) 
    { 
        for(j=i;j<26;j++) 
        { 
            if(array[j]>array[i]) 
            { 
                tmp=array[j]; 
                array[j]=array[i]; 
                array[i]=tmp; 
            } 
        } 
    } 

 
void to_upper(char *s) 

    while(*s) 
    { 
        if(*s > 96 &&*s <= 123) 
            *s=*s-32; 
        *s++; 
    } 

 
int main() 

    char s[20]="DAD"; 
    printf("pec is %d!\n",perfect(s)); 

    int i=0;
    to_upper(p);
    while(*p)
        count_array[*p++ - 'A']++;

    sort(&count_array);
    for(i=0;i<sizeof(count_array)/sizeof(int);i++)
        idle+=count_array[i]*count--;

    return idle;
}

void sort(int *array)
{
    int i=0;
    int tmp=0;
    int j=0;
    for(i=0;i<26;i++)
    {
        for(j=i;j<26;j++)
        {
            if(array[j]>array[i])
            {
                tmp=array[j];
                array[j]=array[i];
                array[i]=tmp;
            }
        }
    }
}

void to_upper(char *s)
{
    while(*s)
    {
        if(*s > 96 &&*s <= 123)
            *s=*s-32;
        *s++;
    }
}

int main()
{
    char s[20]="DAD";
    printf("pec is %d!\n",perfect(s));
}

 

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved