作业帮 > 综合 > 作业

用C语言编输入一个整数输出其位数

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/28 16:01:52
用C语言编输入一个整数输出其位数
int 类型所能容纳的数字位数不能超过 10.我写的这个程序稍微长了点,
但不受 int 类型容量的限制,能够处理很长的整数输入(由 buffer 数组的大小决定).
这程序只处理纯整数输入.有疑问尽管问.
 
 
#include
#include
void main( ) {
    int  count = 0;
    char buffer[ 1001 ],
         *p = buffer,
         c;
    puts( "Enter an integer:" );
    gets( buffer );
    // Skip leading space.
    while( isspace( *p ) )
        p++;
    while( isdigit( c = *(p + count) ) )
        count++;
    // Ignore number with trailing non-space character.
    if( c != '\0' && !isspace( c ) )
        count = 0;
    if( count > 0 )
        printf( "The number of digit(s) in your integer is %d.\n",count );
    else
        puts( "You didn't provide a valid integer.\n" );
}