为什么在同一个for语句中,另个for语句不能通用一个字符串数组 10C
    Scanner input = new Scanner(System.in);
    int dataCount = input.nextInt();//数据组数
    int dataline = input.nextInt();//数据行数
    int x = 0;//用于计算机器人移动距离

    String[] dataStr = new String[dataline + 1];//用于存储数据
    for(int i = 0;i < dataCount;i++){
        for(int n = 0;n < dataStr.length;n++){
            dataStr[n] = input.nextLine();//将控制面板的信息进行存储
        }
        /*测试字符串内容是否为null
        for(int n = 0;n < dataStr.length;n++){
        System.out.println(dataStr[n]);
            }*/  
        for(int n = 0;n < dataStr.length;n++){//机器人移动判定
            System.out.println(dataStr[n]);
            while(!dataStr[n].equals("LEFT") && !dataStr[n].equals("RIGHT")){
                char[] c = dataStr[n].toCharArray();
                int lastNumber = Integer.parseInt(String.valueOf(c[c.length - 1]));
                dataStr[n] = dataStr[lastNumber - 1];
            }
            if(dataStr[n].equals("LEFT"))
                x--;
            if(dataStr[n].equals("RIGHT"))
                x++;
        }
        System.out.println(x);
        x = 0;
    }

我在for语句中嵌套了两个独立的for循环语句,第一个用来从控制面板输入字符串,第二个用来判定,但是字符串数组在第二个for语句里面为null,而在注释掉的那个for
语句里面输出的字符串数组里面的内容,又是我在控制面板输入的

6个回答

不懂你想要表达什么,请表述清楚

你的意思有点不是很明白,你可以直接说说你的问题造成的结果。

全局变量可以用的啊,应该是没有达到你想要的最终结果吧,是逻辑出问题了吧

应该不是dataStr声明的问题,怀疑是scanner提取数据有问题。
把输入输出贴一下才比较容易判断问题。

问题描述不清楚啊,不知道你的问题具体是什么,你上面的那段代码辣么写产生了什么后果

