2 luanpaixie262 luanpaixie262 于 2016.03.17 17:09 提问

我怎么才能让我连续输入多行数然后以-1结束输入

我想实现输入多行数字,然后输入-1结束开始输出是不是完全平方数,怎么改?图片说明

5个回答

shya_
shya_   2016.03.17 17:20
已采纳

Scanner sc = new Scanner(System.in);
String[] input = new String[26];
int i = 0;
do {
input[i] = sc.next();
i++;
} while (!input[i - 1] .equals("-1") );
in.close();

luanpaixie262
luanpaixie262 回复shya_: 那我怎么实现连续输出啊
2 年多之前 回复
sinat_28597179
sinat_28597179   2016.03.17 17:19

while(i!=-1){
.........
}

yangqinhz
yangqinhz   2016.03.17 17:26

system.out.print(“ ”),是输出“”内的字符串

bi_ma_wen
bi_ma_wen   2016.03.17 18:01

while(i!=-1){
.........
}

luochoudan
luochoudan   Ds   Rxr 2016.03.17 21:18

参考
public static void main(String[] args) {
// TODO Auto-generated method stub
TreeSet treeSet = new TreeSet();
Scanner scanner = new Scanner(System.in);
// scanner.useDelimiter("\n");
while (scanner.hasNextInt()) {
int i = scanner.nextInt();
if (i == -1) {
scanner.close();
break;
} else {
treeSet.add(i);
}
}
Iterator iterator = treeSet.iterator();
System.out.println(treeSet);
while (iterator.hasNext()) {
Integer a = iterator.next();
if ((Math.sqrt(a) % 1) == 0) {
System.out.println(a + "是平方数");
}
}
}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C#--第2周实验--连续输入字符--直到输入特定的字符才结束程序
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生  * All rights reserved. * 文件名称:连续输入字符   直到输入特定的字符才结束程序(假设按ESC结束) * 作 者: 雷恒鑫  * 完成日期: 2012 年 09 月 4 日 * 版 本 号: V1.0  * 对任务及求解方法的
EOF问题,如何结束输入流输入
把输入字符输出时越到的问题, while((c=getchar())!=EOF) putchar(); 回车无法结束循环,原因是回车不是流结束符,在输入流中流结束标志是 Ctrl+Z 或者 Ctrl+D 键 另外如果有输入再输入 Ctrl+Z 或者 Ctrl+D也不能退出循环,原因: 原因分析: 输入缓冲是行缓冲。当从键盘上输入一串字符并按回车后,这些字符会
C语言,以空格为分割,以回车为结束标记,输入一串数字到一个int数组中
C语言,以空格为分割,以回车为结束标记,输入一串数字到一个int数组中
编写程序:从键盘上输入若干个整数(以输入-1作为结束标识),输出这些数中的最大值和最小值,要求编写一个函数实现最大值和最小值的求取。
 要求用C语言编写程序:编写程序:从键盘上输入若干个整数(以输入-1作为结束标识),输出这些数中的最大值和最小值,要求编写一个函数实现最大值和最小值的求取。
输入一串未知个数的数据直到EOF(-1)停止和键盘输入文件结尾符EOF
1. 输入到EOF(-1)停止  如果一般自己调试程序,在输入数据未知数据数量的时候,希望随时可以停止数据输入。一般情况下,两种写法,一种遇换行符’\n’停止,但是由于’\n’符在输入阶段表示开始获取值的开始信号,如果不适用getchar()获取,一般scanf默认是不会认为换行是输入的数据,所以写法稍微复杂。该写法不做今天重点内容,如果想要学习该机制程序写法,详细请看下面的博文:  http:
多组样例输入如何结束(即读取到文件结尾)
在刚接触oj时看到样例都是多组的输入但不知道何时结束读取,其实就是在while里加写东西 如下两种方法#include<stdio.h> #include<string.h> #include<math.h> int main(void) { int n; while(~scanf("%d",&n))//在这里加一个取反符号就是table上面的那个键 { }
关于输入多组测试数据,当数据为0时,输入结束
1.while(scanf("%d",&n)!=EOF) EOF在stdio.h中宏定义为-1; 即有输入时,循环继续,否则,跳出循环。 2.while(scanf("%d",&n)&&n!=0) 即有有效输入时,循环继续,否则,跳出循环。 3.whlie(scanf("%d",&n)&&n) 这是一个逻辑表达式,只有两者同时为正值时,循环继续;否则,跳出循环。和2
c++ 如何输入一组数字 以回车作为结束
利用vector或者list比如以下,运用listlist&amp;lt;int&amp;gt; p; int n=0; //构造链表 int b; while(cin&amp;gt;&amp;gt;b) { p.push_back(b); n++; if (cin.get() == '\n') break; }或者是利用 vectorint n=0; vector&amp;lt;int&amp;gt; a; int b; whil...
Java一维数组实验编程
编写程序,读取1-100之间的整数,然后计算每个数出现的次数。假定输入是以0结束的。以下是程序运行示例: 输入1-100之间的整数:2 5 5 4 3 23 2 0 [回车] 2 出现 2 次 3 出现 1 次 4 出现 1 次 5 出现 2 次 23 出现 1 次代码如下: import java.util.Scanner; public class test1 {p
输入一些数求其平均数,以-1为结束标志
#include<stdio.h> int main() //用while语句 { int x,count=0; float sum=0,aver; printf("请输入一个正整数:"); scanf("%d",&x); while(x!=-1){ sum+=x; scanf("%d",&x); count+