上一次的学习博客写的和流水账差不多,有点生硬的和背目录一样,所以既然学习的目的是程序,那么这个月的学习博客就用程序来说点东西吧。这个月看了一些C和JAVA的视频,开始看别人写的程序,能看的懂但是自己去写的话前后逻辑还有方法类的使用不是很清楚。好吧,先去膜拜大神,一步一步来吧。

先来说一个C的程序。这个程序是把一个十进制的数字转成二进制的编码,十进制当中是逢十进一,二进制逢二进一,无论是什么样的语言写的任何程序,在计算机里面的记录方法均为二进制。

#include<iostream>
using namespace std;
int main()
{int T;cin >> T;while(T--){unsigned int n;char bas[30];cin >> n;unsigned int k = 0;if(n == 0)cout<<0;else{while(n){if(n & 1)bas[k++] = '1';elsebas[k++] = '0';n >>= 1;}}for(int i=k-1;i >= 0;i--){cout << bas[i];}cout << endl;}
}

 #include<iostream>
这个是C的标准I/O头文件,标准库定义了 4 个 IO 对象。处理输入时使用命名为 cin(读作 see-in)的 istream 类型对象。这个对象也称为标准输入。处理输出时使用命名为 cout(读作 see-out)的 ostream 类型对象,这个对象也称为标准输出。

程序里面有输入输出的内容所以这个是必不可少的                                                                                     using namespace std;

namespace是指标识符的各种可见范围。命名空间用关键字namespace 来定义。命名空间是C++的一种机制,用来把单个标识符下的大量有逻辑联系的程序实体组合到一起。此标识符作为此组群的名字。

即让std内定义的所有标示符都是有效,相当于一个全局变量。

int char

这些标示符是用来声明变量的类型,int整数,char符号。在这个程序当中声明了T为int类型,把bas为char字符变量。

if else

标准的if语句,即如果,不然。用来建立条件入口。

while

循环语句,计算机的一种基本循环模式。当满足条件时进入循环,不满足跳出。这里的程序要求用户输入一个变量的T,入口条件当T--   unsigned int  在函数体内用到了unsigned int, 是使用无符号的整数类型。
char bas[30];
建立一个数组长度为30的char 数组。
for(int i=k-1;i >= 0;i--)
for循环条件入口,当整数i等于k-1,且i>=0,就i--,若第一个条件为假,后面的算式就不执行了。
看明白这个程序还有一个很重要的东西就是明白十进制转化为二进制的原理,基本的算法是这样的。
用x表示十进制的x,假定x变成2进制后的数为三位abc,其中a为最高位,b为次高位,c为最低位。

则有 x = a*2^2 + b*2^1 + c*2^0= 4a+2b+c所以    x%2 = c,    x/2 = a*2 + b令x=x/2,则x=a*2+b  x%2 = b,  x/2 = a令x=x/2,则x=a  x%2 = a  x/2 = 0故每一步的余数为:  c, b, a把它们颠倒,就得到a,b,c

原理只有一条,可以证明/看出每次除以2的余数正好是2进制的每一个数。(……看了好半天……)

这个是一个非常短的程序,一个很实用的小工具,它可以作为一个方法放到一个class当中,也可以把这个当做父类做继承。

 

 

现在来说一个JAVA程序。

import javax.swing.JOptionPane; // program uses JOptionPanepublic class Converter {public static void main(String args[]) {String firstNumber;double number1 = 0;double number2 = 0;boolean loop = true;while (loop) {firstNumber = JOptionPane.showInputDialog("请输入华氏温度");try {number1 = Double.parseDouble(firstNumber);loop = false;} catch (NumberFormatException e) {// (2)当用户输入错误数据时候,提示用户输入错误,并要求用户重新输入内容。JOptionPane.showMessageDialog(null, "输入错误,请重新输入华氏温度.", "输入",JOptionPane.PLAIN_MESSAGE);}}// 摄氏度=(5/9)*(华氏度-32) , 即 摄氏度=(华氏度-32)÷1.8// secondNumber = JOptionPane.showInputDialog("输入被乘数");number2 = (number1 - 32) / 1.8;JOptionPane.showMessageDialog(null, number1 + "华氏度 = " + number2+ "摄氏度", "结果", JOptionPane.PLAIN_MESSAGE);} // end method main
} // end class Addition

  

这是一个将华氏度转化成为一个摄氏度的程序

//后面是注释,程序不读这些内容

当然这个程序的算法也是基于华氏度和摄氏度的转化算法

摄氏度=(5/9)*(华氏度-32)

程度考虑到用户输入错误的情况。

感觉C和JAVA有种不一样的使用方法,JAVA喜欢调用很多已有的东西,C喜欢设定一些规则。

