程序填空题:输入一行字符,统计字符个数
输入一行字符,请分别统计出英文字母、数字、空格和其他字符个数。
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
char x[]=@@[str.toCharArray()](2);
int a=0;
int b=0;
int c=0;
int d=0;
for(int i=0;@@[i char ch=x[i];
if(@@[ch>='a'&&ch<='z' ||ch>='A'&&ch<='Z'](2))
a++;
else if(@@[ch>='0'&&ch<='9'](2))
b++;
else if(ch==' ')
@@[c++](2);
else
d++;
}
System.out.println("letters="+a);//输出英文字母个数
System.out.println("digits="+b);//输出数字个数
System.out.println("spaces="+c);//输出空格个数
System.out.println("others="+d);//输出其他字符个数
}
}
```
答案:
第1空:str.toCharArray()
第2空:i
第3空:ch>='a'&&ch<='z' ||ch>='A'&&ch<='Z'
第4空:ch>='0'&&ch<='9'
第5空:c++
程序填空题:程序改错题:求1到5的阶乘的和
功能:求1!+2!+3!+4!+5!。
```
public class Main {
public static void main(String[] args) {
fun();
}
public static void fun(){
int n,j;
//float s=0.0,t=1.0;//此行语句有错误,改正后填到下侧空格内
@@[float s=0.0f,t=1.0f](2);
for(n=1;n<=5;n++){
//s=1;//此行语句有错误,改正后填到下侧空格内
@@[t=1](2);
for(j=1;j<=n;j++){
//t=t*n;//此行语句有错误,改正后填到下侧空格内
@@[t=t*j](3);
}
//s+t=s;//此行语句有错误,改正后填到下侧空格内
@@[s=s+t](3);
}
System.out.printf("jiecheng=%.0f\n",s);
}
}
```
答案:
第1空:float s=0.0f,t=1.0f
第2空:t=1
第3空:t=t*j
第4空:s=s+t
程序填空题:求一个二维数组中每行的最大值和每行的和
以下程序的功能是求一个二维数组中每行的最大值和每行的和。
# 输入样例
```
3
1 2 3
6 5 4
7 9 8
```
# 输出样例
```
1 2 3 3 6
6 5 4 6 15
7 9 8 9 24
```
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(@@[System.in](2));
int n=sc.nextInt();
int a[][]=new int[n][n];
int b[]=new int[n];
int c[]=new int[n];
for(int i=0;i for(int j=0;j<@@[a[i].length](2);j++){
a[i][j]=sc.nextInt();
}
}
int max,s;
for(int i=0;i max=a[i][0];
@@[s=0](2);
for(int j=0;j if(a[i][j]>max){
@@[max=a[i][j]](2);
}
s+=a[i][j];
}
b[i]=max;
c[i]=s;
}
for(int i=0;i for(int j=0;j System.out.printf("%3d",@@[a[i][j]](2));
}
System.out.printf("%3d%3d",b[i],c[i]);
System.out.println();
}
}
}
```
答案:
第1空:System.in
第2空:a[i].length
第3空:s=0
第4空:max=a[i][j]
第5空:a[i][j]
程序填空题:程序改错题:计算一个数列的和
以下程序中函数fun的功能是:根据整型形参m的值,计算如下公式的值。
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//int n=sc.nextDouble();//此行语句有错误,改正后填到下侧空格内
@@[int n=sc.nextInt()](2);
double x=fun(n);
System.out.printf("%f",x);
}
//public static void fun(int m)//此行语句有错误,改正后填到下侧空格内
@@[public static double fun(int m)](2)
{
double t=1;
int i;
//for(i=2;i @@[for(i=2;i<=m;i++)](2)
{
//t=t-1/(i*i);//此行语句有错误,改正后填到下侧空格内
@@[t=t-1.0/(i*i)](2);
}
//return i;//此行语句有错误,改正后填到下侧空格内
@@[return t](2);
}
}
```
答案:
第1空:int n=sc.nextInt()
第2空:public static double fun(int m)
第3空:for(i=2;i<=m;i++)
第4空:t=t-1.0/(i*i)
第5空:return t
程序填空题:程序改错题:计算正整数的各位上的数字之积
功能:计算正整数num的各位上的数字之积。
例如:输入252,则输出应该是20。
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//int n=sc.next();//此行语句有错误,改正后填到下侧空格内
@@[int n=sc.nextInt()](2);
//System.out.println(fun(int n));//此行语句有错误,改正后填到下侧空格内
@@[System.out.println(fun(n))](2);
}
//public int fun(int num)//此行语句有错误,改正后填到下侧空格内
@@[public static int fun(int num)](2)
{
//int k;//此行语句有错误,改正后填到下侧空格内
@@[int k=1](2);
do{
k=k*(num%10);
//num\=10;//此行语句有错误,改正后填到下侧空格内
@@[num/=10](2);
}while(num>0);
return k;
}
}
```
答案:
第1空:int n=sc.nextInt()
第2空:System.out.println(fun(n))
第3空:public static int fun(int num)
第4空:int k=1
第5空:num/=10