前一段時間看到微軟亞洲工程院中國創新組招收軟體開發實習生的題目:
編寫一段c程式,c函式原型如下所示:
double stol(const char * str);
該函式接收乙個c風格字串,然後將其轉化為對應的double數值。
為了簡便,這裡假設str總是乙個合法的數值字串,而且不需要考慮1.03e+24這種科學表示法的數值字串。
在網上查了一下,把字串轉換為整形的c語言程式倒是有好多,而似乎把字串轉換為否點數的程式基本上沒有。下面貼出我寫的程式,望大家指正。
#include#includetypedefint bool;
#define true1
#define false0
#define maximum1.7e+308
//#define minimum1.7e-308
double stol(constchar *str)
int i=0;
for(;str[i]!='\0';i++)
else
}else
}else}}
}//最終返回值為小數點前面的值加上小數點後面的值
valuebeforepoint=valuebeforepoint+valueafterpoint/pow(10,decount);
return sign?(-1*valuebeforepoint):valuebeforepoint;
}int main()
; int i=0;
for(;i<7;i++)
return 0;
}
面試題 字串翻轉
使用 c c 編寫函式,實現字串反轉,要求不使用任何系統函式,且時間複雜度最小,函式原型 char reverse str char str 使用c c 編寫函式,實現字串反轉,要求不使用任何系統函式,且時間複雜度最小,函式原型 char reverse str char str include i...
字串面試題 字串逆序
字串逆序可以說是最經常考的題目。這是一道入門級的題目。給定乙個字串s,將s中的字元順序顛倒過來,比如s abcd 逆序後變成s dcba 基本上沒有這麼考的,放在這裡主要是為了和後面的原地逆序做個對比。很簡單,直接分配乙個與原字串等長的字元陣列,然後反向拷貝一下即可。char reverse cha...
劍指 面試題67 把字串轉換成整數
題目寫乙個函式 strtoint,實現把字串轉換成整數這個功能。不能使用 atoi 或者其他類似的庫函式。首先,該函式會根據需要丟棄無用的開頭空格字元,直到尋找到第乙個非空格的字元為止。當我們尋找到的第乙個非空字元為正或者負號時,則將該符號與之後面盡可能多的連續數字組合起來,作為該整數的正負號 假如...