-------------------------------------------------------------------------------

因为主要是去学JAVA的,所以现在主要看别人写的JAVA代码,先去明白基本的规则,目前还是很菜,在敲别人的代码的同时去想别人为什么这么写,这样的设计有什么好处,或者这些代码能不能够作为其他程序的一个方法。TUT。

转载于:https://www.cnblogs.com/hello-2015/p/4523694.html

JAVA学习博客---2015.5相关推荐

  1. 记录自己第一个java学习博客

    记录自己第一个java学习博客 阿里java规范 弄懂 JRE.JDK.JVM 之间的区别与联系 DOS常用命令 常用mac终端命令 今天我学习了java第一个程序打印出helloworld! pac ...

  2. Java学习博客转载

    1.java大神的成神之路:https://blog.csdn.net/liushuimpc/article/details/80872928

  3. Java 学习博客_ 入门——GUI_6 五子棋

    鼠标在棋盘上移动时,会显示当前位置放置棋子,会落到的位置,即红框部分. 点击白棋.黑棋切换棋子,点击删除后点击棋子删除.不能判断输赢. import javax.imageio.ImageIO; im ...

  4. 软件构造第五次学习博客——SpotBugs概述

    软件构造第五次学习博客--SpotBugs概述 SpotBugs 介绍 SpotBugs是Findbugs的继任者(用于对代码进行静态分析,查找相关的漏洞. SpotBugs官方文档的bug描述 目前 ...

  5. java毕业设计博客管理系统Mybatis+系统+数据库+调试部署

    java毕业设计博客管理系统Mybatis+系统+数据库+调试部署 java毕业设计博客管理系统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开 ...

  6. java毕业设计博客论坛系统Mybatis+系统+数据库+调试部署

    java毕业设计博客论坛系统Mybatis+系统+数据库+调试部署 java毕业设计博客论坛系统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开 ...

  7. 计算机毕业设计Java个人博客网站(源码+系统+mysql数据库+Lw文档)

    计算机毕业设计Java个人博客网站(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java个人博客网站(源码+系统+mysql数据库+Lw文档) 本源码技术栈: 项目架构:B/S架构 开发语 ...

  8. 最值得收藏的java技术博客(Java篇)

    第一个:java_my_life 作者介绍:找不到原作者信息.大概做了翻阅全部是2012年的博客. 博客主要内容:主要内容是关于Java设计模式的一些讲解和学习笔记,在相信对学习设计模式的同学帮助很大 ...

  9. [java手把手教程][第二季]java后端博客系统文章系统——No10

    项目github地址:github.com/pc859107393- 实时项目同步的地址是国内的码云:git.oschina.net/859107393/m- 我的简书首页是:www.jianshu. ...

最新文章

  1. Zeal编程查询,离线文档浏览器
  2. JAVA窗帘_HomeControl 智能家具系统,包括灯光,窗帘的控制,设备,房间,情景模式的添加 Java Develop 240万源代码下载- www.pudn.com...
  3. 交叉熵代价函数cross-entropy
  4. Cold-Staking | TPoS vs LPoS vs DPoS
  5. C语言基础之数据结构
  6. 战斗机嵌入式训练系统中的智能虚拟陪练
  7. TF2 keras Tensoboard学习总结
  8. 逻辑函数的化简方法——数电第二章学习
  9. 【业务安全01】业务安全基础及测试流程
  10. 软件开发方法的过程、特点、优缺点
  11. 【原创】使用高德 API
  12. HTML <abbr> 标签简单介绍
  13. 杭州造云记 | 甲子光年
  14. python中sklearn实现决策树及模型评估_Python sklearn决策树算法实践
  15. Excel一键知道文本的字符长度
  16. STM32 Keil快速新建工程
  17. 走了....我不是徐志摩,我不知道怎样轻轻的走....
  18. 一个人可以有多少个朋友
  19. 2022-2028全球汽车座椅通风系统行业调研及趋势分析报告
  20. 阿里云数据库:一站式全链路数据管理与服务,引领云原生2.0时代

热门文章

  1. 学习笔记~~~~~Set接口实现
  2. docker安装前提条件
  3. java常见异常思维导图_21_异常_第21天(异常、企业面试题,思维导图下载)
  4. 考研计算机专业课统考吗,09考研计算机专业课统考增至4部分内容
  5. 【ROS问题】rqt_plot运行报错
  6. w7怎么重启无限服务器,w7重启数据库服务器
  7. 微信公共平台接口开发--Java实现
  8. ar软件测试工具_如何为用户测试制作快速的AR原型
  9. Azure PowerShell (1) PowerShell整理
  10. AS 中 Plugin for Gradle 和 Gradle 之间的版本对应关系