<pre name="code" class="cpp">// cut.cpp : 定义控制台应用程序的入口点。
//
/*
按要求分解字符串,输入两个数M,N;M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0。
例如:输入2,8, “abc” ,“123456789”,则输出为“abc00000”,“12345678“,”90000000”
(两个字符串是不是一起输入一个又接着输另外一个,这个地方有点小困惑?)
*/
#include "stdafx.h"
#include "stdio.h"
#include <string.h>
/*
void cut(const char *input, int n);
*/
/*
* Function: cut
* Usage: cut(pInputStr, n)
* -----------------------------------------------------
*/
void cut(const char *input,int n)
{
if (n<=0)
{
return;
}
int len = strlen(input);
char str[2555];
int i=0;
while (len>0)
{
if (len>=n)
{
for (i=0;i<n;i++)
{
str[i] = *input;
input ++;
}
str[i] = '\0';//添加结束标识符
}
else
{
for (i=0;i<len;i++)
{
str[i] = *input;
input ++;
}
for (i=len;i<n;i++)
{
str[i] = '0';
}
str[i] = '\0';//添加结束标识符
}
printf("%s\n",str);
len = len -n;
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int m,n;
char str[255];
scanf("%d %d",&m,&n);
int i;
for (i=0;i<m;i++)
{
gets(str);
cut(str,n);
}
return 0;
}
OJ 系列之分解字符串
最新推荐文章于 2023-12-11 19:07:53 发布