设计函数 int atoi(char s)

来源:百度知道 编辑:UC知道 时间:2024/05/21 14:18:28
着急用。最好在今天晚上12点前就有答案。
谢谢。

int pd(char s)
{
if(s=='1')return 1;
}

int atoi (char s[])
{
int i,j;
double k;
for (i=0;i<100;i++)
{
if (s[i]=='.')j=i;
}
k=1.0;
for (i=0;i<j;i++)k=k*10.0;
pd(s[0])
s[0]

}

#include <iostream>
using namespace std ;

int main()
{
char a[] = "123123123" ;
cout << atoi ( a ) ;
}

貌似是面试经典题。

 
 
 
参数的类型应该是 char *,不是 char。

可以这样写(main( ) 里以有前导空白的负数测试):

#include <stdio.h>
#include <ctype.h>

int atoi( char *s ) {
    int sign = 1,
        mag = 0;

    while ( isspace( *s ) )  /* 忽略前导空白 */
        ++s;
    
    if ( *s