zoukankan      html  css  js  c++  java
  • 题目1026:又一版 A+B-----------------------进制转换一定要用 do-while来进行辗转相除

    #include<iostream>
     using namespace std;
    
    int main()
    {
        long long a,b;
        int m;     
        while(cin>>m)
        {
            if (m==0) return 0;
            
            int s[50],i=0;
            cin>>a>>b;
            a=a+b;
            
            do{           // 用while进行循环能出正确的结果,但是不能AC;  
                s[i++]= a%m;
                a=a/m;
            }while(a!=0);    
            for (int j=i-1;j>=0;j--)
             cout<<s[j];
            cout<<endl;
        }
        return 0;
    }

    WHILE 和DO-WHILE的不同

    一、while语句的一般形式为:
    while(表达式)语句
    其中表达式是循环条件,语句为循环体。
    while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。

    二、do-while语句的一般形式为:
    do
    语句
    while(表达式);
    这个循环与while循环的不同在于:它先执行循环中的语句,然后再判断表达式是否为真, 如果为真则继续循环;如果为假, 则终止循环。因此, do-while循环至少要执行一次循环语句
    使用while语句应注意以下几点:
    1、while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
    2、循环体如包括有一个以上的语句,则必须用{}括起来,组成复合语句。
  • 相关阅读:
    147-21. 合并两个有序链表
    146-14. 最长公共前缀
    145-如何查看python帮助文档
    144-38. 外观数列
    143-121. 买卖股票的最佳时机
    142-206. 反转链表
    141-98. 验证二叉搜索树
    Nginx中文域名配置
    Keepalived+Nginx架构整理版
    Tomcat启动脚本
  • 原文地址:https://www.cnblogs.com/jianrenguo/p/6538066.html
Copyright © 2011-2022 走看看