| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2269 人关注过本帖
标题:生成新数问题(只剩下奇数)
取消只看楼主 加入收藏
牧人马
Rank: 4
等 级:业余侠客
威 望:6
帖 子:49
专家分:229
注 册:2017-12-24
结帖率:33.33%
收藏
已结贴  问题点数:20 回复次数:3 
生成新数问题(只剩下奇数)
【题目描述】
编写函数Fun,其功能是:将整数n各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数。
【输入】
仅一行。一个整数n(0<n≤100000000)。
【输出】
仅一行。一个整数,表示组成的新数。

输入显示:
    27638496↵
输出显示:
    739↵

-------------------------------------------------------------------------------------------------------------------
以下是自己写的程序,
程序代码:
#include<stdio.h>
#include<math.h>
int num1(int a)
{
    int i,o;
    o=a;
    for(i=0; o>1; i++)
        o=o/10;
    printf("number=%2d\n",i);
    return i;
}

int Fun(int *pn)
{
    int a=*pn;
    int num=num1(a);
    int i,o,j=0,n=-1,m;
    for(i=0; i<num; i++)
    {
        o=a%10;
        a=a/10;
        if(o%2!=0)
        {
            n++;
            j=j+o*pow(10,n);
            printf("o=%d    j=%d\n",o,j);
        }
    }
    *pn=j;
}


int main()
{
    int n;
    scanf("%d", &n);
    Fun(&n);
    printf("%d\n", n);
    return 0;
}
图片附件: 游客没有浏览图片的权限,请 登录注册

不知道自己错在哪里了,所以添加了其他输出。刚刚练习指针,不知道在这程序中指针用的地方恰当不恰当。
望指点,谢谢
搜索更多相关主题的帖子: 生成 Fun 整数 输出 int 
2017-12-24 11:45
牧人马
Rank: 4
等 级:业余侠客
威 望:6
帖 子:49
专家分:229
注 册:2017-12-24
收藏
得分:0 
回复 2楼 吹水佬
刚刚C语言不久,看不懂 for(;n;n/=10)中循环控制条件的n,return k(这是返回到函数的k中了吗?) 和 if(j&1)中&的意思,可以解释一下吗?

[此贴子已经被作者于2017-12-24 12:40编辑过]

2017-12-24 12:38
牧人马
Rank: 4
等 级:业余侠客
威 望:6
帖 子:49
专家分:229
注 册:2017-12-24
收藏
得分:0 
回复 4楼 九转星河
谢谢
2017-12-24 13:16
牧人马
Rank: 4
等 级:业余侠客
威 望:6
帖 子:49
专家分:229
注 册:2017-12-24
收藏
得分:0 
回复 5楼 山东包子
嗯嗯,就是n=0是循环终止,n>0时循环吧,判断奇偶这个我以前都是用if(j%2==0)的,感觉用&更简单了,谢谢
2017-12-24 13:19
快速回复:生成新数问题(只剩下奇数)
数据加载中...
 
   



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

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