zoukankan      html  css  js  c++  java
  • 【c++】【2015华为笔试】分解字符串

    按要求分解字符串,输入两个数M,N;M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0。例如:输入2 8 abc 123456789”,则输出为abc00000 12345678 90000000

    输入样例:

    2 8
    abc 123456789

    输出样例:

    abc00000
    12345678 90000000

    程序代码:

    #include<iostream>  
    #include<cstdio>  
    using namespace std;  
    void creat(char* a,int m,int n);
    void print_0(int n);
    void dis(char* str,int n);
    int main()
    {
        int m,n;
        cin>>m;
        cin>>n;
        char str[1000];
        creat(str,m,n);     
        return 0;
    } 
    //输入字符串,调用其他两个函数,分割并打印字符串
    void creat(char* a,int m,int n)
    {
        for(int i=0;i<m;i++)
        {
            scanf("%s",a);
            dis(a,n);
            if(i!=m-1)
                cout<<endl;
        }
    }
    //打印n个0
    void print_0(int n)
    {
        int i;
        for(i=0;i<n;i++)
            putchar('0');
    }
    //分割字符串
    void dis(char* str,int n)
    {
        int j=0;
        int a=strlen(str)/n;
        int b=strlen(str)-n*a;
        for(int i=0;i<a;i++,j+=n)
        {
            for(int k=j;k<j+n;k++)
                cout<<str[k];
                cout<<' ';
        }
        if(b!=0)
        {
            for(int i=a*n;i<strlen(str);i++)
            cout<<str[i];
            print_0(n-b);
        }
    }

    运行结果:
    这里写图片描述

    参考资料:2015年华为机试题

  • 相关阅读:
    java-jdbc基础巩固
    webservice简单的编写,发布,调用
    HanLP笔记
    HanLP笔记
    HanLP笔记
    HanLP笔记
    Python学习小计
    R学习小计
    SPSS学习小记
    C语言学习小记
  • 原文地址:https://www.cnblogs.com/zhengkang/p/5712424.html
Copyright © 2011-2022 走看看