| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1231 人关注过本帖
标题:求位数的问题
只看楼主 加入收藏
xp0213
Rank: 7Rank: 7Rank: 7
来 自:湖北武汉
等 级:黑侠
威 望:1
帖 子:210
专家分:522
注 册:2011-10-26
结帖率:86.67%
收藏
已结贴  问题点数:20 回复次数:7 
求位数的问题
#include<stdio.h>

int fun(int n,int i)
{
    int s=0;
    if(i==1)
        s=n%10;
    else
        s=fun(n/10,i-1);
    return s;
}

main()
{
    long m,n;
    int i,k=0,l;
    printf("请输入一个数:");
    scanf("%ld",&m);
    n=m;
    printf("请输入要取得的数的位数:");
    scanf("%d",&i);
    /*while(m!=0)
    { m=m/10;
    k++;
    }
   


    if(k>i)
        printf("您输入的要取的的书的位数不正确\n");
    else */

    printf("%d\n",fun(n,i));
}
例如要输入一个数 7893,输入要取得的位数,如 3,则输出 8,这是我写的程序,有些问题,哪位高手帮我改下。
程序中/*       */  为问题的所在。
图片附件: 游客没有浏览图片的权限,请 登录注册

搜索更多相关主题的帖子: return include 
2011-11-11 23:08
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:3 
if(k>i)
改为 k<i;

2011-11-12 11:12
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:3 
先把数组转化为字符串sprintf  然后再输出你的位数

                                         
===========深入<----------------->浅出============
2011-11-12 11:14
kd83kdi93
Rank: 2
等 级:论坛游民
帖 子:65
专家分:52
注 册:2011-9-18
收藏
得分:3 
#include <stdio.h>

int fun(int ,int);



int main()
{
   int a,c;
   printf("输入数:");
   scanf("%d",&a);
   printf("输入位数:");
   scanf("%d",&c);
   printf("该位数数字:%d\n",fun(a,c));
   return 0;
}

int fun(int a,int c)
{
    int b;
    for(b=1;b<c;b++)
    {
        a=a/10;
    }
    return a%10;
}
2011-11-13 17:15
恶人打劫
Rank: 2
等 级:论坛游民
帖 子:14
专家分:39
注 册:2011-5-17
收藏
得分:3 
#include <stdio.h>
#include <math.h>


int fun(int ,int);



int main()
{
   int a,c;
   printf("输入数:");
   scanf("%d",&a);
   printf("输入位数:");
   scanf("%d",&c);
   printf("该位数数字:%d\n",fun(a,c));
   return 0;
}

int fun(int a,int c)
{
    int b,t;
    b=a%((int)pow(10,c));
    t=b/((int)pow(10,c-1));
    return t;
}
2011-11-13 21:27
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:3 
我敲了4楼给的程序
如下
#include  <stdio.h>
int  fun(int , int);

int main()
{
   int a,c;
   printf("请输入数:");
   scanf("%d",&a);
   print("请输入要求的位:\n");
   scanf("%d",&c);
   printf("位数是%d.\n",fun(a,c));
   return 0 ;
}
int  fun(int a, int c )
{
    int  b;
    for (b=1;b<c;b++)
    {
        a=a/10;
    }
    return     a%10;
}
结果编译没问题 运行有错误提示:
位数0000.obj : error LNK2001: unresolved external symbol _print
Debug/位数0000.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.

位数0000.exe - 1 error(s), 0 warning(s)
这是为什么?谁能解释下。

梅尚程荀
马谭杨奚







                                                       
2011-11-14 10:19
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 6楼 有容就大
哦 发现了是printf少了个f!!那为什么编译发现不了呢?

梅尚程荀
马谭杨奚







                                                       
2011-11-14 10:22
gxu888
Rank: 2
等 级:论坛游民
帖 子:19
专家分:33
注 册:2011-11-10
收藏
得分:3 
回复 楼主 xp0213
你好!能否给我发一个C软件?我找了好久 都没找到。谢谢!祝好!QQ576027318 邮箱:zhaorui0612@
2011-11-14 10:42
快速回复:求位数的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014819 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved