上机内容:C++程序的编写和运行
上机目的:掌握简单C++程序的编辑、编译、连接和运行的一般过程
我的程序:
运行结果:
心得体会:递归也有常规步骤?一开始没有if(num==0),结果程序一片混乱。两个式子的调换也得出了不一样的结果,好神奇的说
知识点总结:递归调用,if(n==0)不能丢,两步式子不能随意调换
上机目的:掌握简单C++程序的编辑、编译、连接和运行的一般过程
我的程序:
/*
Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 作 者:赵玲玲
* 完成日期:2013 年 11 月 22 日
* 版 本 号:v1.0
* 输入描述: 38
* 问题描述: 递归调用来求得整数的二进制
* 程序输出: 100110
* 问题分析:鉴于1234的倒叙输出写出二进制的求得
* 算法设计:略
*/
#include <iostream>
using namespace std;
void dec2bin(int n); //声明空类型函数
int main()
{
int n;
cout<<"请输入一个整数:";
cin>>n;
cout<<n<<"对应的二进制形式是:";
dec2bin(n);
cout<<endl;
return 0;
}
void dec2bin(int num)
{
if(num==0) //不了解,怀疑是递归的常规用法
{ //但是有了它程序才得以正常运行
return;
}
else //重要的一步,对2求余并倒叙输出
{
dec2bin(num/2);
cout<<num%2;
return;
}
}
运行结果:
心得体会:递归也有常规步骤?一开始没有if(num==0),结果程序一片混乱。两个式子的调换也得出了不一样的结果,好神奇的说
知识点总结:递归调用,if(n==0)不能丢,两步式子不能随意调换