当前位置:首页 » 编程语言 » c语言字符串前补字符
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言字符串前补字符

发布时间: 2022-09-05 23:44:27

1. c语言怎样快速在字符串的指定位置插入字符

用串S拷贝出另一个串T,对串T从头至尾扫描,对非数字字符原样写入串S,对于数字字符先写一个$符号再写该数字字符,最后,在S串尾加结束标志。使用此方法是牺牲空间,赢得时间。

#include<stdio.h>
intfun(char*s)
{
chart[80];
inti,j;
for(i=0;s[i];i++)/*将串s拷贝至串t*/
t[i]=s[i];
t[i]='';
for(i=0,j=0;t[i];i++)
/*对于数字字符先写一个$符号,再写该数字字符*/
if(t[i]>='0'&&t[i]<='9')
{
s[j++]='$';
s[j++]=t[i];
}
/*对于非数字字符原样写入串s*/
else
s[j++]=t[i];
s[j]='';/*在串s结尾加结束标志*/
return0;
}
intmain()
{
chars[80];
printf("Enterastring:");
scanf("%s",s);/*输入字符串*/
fun(s);
printf("Theresult:%s ",s);/*输出结果*/
return0;
}

2. C语言 请编写程序实现以下功能:在字符串中所有数字字符前加一个$字符。例如, 输入:A1B23C

#include <stdio.h>

int fun(char *s)

{

char t[80];

int i, j;

for(i=0; s[i]; i++) /*将串s拷贝至串t*/

t[i]=s[i];

t[i]='';

for(i=0,j=0; t[i]; i++)

/*对于数字字符先写一个$符号,再写该数字字符*/

if(t[i]>='0' && t[i]<='9')

{

s[j++]='$';

s[j++]=t[i];

}

/*对于非数字字符原样写入串s*/

else

s[j++]=t[i];

s[j]=''; /*在串s结尾加结束标志*/

return 0;

}

int main()

{

char s[80];

printf ( "Enter a string:" );

scanf ("%s", s); /*输入字符串*/

fun(s);

printf ("The result: %s ", s); /*输出结果*/

return 0;

}

(2)c语言字符串前补字符扩展阅读:

printf()函数的调用格式为: printf("<格式化字符串>", <参量表>)。

其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出; 另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。

参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应,否则将会出现意想不到的错误。

比如:

inta=1234;

printf("a=%d ",a);

输出结果为a=1234。

3. 用C语言编写一个在字符串中插入一个字符的程序

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

#defineN100

voidInsert(char*s);

intmain()

{

charstr[N];

printf("Inputastring:");

gets(str);

Insert(str);

printf("Insertresults:%s ",str);

return0;

}

voidInsert(char*s)

{

charstr[N];

char*t=str;

strcpy(t,s);

for(;*t!='';s++,t++)

{

*s=*t;

s++;

*s='';

}

*s='';/*在字符串s的末尾添加字符串结束标志*/

}

(3)c语言字符串前补字符扩展阅读

C语言通过定义一个char类型的二维数组实现,通过二维数组的行索引可得到数组中的每个字符串,列的大小限定了每个字符串所能包含的最大字符个数,所以采用这种定义方式时,列的大小必须不能小于数组所有字符串的最大长度。

C语言编程定义一个字符串的数组:

str={

“IloveC.”,

“IloveC++.”,

“IloveJAVA.”,

“IlovePython.”,

“IloveLabVIEW.”

}

4. 用c语言如何在数字前自动补0

#include<iostream>

usingnamespacestd;

voidmain()

{

inthour=9;

characHour[8]={0};

sprintf(acHour,"%02d",hour);

cout<<acHour;

}

(4)c语言字符串前补字符扩展阅读

C语言基本语法

在C程序中,分号是语句终止符,也就是说,每个单独的语句必须以分号结束。它表示一个逻辑实体的结束。以下是两个不同的陈述printf("Hello,World! ");return0;

注释就像帮助C程序中的文本一样,编译器会忽略它们。它们以/*开头并以字符*/结尾,如下所示/*myfirstprograminC*/,不能在注释中添加注释,也不会在字符串或字符文字中出现。

5. C语言 如何在字符串前 加上\\

你的代码有几个问题:
1,strcat是加到后面的,不能满足你的需要。
2,strcat的第一个参数需要能容纳追加之后的新字符串的长度,你第一个参数是个字符串常量,大小是固定的,编译肯定报错。
3,加两个\\需要写\\\\

可以通过下面的方法添加:
char *pOldStr = "abcd";
char cNewStr[20] = {0};//要足够长来存放新的字符串
strcat(cNewStr, "\\\\");
strcat(cNewStr, pOldStr);
这时候,cNewStr就是你要的新字符串了,如果你还是想用pOldStr ,并且pOlStr本身就是一个数组,也可以重新把cNewStr拷贝到pOldStr覆盖即可。
还可以通过函数把字符串在数组中往后面移,然后给开头两个元素赋值为\\

另外,四楼使用strrev函数的方法不错,呵呵

6. C语言,如何把一个字符放到指定字符串之前

1.
把要插入的字符串从尾到头依次向后移动一位,然后把你需要插入的字符放在空出的第一位上。
2.
重新建一个字符串,先放入你要插的字符,然后把原来的字符串中字符依次放入这个新的字符串中。
3.
新建一个字符串把要插入的字符放进去,然后用strcat函数连接。
上边是3种比较简单的方法。

7. c语言输入一个字符串,如何在指定位置插入一个字符

也许用链表比较好实现,下面是用数组实现的程序:


#include<stdio.h>


#include<string.h>


main()


{ int i,j,k,m,n;


char a[100],b[100],c;


gets(a);


gets(b);


c=getchar();


m=strlen(a);


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


{if(a[i]==c)<br/> break;<br/> }


if(i>=m)


{printf("出错! ");<br/> return;<br/> }


n=strlen(b);


k=m;


for(j=m+n;j>i;j--,k--)


a[j]=a[k];


for(j=i,k=0;j<n+i;j++,k++)


a[j]=b[k];


printf("%s ",a);


}

8. 利用C语言:在字符串的第几个字符前插入一个字符。(要求类似于排队向后窜一位,插入一个人)

字符长度+1然后在插入点,假设为n吧!将array[n] = 要插入的符号array[n]以后的字符向后移一位就OK。

9. C语言中怎样用给定字符补空

#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
int main()
{
string A;
cout<<"请输入数字";
cin>>A;

cout<<setfill('0')<<setw(6)<<A<<endl;
return 0;
}

其中setfill用来填充字符,setw用来设置宽度,即为不足6为则用字符填充