字符串分割
2015-06-24 11:10
190 查看
连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组; 长度不是8整数倍的字符串请在后面补数字0,空字符串不处理. 输入:连续输入字符串(输入两次,每个字符串长度小于100) 输出:输出到长度为8的新的字符串数组。 e.g. input: abc 123456789 output:abc00000 12345678 90000000 #include<iostream> #include<cstring> using namespace std; void Devision(char** s_input,char** s_output,int row); int main() { int row=2; char **s_input=new char*[row]; char **s_output=new char*[10]; for(int i=0;i<10;i++) s_output[i]=new char[8]; for(int i=0;i<row;i++) { s_input[i]=new char[100]; cin>>s_input[i]; } Devision(s_input,s_output,row); return 0; } void Devision(char** s_input,char** s_output,int row) { int i,j,k=0; int row_input=0,row_output=0; int len[row]; for(i=0;i<row;i++) { len[row_input++]=strlen(s_input[i]);//计算二维数组每行的元素个数 cout<<strlen(s_input[i])<<endl; } len[row_input]='\0'; for(i=0;i<row;i++) { if(len[i]<=8) { k=0; for(j=0;j<len[i];j++) s_output[row_output][k++]=s_input[i][j]; if(k!=8) { for(int tmp=k;tmp<8;tmp++) s_output[row_output][tmp]='0'; } cout<<s_output[row_output]<<endl; row_output++; cout<<"row_output="<<row_output<<endl; } else { int num=len[i]/8-1; char x; if(len[i]%8) num++; j=0; while(num!=0) { for(k=0;k<8;k++) { if(s_input[i][j]) s_output[row_output][k]=s_input[i][j++]; else s_output[row_output][k]='0'; x=s_output[row_output][k]; } cout<<s_output[row_output]<<endl; row_output++; cout<<"row_output="<<row_output<<endl; cout<<"j="<<j<<endl; cout<<"x="<<x<<endl; if(x!='0') { for(int tmp=0;tmp<8;tmp++) { if(s_input[i][j]) s_output[row_output][tmp]=s_input[i][j++]; else s_output[row_output][tmp]='0'; } cout<<s_output[row_output]<<endl; row_output++; cout<<"row_output="<<row_output<<endl; cout<<"j="<<j<<endl; } num--; cout<<"num="<<num<<endl; } } } for(int m=0;m<row_output;m++) { for(int n=0;n<8;n++) cout<<s_output[m] <<"\t"; cout<<endl; } }写的程序有点麻烦,大家有简单的算法欢迎共享啊。。
相关文章推荐
- Android 4.4 keyguard类图
- 《重构--改善既有代码的设计》--构筑测试体系(4)
- 鼠标划过和点击产生不同的效果
- 图表
- Struts2非常简单实用的身份验证功能
- #leetcode#Course Schedule II
- Nginx+PHP-FPM优化技巧总结
- Linux下串口编程入门
- Go图片上传
- 什么是I帧,P帧,B帧
- showDialog()、onPrepareDialog()和onCreateDialog()的关系 .
- Struts中ModelDriven的使用
- LeetCode_45---Jump Game II
- Oracle DISPLAY COLOR终极解决方案
- Linux_4.8_共享内存通信
- Activiti部署流程报错
- Maximum Depth of Binary Tree-求二叉树高度
- 推荐 15 个 Angular.js 应用扩展指令(参考应用)
- spring读取资源文件
- CSS让div层悬浮在最上方