C语言字符串运算!

C语言字符串运算!,第1张

#include <iostream>

#include <string>

#include <algorithm>

using namespace std

void k_add(string a, string b, int k)

{

//将长的字符串放在前面

if (a.size() <b.size())

{

string temp = a

a = b

b = temp

}

//对源字符串进行翻转

reverse(a.begin(), a.end())

reverse(b.begin(), b.end())

bool carry = false//进位

//字符串相加

size_t i = 0

for (i <b.size()i++)

{

if (i <b.size())

{

a[i] += b[i] - '0'

if (carry) a[i] += 1

carry = false

if (a[i] >= k + '0')

{

a[i] -= k

carry = true

}

}

}

for (i <a.size()i++)

{

if (carry) a[i] += 1

carry = false

if (a[i] >= k + '0')

{

a[i] -= k

carry = true

}

}

if (carry)

{

a.push_back('1')

}

//输出

bool begin = false

for (int j = a.size() - 1j >= 0 j--)

{

if (a[j] >'0')

{

begin = true

}

if (begin)

{

cout <<a[j]

}

}

cout <<endl

}

简单模拟即可

3进制测试

10进制测试

#include<stdio.h>

#include<stdlib.h>

int main()

{

int i,len,ok

char str[1024]={'\0'}

do

{

ok=1

printf("请输入一个字符串:\n")

gets(str)

i=0

while('\0'!=str[i])

{

if(!isalpha(str[i]))

{

ok=0

break

}

i++

}

}while(!ok)

len=strlen(str)

printf("字符串\"%s\"的长度是%d。\n",str,len)

//printf("字符串\"%s\"包含了以下元音字母:\n",str)

printf("字符串未进行元音字母循环加密(加密规则a->e->i->o->u->a)前是:\n%s。\n",str)

i=0

while('\0'!=str[i])

{

if('a'==str[i])

{

str[i]='e'

}

else if('e'==str[i])

{

str[i]='i'

}

else if('i'==str[i])

{

str[i]='o'

}

else if('o'==str[i])

{

str[i]='u'

}

else if('u'==str[i])

{

str[i]='a'

}

i++

}

printf("字符串进行元音字母循环加密(加密规则a->e->i->o->u->a)后是:\n%s。\n",str)

system("PAUSE")

return EXIT_SUCCESS

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11397624.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存