scanner获取数据的问题,input = new Scanner(System.in);重新new一个就行了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
for语句
<p>n 计算机二级(VB)教程,全面、系统、细致地介绍了计算机二级(VB)的相关知识点。n</p>n<p>n 课程能够帮助学习者快速入门。n</p>n<p>n 该课程面向对象:n</p>n<p>n </p><ul><li>n 备考计算机二级(VB)的课程n </li>n <li>n 备课期末考试n </li>n <li>n 自学VB程序设计n </li>n </ul><p>n 课程注意提高学习者实战技巧,授课过程中以实际操作演示为主,帮助学习者快速地掌握编程的实际方法和技巧。n</p>n<p>n 课程以2019年计算机二级大纲为主线,详细介绍了VB的相关知识点。n</p>n<p>n <br /></p>n<p>n <img src="https://img-bss.csdn.net/201905110304164792.jpg" alt="" /></p>
for语句。
for(;;)rnrn有谁知道这种句型的?第一次看到。蒙了,望各位高手求教rnrnfor(;dwBase < 2*dwOneGB; dwBase += dwOnePage)rnrn把for中的第一个;删去就不行,各位大哥请留步,3Q3Qrnrn技术贴,马上结贴
For语句
本课程为 C# 语言的入门课程,主要学习 C# 语言的基本语法,是程序开发中基础的知识。在真正的开发过程中,我们所写代码几乎一半都与本课程中所学知识相关。本课程也是《C# 语言基础》的前置课程。
if,for语句
#include  main() {         int x ,find=0; for(x=1;!find;x++) { if(x%2==1 &&x%3==2 &&x%5==4 &&x%6==5 &&x%7==0) { printf("x=%d\n",x); find=1; } } } 知识点:1.if语句的应用
为什么在for语句中不能定义变量?
[code=C/C++]rnint i;rnfor( i=0;i<10;i++)rn printf("hello...\n");rn[/code]rnrn是OK的rnrnrn但是rn[code=C/C++]for( int i=0;i<10;i++)rn printf("hello...\n");[/code]就不可以,编译器报错rn为什么?
for语句为什么会跳出?
我写了一个文件输入的小程序,调用了for语句,为什么不能连续往文件里输入内容呢?rn程序如下:rn rn#include rn#include rn#include rn#include rnusing namespace std;rn rnint main()rnrn char file_name[101];rn char file_addr[101];rn char input_line[501];rn cout<<"输入一个你要新建文件的路径(如c:\\xxx\\xxxx):";rn cin.getline(file_addr,100);rn cout<<"输入一个你要新建的路径以及文件名(如xxxx.txt):";rn cin.getline(file_name,100);rn rn strcat(file_addr,"\\"); //输入一个"\\"表示一个"\";rn strcat(file_addr,file_name); //直接放入字符串的名称即可,如file_addr[101]无法通过调试;rn rn ofstream file_out(file_addr);rn if(!file_out)rn cout<
为什么执行不到For语句?
DataSet ds = myCategory.dsSelectOrderBy();rnrn if(myCategory.AddSCategory(int.Parse(txtOrderNum.Text)+1,int.Parse(txtDeepNum.Text)+1,txtSCategory.Text.Trim())=="1")rn rn for(int i = int.Parse(txtOrderNum.Text)+1;ialert('添加成功!')");rn txtSCategory.Text = "";rn tvCategoryBind();rn txtBind();rn rn elsern rn Response.Write(" ");rn
for语句中的一个冒号什么意思
for(Humanoid human : InjuredList)rnrn{rn...rn}rnrn 语句体内容无关紧要,因此我省略了。rnrn就是这个其中的“:”是什么意思啊。rnrn有哪位达人知道告诉我下啊。
一个关于for语句的小问题
经常看到for语句这样写:for (int i =0 ; i < a&&b; ++i)rn我不知道i < a&&b 是什么意思,谁解释下
请教 一个嵌套for语句!
请教, for x=0 to 1rn response.write ""rn for y=0 to 3rnrn nextrn nextrn这条语句执行是时候是不是这样,当x=0的时候,y执行4次,x=1的时候,y执行4次?,这条语句会输出2行4列的表格,如果要在每行表格输出的时候,加一个横线 ,应该在那加???谢谢........
求解一个for语句的意思
String[] teammates = getTeammates(); //set name of teammatesrnif (teammates != null) rn for (String member : teammates) rn out.println(member);rn rnrn//---------------------------------------------------questionrn那个for()语句中的冒号是什么意思啊?rnout.println和System.out.println的区别是什么?rn懂robocode的在解释一下out.println(member)的意思吧
关于一个for语句的问题
*****rn ***rn *rn怎么用for 语句把这个编出来啊rn谢谢了啊rn
for语句的一个问题
我写了以下的代码,在lcc中打开ANSI-c选项可以通过:rn在TC和VC,DEV-c++中提示i声明错误:rn各位大哥帮助看一下:rn#include rnmain()rnrn for(int i=0;i<10;i++)rn printf("%4d",i);rn rn到底是怎么回事呢?
一个关于for语句的问题
#include rnmain()rnrn long int a,b;rn char n,s;rn for(s='y';s=='y'||s=='Y';)rn rn scanf("%ld%c%ld",&a,&n,&b);rn if(n==43)rn printf("\n=%ld\n",a+b);rn else if(n==45)rn printf("\n=%ld\n",a-b);rn else if(n==42)rn printf("\n=%ld\n",a*b);rn else if(n==47)rn printf("\n=%ld\n",a/b);rn else printf("\nError!please afresh input.");rn printf("\nDo you want restart?(Y/N)\n");rn s=getchar();rn rn printf("\nGoodbye!");rnZrn这个程序总是没有执行循环,为什么?
C++中范围for语句
如果想对string对象中的每个字符做点什么操作,目前最好的办法是使用C++11新标准提供的一种语句:范围for(range for)语句。示例代码:#include<iostream> #include<string> using namespace std;int main() { string str("some string"); //每行输出str中的一个字符。 f
C99中的for语句
在C99中,for语句的第一个表达式可以替换为一个声明,这一特性使得程序员可以声明一个用于循环的变量: for(int i=0;i变量i不需要在该语句之前声明。事实上,如果变量i在之前已经进行了声明,这个语句将创建一个新的i且该值仅用于循环内。       for语句声明的变量不可以再循环外部访问。
java中for语句的执行顺序
java中for语句的执行顺序 public class A { static boolean foo(char c){ System.out.print(c); return true; } public static void main(String[] args) { int i = 0; for(foo('A');foo('B')&amp;&amp;i...
n的阶乘 for语句
n的阶乘 for语句 c#初级实例
shell脚本之for语句
for: 传统 shell 格式 原来的 for 命令语法是: for variable [in words]; do commands done for i in A B C D;do     echo $i; done $ for i in {A..D}; do echo $i; done for: C 语言格式
for语句的执行顺序
[size=medium]通常,一个for语句的格式为: for(初始化;条件判断;操作){}; 程序在首次执行for语句的时候,会先运行初始化部分,注意,初始化部分只运行一次。接着进行条件判断。条件判断部分是一个表达式,该表达式返回一个布尔值,如果为真,则运行后面花括号中的语句,然后运行for中的操作部分(通常是一个变量的步增和歩减);这样就完成了一次循环。接下来运行第二次循环,不再进行初始...
for语句的疑惑?
以下三段代码,显示结果差异如此之大,我不能理解,请学友们指教:rn1、for(int n=0; n>1;++n) cout<<"test2"< 什么也不显示。rn2、for(int n=0; cout<<"test1",n>1;++n) cout<<"test2"<仅仅显示一次test1rn3、for(int n=0; n>1,cout<<"test1";++n) cout<<"test2"<重复显示test1test2,进入死循环rnrn我想应该是我对for语句还掌握的不够,但不知其所以然。rn平台:Win2000Server+VC6rn谢谢
请教for语句
[code=C/C++][/code]rnrnfor(; *poin_1 != *poin_2; poin_1++, ch_chang++)rnrn *poin_1 = change;rnrnrn[code=C/C++][/code]rnrn其中poin_1和poin_2为字符指针变量,在调试的时候发现*point1和*point2指向同一个字母如Z但就是不退出循环(point1和point中所装的是不同的地址)这是为什么呢?
范围for语句
vc++6.0上使用范围for语句时,程序段如下rnfor(auto &c:s)rn c=toupper(c);rncout<,但是编译为什么出错呢
相加的for语句
是与生活密切相关的一个小程序 解决实际问题
Oracle中for语句的使用
set serveroutput on declare total int; begin total:=0; for i in reverse 1..10 loop if mod(i,2)=0 then dbms_output.put_line('total:='||total||'+'||i); total:=total+i; end ...
For语句练习
简单的C#For语句练习,适用于初学者,简单易懂
循环结构(for语句)
/* 循环语句:for循环,while循环,do...while循环。 for循环格式: for(初始化语句;判断条件语句;控制条件语句) { 循环体语句; } 执行流程: A:执行初始化语句 B:执行判断条件语句,看其返回值是true还是false 如果是true,就继续执行 如果是false,就结束循环 C:执行循环体语句;
for语句问题
#include rnint main()rnrn int i,sum;rn sum=0;rn for(i=1;1<=100;i++)rn rn sum=sum+i;rn rn rn printf("%d\n",sum);rn return(0);rnrn编辑没有问题。可是运行时rn什么也没有,只有一个光标在闪动
4.1for语句
1,for语句的格式: 格式一:for(循环变量初始化;循环条件;循环变量增量) 语句; 格式二:for(循环变量初始化;循环条件;循环变量增量) {语句1; 语句2; … } 语句是要重复执行的内容,即for语句的循环体。 2,初始化使变量获得初值,循环条件约束变量范围,循环变量增量是计算循环变量的语句。 3,在循环变量 的初始化和增量部分,可以使用逗号分隔的语句序列进行多个动作。 4,初始...
特殊的for语句
[code=Java]rnpublic class Testrn rn static public void main(String[] args)rn int[] num = 1,2,3,4,5; rn for(int arg:num) rn System.out.println(arg); rn rn rn[/code]rn //增强后的for循环(j2SE 5.0的新特性) ,有什么特别的用途啊,感觉还没老式for容易理解和使用
for语句的循环
#include main() {     int i,j; for(i=0;i { for(j=5;j>i;j--) { printf(" "); } for(j=0;j { printf("*"); } printf("\n"); } printf("\n"); } 知识点:循环语句的应用 心得体会:1.懂得了控制两个变量;
for语句打印
#include &amp;lt;stdio.h&amp;gt; int main() { int i,j,k,n; printf(“请输入一个奇数:”,n); scanf(&quot;%d&quot;,&amp;amp;n); n=(n+1)/2; for (i=0;i&amp;lt;=n;i++) { for (j=0;j&amp;lt;=n-1-i;j++) printf(&quot; “); for (k=0;k&amp;lt;2i-1;k++) printf(&quot;”...
FOR语句问题。
我是初学DELPHI的,向大家请教个问题rn我现在用FOR语句循环执行一段程序,每执行一次就会在MEMO加一行文字说明,为什么我的从一执行到循环结束时MEMO上才会一下子出来一大堆说明呢,而不是每循环一次就增加一个说明呢?
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件