① 一道c語言面試題,請幫忙思考一下,給出對應的演算法,謝謝
{
struct {
char key[12];
char value[32];
}list1[7]={{"",""畢含鉛磨},{},};
string str="您好,你的卡號末四位[var1]在[var2]日[var3]時[var4]分[var5]消費了手激笑[var6]元,本次你消費了[var6]元將獲取相應積分。[var7]";
string temp=str;
string::size_type t;
for(int i=0;i<6;++i){
t=temp.find_first_of(list1[i].key);
temp=str.substr(0,t);
temp+=list1[i].value;
temp+=str.substr(t+strlen(list1[i].key),str.size());
str=temp;
}
}
這是C++思路 C就把string的相關操作自己寫下
② 經典C語言面試演算法題
經典C語言面試演算法題
1.寫一個函數,它的原形是int continumax(char *outputstr,char *intputstr)
功能:
在字元串中找出連續最長的數字串,並把這個串的長度返回,並把這個最長數字串付給其中一個函數參數outputstr所指內存。例如:"abcd12345ed125ss123456789"的首地址傳給intputstr後,函數將返回
9,outputstr所指的值為123456789。
#include
#include
#include
int FindMax_NumStr(char *outputstr,char *inputstr)
{
char *in = inputstr,*out = outputstr,*temp;
char *final;
int count = 0;
int maxlen = 0;
int i;
while(*in!='