华为机试:字符串分隔

题目描述

•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组; 
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。

输入描述:

连续输入字符串(输入2次,每个字符串长度小于100)

输出描述:

输出到长度为8的新字符串数组

示例1

输入

abc
123456789

输出

abc00000
12345678
90000000

Java:

 1 import java.util.Arrays;
 2 import java.util.Scanner;
 3
 4 public class Main {
 5
 6     public static void main(String[] args) {
 7         Scanner sc=new Scanner(System.in);
 8         while(sc.hasNext()){
 9             String s = sc.nextLine();
10             for(int i = 0; i < Math.ceil(s.length()/8.0);i++){
11                 if((i+1)*8>s.length()){
12                     String sub = s.substring(i*8, s.length());
13                     System.out.print(sub);
14                     for(int j = 0; j < ((i+1)*8-s.length()) ;j++){
15                         System.out.print("0");
16                     }
17                     System.out.println();
18                 }else{
19                     String sub = s.substring(i*8, i*8+8);
20                     System.out.println(sub);
21                 }
22             }
23         }
24         sc.close();
25     }
26 }
时间: 2024-10-20 07:50:10

华为机试:字符串分隔的相关文章

华为机试—字符串压缩

题目:字符串压缩 通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串. 压缩规则: 1. 仅压缩连续重复出现的字符.比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc". 2. 压缩字段的格式为"字符重复的次数+字符".例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz" 要求实现函数: vo

华为机试—字符串M化成以N为单位的段

按要求分解字符串,输入两个数M,N,M代表输入的M个待处理的字符串,N代表输出的每串字符串要处理成的位数,不够补0. 例如: 输入:2  8 abc  123456789 输出:abc00000 12345678,90000000 #include<iostream> #include<string> using namespace std; string s; string tmp; int main(int argc, char *argv[]) { int m,n; int

华为机试题-字符串分隔

题目描述 ?连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组:?长度不是8整数倍的字符串请在后面补数字0,空字符串不处理. 输入描述: 连续输入字符串(输入2次,每个字符串长度小于100) 输出描述: 输出到长度为8的新字符串数组 输入例子: abc 123456789 输出例子: abc00000 12345678 90000000 #include <iostream>#include <string> using namespace std; int main

华为机试—字符串首字母转换成大写

举例: 输入:this is a book 返回:This Is A Book #include<stdio.h> #include<stdlib.h> #include<string.h> int main() { char input[]="this is a book"; char output[256]={'\0'}; int i,len; len=strlen(input); printf("变换前的字符串为:%s\n"

华为机试—字符串替代(aa-bc)

将输入的字符串(字符串仅包含小写字母'a'到'z'),按照如下规则,循环转换后输出:a->b,b->c,-,y->z,z->a:若输入的字符串连续出现两个字母相同时,后一个字母需要连续转换2次.例如:aa 转换为 bc,zz 转换为 ab:当连续相同字母超过两个时,第三个出现的字母按第一次出现算. 要求实现函数: void convert(char *input,char* output) [输入]  char *input , 输入的字符串 [输出]  char *output

华为机试—字符串去重排序

输入一个字符串,去掉重复出现的字符,并把剩余的字符串排序输出. #include<iostream> #include<string> using namespace std; int main(int argc, char *argv[]) { string s; while(cin>>s) { for(int i=0;i<s.size();++i) for(int j=i+1;j<s.size();++j) { if(s[i]>s[j]) { ch

华为机试—字符串过滤

题目:字符串过滤 通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉. 比如字符串"abacacde"过滤结果为"abcde". 要求实现函数: void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr); [输入] pInputStr:  输入字符串 lInputLen:  输入字符串长度 [输出]

华为机试—字符串中找出单词排序

题目: 在给定字符串中找出单词( "单词"由大写字母和小写字母字符构成,其他非字母字符视为单词的间隔,如空格.问号.数字等等:另外单个字母不算单词):找到单词后,按照长度进行降序排序,(排序时如果长度相同,则按出现的顺序进行排列),然后输出到一个新的字符串中:如果某个单词重复出现多次,则只输出一次:如果整个输入的字符串中没有找到单词,请输出空串.输出的单词之间使用一个"空格"隔开,最后一个单词后不加空格. 要求实现函数: void my_word(charinput

(华为机试)双向链表实现字符串条件表达式的求值

描述: 给定一个以字符串形式表示的算术表达式,计算该表达式的值. 表达式支持如下运算:"+.-.*./",其中"*"和"/"的优先级要高于"+"和"-": 不需要考虑括号,且表达式之间没有空格: 例如:对于表达式"3-2+15*2",该表达式值为31. 运行时间限制: 60 Sec 内存限制: 256 MByte 输入: 加减乘除四则运算表达式,长度不超过1024字节,运算式中不含有括号

[华为机试]输入数字的汉语拼音,每个拼音的首字母大写。输出该数字的阿拉伯数字。

//输入数字的汉语拼音,每个拼音的首字母大写.输出该数字的阿拉伯数字. //JiuBaiJiuShiJiu -> 999 #include<stdio.h> #include<string.h> int result = 0; void add(int n,char wei[]) { if(strcmp(wei,"Wan") == 0) result = result + n * 10000; else if(strcmp(wei,"Qian&q