pat乙级1002 题目提交提示格式错误,求大神帮忙看看哪里错了?

读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10^100。

输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。

输入样例:
1234567890987654321123456789
输出样例:
yi san wu

import java.util.Scanner;
public class PatTest1002 {
	public static void main(String[] args){
	    Scanner in=new Scanner(System.in);
	    String s;
	    int sum=0;
	    s=in.next();
		char[] arg=s.toCharArray();//字符串转化为字符数组
		for (int i = 0; i < arg.length; i++) {
			sum+=arg[i]-48;
		}
		int y=1;
		int num=sum;
		while(num/10!=0){
			num=num/10;
			y++;
		}
		int x=y-1;
		String[] str=new String[y];
		do{
			switch(sum%10){
			case 1:str[x]=("yi");break;
			case 2:str[x]=("er");break;
			case 3:str[x]=("san");break;
			case 4:str[x]=("si");break;
			case 5:str[x]=("wu");break;
			case 6:str[x]=("liu");break;
			case 7:str[x]=("qi");break;
			case 8:str[x]=("ba");break;
			case 9:str[x]=("jiu");break;
			case 0:str[x]=("ling");break;
			}
			x--;
			sum=sum/10;
		}while(sum%10!=0);
		for (int i = 0; i < str.length; i++) {
			if (i<=str.length-1) {
				System.out.print(" "+str[i]);
			}else{
				System.out.print(str[i]);
			}
			
		}
	}
}

测试的截图在这里插入图片描述
在这里插入图片描述

### 关于PAT乙级考试题目及解析 #### 背景介绍 PAT(Programming Ability Test)乙级考试主要面向编程入门者设计,其难度适中,适合初学者巩固基础知识并提升实际编码能力。这类试题通常涉及基本的数据结构、算法逻辑以及程序设计技巧。 #### 题目特点 根据历年 PAT 乙级真题分析[^1],这些题目涵盖了数组操作、字符串处理、简单排序与查找等内容。对于数据结构初学者而言,它们是非常好的练手材料。通过尝试不同的解法来解决同一道题目,可以有效提高思维灵活性和代码实现能力。 #### 示例题目及其解答 以下是基于过往资料整理的一道典型 PAT 乙级题目: **题目描述** 给定一组试机座位号与对应的正式考试座位号之间的映射关系,请帮助迟到的考生找到自己的正式考试位置编号[^4]。 **输入格式** 第一行为两个正整数 N 和 M (N ≤ 10^5, M ≤ 10^4),分别表示总的考生人数和询问次数;随后一行包含 N 个互不相同的非负整数 Si 表示每位考生的试机座位号;再接着一行为 N 个同样长度的不同非负整数 Ai ,代表对应试机座次下的真实考场安排序号;最后连续给出 M 条查询记录 Qi 请定位具体某人的最终分配情况。 **输出格式** 针对每次提问返回单独一行答案即目标人员的确切考室代号或者 "- " 如果该学员未参与此次评测活动的话。 ```python def find_exam_seat(n, m, try_seats, exam_seats, queries): seat_map = {try_seats[i]: exam_seats[i] for i in range(len(try_seats))} results = [] for query in queries: if query in seat_map: results.append(str(seat_map[query])) else: results.append("-") return "\n".join(results) if __name__ == "__main__": n, m = map(int, input().split()) try_seats = list(map(int, input().split())) exam_seats = list(map(int, input().split())) queries = [int(input()) for _ in range(m)] print(find_exam_seat(n, m, try_seats, exam_seats, queries)) ``` 上述代码片段展示了如何利用字典存储键值对从而快速检索所需信息的方法之一。 #### 总结反思 尽管部分复杂度较高的问题可能存在边界条件难以覆盖全面的情况[^2][^3],但总体来看,只要掌握了扎实的基础理论知识加上反复实践演练,就能从容应对大多数挑战。同时也要注意培养良好的时间管理习惯,在有限时间内完成高质量作答尤为重要。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值