2
作者:互联网
第一次博客作业
前言
采坑心得
目录
目录
前言
第一次题目运用到的知识点不多,接收数字、字符串的输入,按所给要求判断输出即可。题目量中规中矩,难点大多集中在一些非法输入、边界输入上,比较容易卡测试点。
第二次题目都是对字符串的处理,只有三道题,题目量较小,比较难的是7-2 串口字符解析,情况繁多,情况分类不明确的话也容易卡住。
与前两次作业相比,第三次题目涉及到的知识点就比较多了,字符串的解析,输入检查,坐标的获取....等等,虽然只有三道题,但题目量是真的多。难点?代码一旦多起来,你会发现到处都是难点 Σ( ̄ロ ̄lll)。(直接emo了)
设计与分析
题目集2
7-2 串口字符解析
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String str = input.nextLine();
int ln = str.length();
if(ln<11) {
System.out.print("null data");
return;
}
int num = 0;
int denum = 0;
int ka = 0;
int ji = 0;
for(int i = 0;i < ln;i++) {
if(str.charAt(i)=='0'&&ka==0&&denum==0) {
num++;
if(ln - i >= 11) {
ji = 0;
if(num>1)
System.out.print("\n" + num + ":");
else
System.out.print(num + ":");
for(int z = i+1;z<=i+8;z++) {
if(str.charAt(z)=='1')
ji++;
}
ji = ji % 2;
if(str.charAt(i+10)!='1') {
System.out.print("validate error");
i = i + 10;
continue;
}
else
if((str.charAt(i+9)=='0'&&ji==0)||(str.charAt(i+9)=='1'&&ji==1)) {
System.out.print("parity check error");
i = i + 10;
continue;
}
else {
ka = 1;
}
}
else {
return;
}
}
if(ka == 1) {
denum++;
if(denum>1&&denum<10) {
System.out.print(str.charAt(i));
}
if(denum==11) {
denum =0;
ka = 0;
}
}
}
if(num == 0) {
System.out.println("null data");
}
}
采坑心得
改进建议
总结
标签:,难点,题目,System,num,字符串,输入 来源: https://www.cnblogs.com/5516-pan/p/16122961.html