| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1197 人关注过本帖, 1 人收藏
标题:任意转进制的程序(现在没goto)评价评价
取消只看楼主 加入收藏
rexzheng
Rank: 2
等 级:论坛游民
帖 子:32
专家分:13
注 册:2009-10-26
结帖率:25%
收藏(1)
已结贴  问题点数:20 回复次数:3 
任意转进制的程序(现在没goto)评价评价
#include<stdio.h>
main()
{
    int a,b,x,c[50];
    char y;
   
    do{
        printf("要有几进制转换成几进制?用空格隔开,如10 2\n");
        scanf("%d\040%d%c",&a,&b,&y);
        do{
            printf("\n输入需要转换的整数");
             x=0;
             y=0;
            do{
                scanf("%c",&y);
                if(y>='0'&&y<='9') x=(y-'0')+x*a;
                else if(y>='A'&&y<='z') x=(y-'0'-7)+x*a;
            }while(y!=10);//转成10进制
            a=-1;
            do{
                c[++a]=x%b;
                x=x/b;
            }while(x!=0);
            for(;a>=0;a--)
            {
                printf("%c",c[a]<10?c[a]+'0':c[a]+'0'+7);
            }
      
            printf("\n输入新的数按y,重头开始按a,退出按任意键\n");
            y= getch();
        }while(y=='y');
        
    }while(y=='a');

}
现在没有用goto了。。。原来那个在https://bbs.bccn.net/viewthread.php?tid=291008&page=1#pid1696269
不用goto真的看上去结构很多。。
大家评价评价。。。
搜索更多相关主题的帖子: 评价 进制 goto 
2009-11-25 13:05
rexzheng
Rank: 2
等 级:论坛游民
帖 子:32
专家分:13
注 册:2009-10-26
收藏
得分:0 
这个可以输入 16 10(16进制转成10进制)
输入1ABC
然后程序输出"6844"
2009-11-25 13:15
rexzheng
Rank: 2
等 级:论坛游民
帖 子:32
专家分:13
注 册:2009-10-26
收藏
得分:0 
回复 5楼 lijm1989
关于第一个问题,其实很复杂,不能以为将负数的符号加在数字钱就可以了,其实是不对的,
例如:10进制的-1,转成8进制不是-1,而是1777777777777777777777;(用计算器算的)
关于第二个问题:其实这个想到了,但是我只想到用goto来解决,没有想到别的语句来解决,尝试用过break,但是导致程序混乱了;如果您有什么好的解决方法指导一下

[ 本帖最后由 rexzheng 于 2009-11-25 16:37 编辑 ]
2009-11-25 16:02
rexzheng
Rank: 2
等 级:论坛游民
帖 子:32
专家分:13
注 册:2009-10-26
收藏
得分:0 
回复 5楼 lijm1989
关于第3个问题  的确是我错了。。我居然用a来当循环变量。。。当时肯定是晕了。。哈哈 谢谢指导。。。我刚学C没多久。。一共加起来就十几个小时吧。。。

[ 本帖最后由 rexzheng 于 2009-11-25 16:37 编辑 ]
2009-11-25 16:09
快速回复:任意转进制的程序(现在没goto)评价评价
数据加载中...
 
   



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

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