急求 c语言 编写一个程序,输入一个数字字符串,要求输出为整数

如题所述

#include "stdio.h"
#include "stdlib.h"

int main()
{
     char ch[10];
     int integer;
scanf("%s",ch);
     integer=atoi(ch);
printf("%d",integer);

}

 转一下格式就行了,不是要自己做功能吧?

自己做功能代码如下:

#include "stdio.h"
#include "ctype.h"

int main()
{
     char ch[10];
     int integer=0;
int i=0;

scanf("%s",ch);
     while(ch[i]!='\0' && isdigit(ch[i])!=0)
     {
     integer=integer*10+ch[i]-'0';
     i++;
    }
printf("%d",integer);

}

 用函数实现字符串转整数方法:

 #include "stdio.h" 
#include "ctype.h" 
int StringtoInteger(char ch[])
{
 int i=0; 
    int integer=0; 
 while(ch[i]!='\0' && isdigit(ch[i])!=0) 
    { 
       integer=integer*10+ch[i]-'0'; 
       i++; 
    } 
    return integer;

int main() 

     char ch[10]; 
  scanf("%s",ch); 
   printf("%d",StringtoInteger(ch)); 
}

 三种方法都不行,我就晕了,无语......

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-16
int getinteger(char *str)
{
int ivalue=0;
char *p=str;
while(*p)
{
if(*p>'9'||*p<'0')break;
ivalue*=10;
ivalue+=(int)(*p++-'0');
}
return ivalue;
}本回答被网友采纳
第2个回答  2013-10-15
数字字符串?直接定义为整形不可以么?追问

题目是这样的嘛

追答

发题目过来

追问

题目就是这个

追答

我也不知道行不行的

我下午回去看看行不

要不你看看我的代码

追问

输入a有输出a。。。。。。

追答

哦哦哦,输出b嗯,写错了

追问

肯定不对啊

相似回答