首页 > 编程知识 正文

用java编写个程序并注释(java编写注解)

时间:2023-12-24 12:05:25 阅读:320268 作者:SKBA

本文目录一览:

java编程,对下面的程序进行填空,并对每一行做一个注释

#includestdio.h main() { char s[80],c1,c2=' '; int i=0,num=0; gets(s); /* 得到一行字符 */ while(s[i]!='') /* 直到字符结束 */ { c1=s[i]; if(i==0) c2=' '; /* 弥补第一个单词没有空格或者说最后一个单词没有空格 */ else c2=s[i-1]; if(c2==' ') num++; /* 遇到空格就是一个单词 */ i++; } printf("there are %d words.n",num); }

给下面的java程序注释

首先,你的代码有两处错,main函数定义需要 static关键字,

第二是定义数组容量,只需要在new对象的时候设置容量大小,

在你的代码中,目标是取平均值,这里其实不需要定义数组,显得多此一举,您可以自行去掉,下面是你的代码的注释,请采纳!

import java.util.Scanner;

public class Test {

    

    // public void main(String[] args) {

    // double[5] cj = new double[5];

    //创建主函数

    public static void main(String[] args) {

        //定义double数组,容量5

        double[] cj = new double[5];

        //定义扫描键盘输入

        Scanner sc = new Scanner(System.in);

        int i;

        //平均数变量

        double avg = 0.0d;

                //for循环,变量i从0开始没循环一次i+1,当不满足条件i5时跳出循环

        for (i = 0; i  5; i++){

            System.out.println("请输入第" + (i + 1) + "个数");

            //键盘输入小数并赋值到double数组中

            cj[i] = sc.nextDouble();

            //将所有输入的数值相加

            avg = avg + cj[i];

        }

        //取平均数

        avg = avg / 5;

        System.out.println("平均分为:" + avg);

    }

}

用JAVA编写一个程序,希望有注释,但不要太简单,不要在别的地方复制,急用!

/**

* GenericLinkedStack.java

*/

package fix;

import java.util.EmptyStackException;

/**

*泛型的链式栈数据结构

*/

public class GenericLinkedStackE {

// 栈顶元素

private Item top = null;

// 返回栈顶元素,并弹出

public E pop() throws EmptyStackException {

if (isEmpty()) {

throw new EmptyStackException();

}

E e = top.value;

top = top.next;

return e;

}

/**

* 栈顶压入一个元素

* @param e 被压入的元素

*/

public void push(E e) {

Item curr = new Item(e);

curr.next = top;

top = curr;

}

/**

* 返回栈顶元素,但不出栈

* @return 栈顶元素

*/

public E peek() {

if (isEmpty()) {

throw new EmptyStackException();

}

return top.value;

}

/**

* 判断栈是否为空

* @return 判断结果

*/

public boolean isEmpty() {

return top == null;

}

/**

* 栈中元素

* @author jilen

*

*/

class Item {

//元素

private E value;

//下一个

private Item next;

public Item(E e) {

this.value = e;

}

public E getValue() {

return value;

}

public void setValue(E value) {

this.value = value;

}

public Item getNext() {

return next;

}

public void setNext(Item next) {

this.next = next;

}

}

}

/**

* InfixToPostfixConverter.java

*/

package fix;

import java.util.Hashtable;

/**

* @author jilen

*

*/

public class InfixToPostfixConverter {

// 操作符及其优先级组成的键值对

private static final HashtableCharacter, Integer operators;

private StringBuffer infix;

private StringBuffer postfix;

GenericLinkedStackCharacter stack = new GenericLinkedStackCharacter();

// 初始化操作符列表,static语句块会在加载类时自动执行

static {

operators = new HashtableCharacter, Integer();

operators.put('^', 4);

operators.put('*', 3);

operators.put('/', 3);

operators.put('%', 3);

operators.put('+', 2);

operators.put('-', 2);

operators.put('(', -1);

operators.put(')', 5);

}

/**

*

*/

public InfixToPostfixConverter(StringBuffer infix, StringBuffer postfix) {

this.infix = infix;

this.postfix = postfix;

}

/**

* 转换函数

*/

public void convertToPostfix() {

// 对输入字符串中字符遍历

for (int i = 0, n = infix.length(); i n; i++) {

char c = infix.charAt(i);

// 是数字之间添加到转换后字符串

if (isNumber(c)) {

postfix.append(c);

} else if (isOperator(c)) {

switch (c) {

// '(' 直接入栈

case '(':

stack.push(c);

break;

// ')' 弹出元素直到碰到'('

case ')':

while (!stack.isEmpty() stack.peek() != '(') {

postfix.append(stack.pop());

}

stack.pop();

break;

// 其他操作符

default:

// 当前操作符比栈顶操作符优先级高,直接入栈

if (stack.isEmpty() || precedence(c, stack.peek())) {

stack.push(c);

}

// 当前操作符比栈顶操作符优先级低,出栈直到为空或栈顶优先级低于当前操作符

else if (!precedence(c, stack.peek())) {

while (!stack.isEmpty() !precedence(c, stack.peek())) {

postfix.append(stack.pop());

}

stack.push(c);

}

break;

}

}

}

// 若栈中还有操作符,所以元素出栈

while (!stack.isEmpty()) {

postfix.append(stack.pop());

}

}

/**

* 判断是否为操作符

* @param c

* @return

*/

public static boolean isOperator(char c) {

return operators.containsKey(c);

}

/**

* 优先级大小关系operator1 operator2 则返回true,否则false

* @param operator1

* @param operator2

* @return 判断结果

*/

public static boolean precedence(char operator1, char operator2) {

return operators.get(operator1) operators.get(operator2);

}

/**

* 是否数字

* @param c 要判断的字符

* @return 判断结果

*/

public static boolean isNumber(char c) {

return c = '0' c = '9';

}

}

