C++如何实现递增字符串。就是输入一个字符(整行)然后以01 02

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++如何实现递增字符串。就是输入一个字符(整行)然后以01 02相关的知识,希望对你有一定的参考价值。

C C++如何实现递增字符串。就是输入一个字符(整行)然后以01 02 03 加序列

比如我要输入:林家 先生。 这4个字
注意,之间有空格

后面加如 000 00 这样的数字位数。

林家 先生 000
林家 先生 001
林家 先生 002
林家 先生 003
.....

我本来是想实现集体图片名字取名的,但是就在000这样的位数上卡住了
用x++这样的话,只能从一位算起。这样就起不了名了,一定要001 002 003这样
不能1 2 3这样。

最终名字效果是:

林间 学校 007.jpg
林间 学校 008.jpg
林间 学校 009.jpg

我只需要输入 前面的文字和最后的个数就可以了
最好能够控制0的个数,000 0000 00000 0000000这样

帮你写了个程序,请参考:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main(int argc, const char * argv[])

int i;
int num;
char nameStr[256] = 0;
char suffixStr[256] = 0;
char countStr[256] = 0;
int count;
char numOfZeroStr[256] = 0;
int numOfZero;
char format[512] = 0;
char nameList[256][256] = 0;

do
printf("请输入图片名字:");
gets(nameStr);
num=strlen(nameStr);
while(num==0);

do
printf("请输入图片后缀:");
gets(suffixStr);
num=strlen(suffixStr);
while(num==0);

do
printf("请输入图片个数:");
gets(countStr);
num=strlen(countStr);
while(num==0);

count = atoi(countStr);

do
printf("请输入数字位数:");
gets(numOfZeroStr);
num=strlen(numOfZeroStr);
while(num==0);

numOfZero = atoi(numOfZeroStr);

/* 生成格式化字符串 */
sprintf(format, "%s %%%d%dd.%s", nameStr, 0, numOfZero, suffixStr);

for(i=0; i<count; ++i)

/* 逐个生成文件名 */
sprintf(nameList[i], format, i);


/* nameList就是你要的名字数组 */
for(i=0; i<count; ++i)

printf("%s\n", nameList[i]);


return 0;


运行结果:
请输入图片名字:林家 先生
请输入图片后缀:jpg
请输入图片个数:5
请输入数字位数:3
林家 先生 000.jpg
林家 先生 001.jpg
林家 先生 002.jpg
林家 先生 003.jpg
林家 先生 004.jpg
参考技术A 用格式化输出就好了
int i=1;
char buf[20];
sprintf(buf,"林间 学校 %03d",i);

运行结果 buf=林间 学校 001
参考技术B 直接用字符串输出

2022华为机试真题 C++ 实现非严格递增连续数字序列

目录

题目

思路

考点

Code


题目

题目描述:
输入一个字符串仅包含大小写字母和数字,求字符串中包含的最长的非严格递增连续数字序列的长度(比如12234属于非严格递增连续数字序列)。

输入描述:
输入一个字符串仅包含大小写字母和数字,输入的字符串最大不超过255个字符。

输出描述:
最长的非严格递增连续数字序列的长度

示例 1:

输入
abc2234019A334bc
输出
4


说明:
2234为最长的非严格递增连续数字序列,所以长度为4

测试用例:
aaaaaa44ko543j123j7345677781    

-->  34567778
aaaaa34567778a44ko543j123j71    

-

以上是关于C++如何实现递增字符串。就是输入一个字符(整行)然后以01 02的主要内容,如果未能解决你的问题,请参考以下文章

华为OD机试真题 C++ 实现递增字符串2023 Q1 | 100分

华为OD机试真题 C++ 实现递增字符串2023 Q1 | 100分

如何输入带空格的字符串

用c语言写一个函数,从键盘得到整行的输入.

vi里面自动递增

vi里面自动递增