我正处于Java 7软件设计学习开关()的开头并且做... while()和什么不是.
当我在Intelli J IDEA 13中编译并运行程序时,它编译并运行正常,但是当语句完成时,什么都不会中断.
例如,当程序运行时,在案例2中,当我输入3个等级(90,90,90,-1)后输入-1时,它给出了平均值(270),但随后重复...
它应该断开并返回到开关菜单的开头.即使我在菜单中输入3,它也只是显示"No Code Here ..."到无穷大,即使有一个break语句(即使break语句已经过时).
import java.util.Scanner;
public class TestingPlatform {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter 1 to set percentage of total for new grades, 2 to enter new grades, 3 to get average, and 4 to quit: ");
int choice = input.nextInt();
do {
switch (choice) {
case 1:
System.out.println("Enter percent to multiply by: ");
double percent = input.nextDouble();
System.out.println("You entered " + percent);
break; …Run Code Online (Sandbox Code Playgroud) int i=1;
do
{
if (i % 13 == 0)
Response.Write(i + "<br>");
i++;
} while (i < 201);
Run Code Online (Sandbox Code Playgroud)
作为标题,我想打印出可以从1到200整除的数字.上面的代码有效,但为什么我不能这样写呢?
int i=1;
do
{
Response.Write(i + "<br>");
i++;
} while (i < 201 && i % 13 = 0);
Run Code Online (Sandbox Code Playgroud)
非常感谢!
我在C#的控制台应用程序中编写了这个do-while循环:
do
{
ThisHelp.ShowMenu();
userChoice = (char) Console.Read();
ThisHelp.Helpon(userChoice);
}while(ThisHelp.IsValid(userChoice) == false);
Run Code Online (Sandbox Code Playgroud)
该方法ThisHelp.ShowMenu()只有一堆Write + WriteLine方法,它们要求用户输入1到8的数字.该方法ThisHelp.Helpon()有一个开关,根据传递的用户输入,显示不同的文本.该方法ThisHelp.IsValid只检查用户输入是1到8之间的数字.
这是问题:在用户写入数字并按下ENTER后,循环的第一个语句在第二个语句至少执行一次之前执行3次.为什么会这样?
编辑:这是ThisHelp.IsValid方法的代码,如下所示:
public bool IsValid(char ch)
{
if (ch < '1' | ch > 8 & ch != 'q') return false;
else return true;
}
Run Code Online (Sandbox Code Playgroud) 我已整夜编程,我再也找不到错误:/:/如果介绍== 1或2然后执行此操作...如果介绍!= 1或2然后再次询问号码,直到数字为1或2 ......我找不到错误:/
do{
System.out.println("Enter number: ");
Scanner scanintro = new Scanner(System.in);
intro = scanintro.next();
}while (intro == ("1")|| intro == ("2"));
Run Code Online (Sandbox Code Playgroud) 这是我在测验中答错的问题。我相信它会打印 5,因为 x 不低于 4。为什么不管 while 条件如何执行 do 语句?也许我盯着这个看得太久了。它目前打印 20。
int x = 5;
do{x*=4;} while(x<4);
System.out.print(x);
Run Code Online (Sandbox Code Playgroud) 我目前正在做计算机科学的 CS50 介绍:我开始编写这段代码(用 C 编写),我必须根据用户编写的内容编写金字塔。
这是我的代码:
#include <stdio.h>
#include <cs50.h>
int main(void);
int n;
do
{
n = get_int("Positive Number: \n");
}
while (n > 0 || n < 9);
Run Code Online (Sandbox Code Playgroud)
这是我的终端显示的错误:
Run Code Online (Sandbox Code Playgroud)mario.c:6:1: error: expected identifier or '(' do ^ mario.c:10:1: error: expected identifier or '(' while (n > 0 || n < 9); ^ 2 errors generated. <builtin>: recipe for target 'mario' failed make: *** [mario] Error 1
有人可以帮忙吗?威廉
为什么循环继续到无穷大,我通过 n<6 设置了限制,还有一件事,代码打印 111111... 。我期望的输出是 12345。
#include <stdio.h>
//Compiler version gcc 6.3.0
int main()
{
int n=1;
do{
while(n<6)
printf("%d",n);
n++;
}
while(n<6);
return 0;
}
Run Code Online (Sandbox Code Playgroud) 这里完全是新手..抱歉。
我有一个.txt包含 IP 的文件(逐行):
195.678.333.23
54.221.67.1
32.221.67.2
32.221.67.3
56.221.67.4
32.221.67.5
243.221.67.6
23.221.67.7
34.221.67.8
34.221.67.9
Run Code Online (Sandbox Code Playgroud)
(我需要循环大约200个IP)
我需要读取每一行,然后搜索多个 csv 文件以查找这些 IP,看看它们是否存在。
CSV 是这样的:
3am452525-1;2021-08-25T07:49:03.188353+00:00;195.678.333.23;234.45.78.232;\"pass rscore=16\";bl@hotmail.com resolve=ok reverse=bl@hotmail.com routes= notroutes=alfgdfgd,pr_sdt_Spsdgsgdhidfhgd;sxdgdsgs.hotmail.com;ECDHE-RSA-AES256-GCM-SHA384;NOT;sdgsgm@dunog.df;ENV_RCPT:dgsgsgsg@{hotmial.com,ENV_RCPT_VERIFY:1;ATTACH_NAME:sdgdsgsgsof.pdf,ATTACH_MIME:application/pdf,ATTACH_TYPE:pdf,ATTACH_OEXT:pdf,ATTACH_CORRUPT:0,ATTACH_PROTECT:0,ATTACH_SIZE:20099;;;;;;sdgsg_fhdh_dfhdh;asrsar_asrar;0;0;0;0;0;0;0;df;8.12.0-2107140000;main-2108250046;;;;sdgsg;;;;none;none;rule=sdgsgs action=ssdgsg-sgddsgr Subject default="sdgs $reyey";rule=odfhddh action=add-header dfhdhdReason="$SpamReason";;;;;;SEND_QID:4363636363,SEND_PROFILE:mail,SEND_RCPTS:dhdfhh;1;1;default_uioyuouyo_RcptInOrg;30677;uMwaF_x-00m7xOj-rho8njCPLr_QKYh3;<B8967386-0450-4709-A382-66D68CE4F3A6@rtce-efax1>;"zdgddadyhadyhad";0.283;1;0.856;Fax-Tdhfdm@urydyd;sdhdfhdhdhfd
Run Code Online (Sandbox Code Playgroud)
IP 存在于$3CSV 文件的字段中,但如果我找到 IP,那么我希望将整行作为输出。
有人可以帮忙吗?
我有厌倦的事情,比如:
cat /tmp/IPs_filename.txt | while read line; do grep ${line} csvlog.436334.csv; done
但没有帮助。
谢谢
为什么标签不能紧邻}while(/*exp*/);do-while 循环之前放置,而不是期望主表达式。
int main()\n{\n \n int x = 5;\n \n do{\n if(x==2) goto label;\n \n printf("%d", x);\nlabel:\n ; // if not error: expected primary-expression before \xe2\x80\x98}\xe2\x80\x99 token\n }while(--x);\n\n return 0;\n}\nRun Code Online (Sandbox Code Playgroud)\n 我有以下 C++ 程序;
#include <iostream>
int main() {
int i=1, j=1, k=1, z=0;
for (; i <= 10; i++)
while(j <= 10) {
j++;
do {
k++;
z++;
} while(k <= 10);
}
std::cout << z << " ";
}
Run Code Online (Sandbox Code Playgroud)
运行时输出为 19,我无法理解为什么会这样。
由于之前的 while(j<=10),我预计返回值为 10。我错过了什么?