java基础语法浅试

      使用while循环语句和if条件语句,再加上键盘输入的方法,粗略可以实现数据筛选和验证密码之类的功能,不过相比别人很显然这很初级,就好像又回到当初学VB的时候一样。做了五个练习:1、输入账户名和密码,验证成功则提示登陆成功,验证失败则提示失败;2、找出100至1000之间的完数,输出并显示个数;3、输出10至100的可以被3或5整除的数的累积和;4、可以随意输入年,判断是否为闰年;5、用星号输出一个倒置的等腰三角形。

我的思路:

练习一,需要在外层做一个循环语句,使其在验证错误时能不断重新验证,但需设定上限,因此条件语句是变量小于某个数值,内部应有变量自增语句。然后每次循环需要输入账户和密码,我将他们放在一起,先获取值,然后再进行判断。首先判断账户名是否正确,正确则执行内部密码判断,不正确就输出“账户不存在提示”;内部密码验证正确,则break结束循环,并输出登陆成功,不正确则输出“密码错误”。循环内层计数变量自增,并输出剩余次数,进入下一次循环。

练习二、循环语句,使变量i数值从100到1000,循环内部写判断是否为完数语句,先将变量i值用算数运算符,求商或求余分别得到各个位数,我用的三目运算符,true则赋值i,false则赋值0,再写一句条件语句,如果不等于0就输出i,且计数(利用自增)。循环外层下面则写输出完数个数。

练习三、用循环语句使变量i赋值10到100,定义两个整型变量,一个变量用于接收判断后的数值,两一个用于计算累加和,我还是用的三目运算符,条件为整除3||整除5,true赋值i,false则赋值0,内部代码如下:int num,a;
a=(i%3==0)||(i%5==0)?i:0;
num+=a;循环外侧输出num。

练习四、关键在于判断语句,我的写法如下:(years%400==0)||((years%4==0)&&(years%100!=0))。

练习五、三个部分,外层循环用于换行和计数,内层并列两个输出行内符号的循环,一个输出空格,一个输出星号。由题目可知空格需要递增,星号需要递减,分别找出与外层循环的数量变化关系(因为外层我将其也用作计数)。得出空格每行加一即可,用自增,条件设为小于等于计数;星号则是由2*最终行数-1开始递减,用自减,但只自减每行只少输出一个,不符合每行少两个的规律,则int j=2*n-1;//(最多星号数)
while(j>=2*i-1)//i为计数
{
System.out.print(“*”);//注意println和print的区别
}完成。n这个数字可以预设也可以通过键盘输入,相应代码需要调整下。

      总结:前四个做起来相对快些,最后一个费时有些久,因为思维转不过来,本来是考虑递减的,但往下一想就想成递增的了,另外关于闰年验证也耗了些时间,倘若只通过手写而不经计算机运算检验,会有错误而不知,思维还不够严谨,逻辑不够缜密。

你可能感兴趣的:(java基础语法浅试)