/**

*Main.java测试类

*/

package fix;

/**

* @author Administrator

*

*/

public class Main {

/**

* @param args

*/

public static void main(String[] args) {

StringBuffer infix = new StringBuffer("(1+2)*3/4");

StringBuffer postfix = new StringBuffer();

InfixToPostfixConverter converter = new InfixToPostfixConverter(infix,

postfix);

converter.convertToPostfix();

System.out.println(postfix.toString());

}

}

中缀转后缀的程序,有GenericLinkedStack.java,InfixToPostfix.java,Main.java三个源文件需要放在fix包下

Java程序注释

1、单行(single-line)--短注释://…… 单独行注释:在代码中单起一行注释, 注释前最好有一行空行,并与其后的代码具有一样的缩进层级。如果单行无法完成,则应采用块注释。 注释格式:/* 注释内容 */ 行头注释:在代码行的开头进行注释。主要为了使该行代码失去意义。 注释格式:// 注释内容 行尾注释:尾端(trailing)--极短的注释,在代码行的行尾进行注释。一般与代码行后空8(至少4)个格,所有注释必须对齐。 注释格式:代码 + 8(至少4)个空格 + // 注释内容 2、块(block)--块注释:/*……*/ 注释若干行,通常用于提供文件、方法、数据结构等的意义与用途的说明,或者算法的描述。一般位于一个文件或者一个方法的前面,起到引导的作用,也可以根据需要放在合适的位置。这种域注释不会出现在HTML报告中。注释格式通常写成: /* * 注释内容 */ 3、文档注释:/**……*/ 注释若干行,并写入javadoc文档。每个文档注释都会被置于注释定界符 /**......*/ ...

什么是注释?如何在Java程序中加入注释?

试想一下,一个没有一句注释的程序源码,怎么读,一个程序要上万条代码不可能全部记得住哪一块是什么用,而且一个项目也不会是一个人独自完成,那样效率太低,多人合作就要给别人说明,每一块是什么用,方便他人使用,方便自己更正,而这些说明文字就是注释,注释不会被执行,不影响运行结果。

Java中代码的注释有三种:

// 注释一行 

/* ...... */ 注释若干行 

/** ...... */ 注释若干行,并写入 javadoc 文档

前两种比较容易理解,至于第三种,你学习Java看的api文档就是javadoc程序根据第三种的注释生成的。

扩展资料

注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示,能提高程序代码的可读性。

用java编写个程序并注释

import java.util.Date;

/**

* 名字:XX你是帅哥!

* 作用:突出版主很帅

* @author Administrator

*

*/

public class ShuaiG {

//姓名

private String name;

//拍马匹用的华丽语言

private String sName;

//拍马匹的时间

private Date date;

//获得拍马匹的人的姓名

public String getName() {

return name;

}

//设置拍马匹的人的姓名

public void setName(String name) {

this.name = name;

}

//设置拍马匹用的华丽语言

public String getSName() {

return sName;

}

//获得拍马匹用的华丽语言

public void setSName(String name) {

sName = name;

}

//获得拍马匹的时间

public Date getDate() {

return date;

}

//设置拍马匹的时间

public void setDate(Date date) {

this.date = date;

}

/**

* 程序主方法,用来设置和获得你的操作并输出结果

* @param args

*/

public static void main(String[] args) {

//创建一个帅哥去给老板拍马匹

ShuaiG shuaiG=new ShuaiG();

//拍马屁对象的名字叫:版主

shuaiG.setName("版主");

//设置你要对版主说的话:你帅呆了简直天下无敌:

shuaiG.setSName("你帅呆了简直天下无敌");

//指定什么时候对版主说这些话

shuaiG.setDate(new Date());

//现在开始对版主说:版主你帅呆了简直天下无敌

System.out.println(shuaiG.getName()+shuaiG.getSName());

//你说出这句话的准确时间

System.out.println(shuaiG.getDate());

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。