赞
踩
#include
#include
#include
#include
#include
#include
//#include
//执行指令sudo(10,20,"ABECFDABE")得到20
int sudo(int m1,int m2,char* cmd)
{
int r1=0,r2=0,r3=0;
for(int i=0;i
{
char cmd_str=cmd[i];
switch(cmd_str)
{
case 'A':
{
r1=m1;
}
break;
case 'B':
{
r2=m2;
}
break;
case 'C':
{
m1=r3;
}
break;
case 'D':
{
m2=r3;
}
break;
case 'E':
{
r3=r1+r2;
}
break;
case 'F':
{
r3=r1-r2;
}
break;
default:
break;
}
}
return r3;
}
//求次方。返回k,其中p的k次方等于n,否则返回0
float calc(float n,float p)
{
//求次方,10的2次方pow(10.0f,2)
//n=pow(p,k);
//求开方
//double k=sqrt(100.0f);
//double k=exp(100.0f);
/**求开n次方
double x=8.0f;
double m=1.0f/3;k=3 // 这个是求8的开3次方的 想要算哪个的开几次方 自己改
double k=pow(x,m);*/
float k=0;
for(float i=0;i
{
float ret=pow(p,i);
if(ret==n)
{
k=i;
break;
}
}
return k;
}
//c语言实现字符串替换函数
// 能替换所有的要替换的字符串,被替换的字符串和替换的字符串不一定一样长.
// pInput - 输入字符串.
// pOutput - 输出字符串, 要保证足够的空间可以存储替换后的字符串.
// pSrc - 要被替换的子字符串, 比如%user%
// pDst - 要替换成的字符串, 比如user1
// 注意:以上的字符串均要以'\0'结尾.
//
void Substitute(char *pInput, char *pOutput, char *pSrc, char *pDst)
{
char *pi, *po, *p;
int nSrcLen, nDstLen, nLen;
// 指向输入字符串的游动指针.
pi = pInput;
// 指向输出字符串的游动指针.
po = pOutput;
// 计算被替换串和替换串的长度.
nSrcLen = strlen(pSrc);
nDstLen = strlen(pDst);
// 查找pi指向字符串中第一次出现替换串的位置,并返回指针(找不到则返回null).
p = strstr(pi, pSrc);
if(p)
{// 找到.
while(p)
{
// 计算被替换串前边字符串的长度.
nLen = (int)(p - pi);
// 复制到输出字符串.
memcpy(po, pi, nLen);
memcpy(po + nLen, pDst, nDstLen);
// 跳过被替换串.
pi = p + nSrcLen;
// 调整指向输出串的指针位置.
po = po + nLen + nDstLen;
// 继续查找.
p = strstr(pi, pSrc);
}
// 复制剩余字符串.
strcpy(po, pi);
}
else
{
// 没有找到则原样复制.
strcpy(po, pi);
}
}
/**C++版 修改直接在源串上进行
bool Replace(string& src, // 源串
const string& dst, // 要被替换的目标串
const string& rpl // 替代串
)
{
int pos = src.find(dst);
if(pos == string::npos)
return false;
src.replace(pos, dst.size(), rpl);
return true;
}
*/
int main()
{
int ret=sudo(10,20,"ABECFDABE");
printf("%d\n",ret);
for(float i=0;i<16;i++)
{
float k=calc(16,i);
if(k!=0.0f)
{
printf("%d的%d次方等于16\n",i,(int)k);
}
}
char ret_str[1024]={0};
Substitute("ab1111cd1111ef1111",ret_str,"111","tttt");
printf("%s\n",ret_str);
getchar();
return 0;
}
c++ 类对象强制类型转换
#include
#include
using namespace std;
//c++ 类对象强制类型转换
class Conver
{
public:
int b;
operator int(){return b;} //注:这里是把函数的实现直接写出来
};
int main()
{
Conver c;
c.b=1002;
printf("%d\n",(int)c);
cout<
return 0;
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。