急 我想实现下面的循环 当输入的四个字母为over 循环结束 否则 继续输入

作者&投稿:莘静 (若有异议请与网页底部的电邮联系)
让一个程序无限循环,但是当你输入一个字符时就结束循环的语句~

你好!!

也可以采用 for 循环的方式完成,你看看吧
#include int main(){ for (;;) {printf("请输入数字 1-5,6 退出:"); char a;a = getchar(); if( a == '6') break; printf("你选择了: %c
",a); getchar(); }}

用 while做的循环输入
int a;
int b[10];
for(int i=0;i<10;i++) //先初始化数组b
b[i]=0;
int m=0;
while(cin>>a)
{b[m]=a;
if(a57) break;//ASCII码
m+=1;}
for(int o=0;o<10;o++)
cout<<b[o];

char mmm;
cin>>mmm;
cout<<mmm;

当你输入abover时肯定跳不出循环,因为,他把abov看成是一个词,当你输完这四个后就又开始循环了,所以当你输er后程序执行到b=getchar();等待你输入后两个字符。明白?
他是以四个字符为一组检测的。例如输入abcdover就会退出,当输入aoverover就不会退出,因为前一次输入是abcd(条件不成立重新开始)over(条件成立结束循环),后面aove(不成立开始下一次循环)rove(条件不成立又开始循环,不退出)。
你可以修改一下
#include<stdio.h>
int main ()
{char a,b,c,d; int i=1,j=2;

for(;i<j;i++,j++)
{{a=getchar();
(在此加入判断语句,如果a=='o' then 继续 如果不等于重新开始循环继续等待输入)
b=getchar();
c=getchar();
d=getchar();
} if(a=='o'&&b=='v'&&c=='e'&&d=='r')
break;}
return 0;
}
原理,当检测到第一个字母是o时继续如果第一个不是o就没有继续执行的必要了重新开始循环即可。
好多年不看了都忘了语句怎么写了~~~~~~~全手打。。。谢谢


平昌县19841098691: 急 我想实现下面的循环 当输入的四个字母为over 循环结束 否则 继续输入 -
照旺赛特: 当你输入abover时肯定跳不出循环,因为,他把abov看成是一个词,当你输完这四个后就又开始循环了,所以当你输er后程序执行到b=getchar();等待你输入后两个字符.明白?他是以四个字符为一组检测的.例如输入abcdover就会退出,...

平昌县19841098691: C中我想用循环在键盘中输入字符串. -
照旺赛特: #include int main() { char *p[20]; for(int i = 0; i scanf("%s", &(p[i])); return 0; }

平昌县19841098691: 执行右面程序框图,若输入的 n 是4,则输出 P 是 A.8 B.5 C.3 D. -
照旺赛特: C 专题:图表型. 分析:根据输入的n是4,然后判定k=1,满足条件kk=1,满足条件kk=2,满足条件kk=3,满足条件kk=4,不满足条件k故选:C 点评:根据流程图计算运行结果是算法这一模块的重要题型,处理的步骤一般为:分析流程图,从流程图中即要分析出计算的类型,又要分析出参与计算的数据建立数学模型,根据第一步分析的结果,选择恰当的数学模型解模.

平昌县19841098691: 不知道问什么,求c++大神帮我解惑,谢谢.
照旺赛特: .... 你这个...当输入2,6时,f(x1)*f(x2)<0 循环继续..所以要求你继续输入 当输入4 5时,f(x1)*f(x2)=0 循环终止,所以会继续下面的计算... 写的就有问题...

平昌县19841098691: java有哪四种循环结构?区别?急!! -
照旺赛特: do while while for 貌似就三种 勉强加一个(for each) 区别的话,.讲讲 do while 和while do...while 是先执行一次循环体再做判断要不要再循环 而while是先判断条件满不满足才执行循环体

平昌县19841098691: 想实现的功能:输入一个四位数,然后用数组存储各个位上的数字 然后输出;大神们帮忙看看问题出在哪
照旺赛特:for(int i=0;i<4;i++)b[i] = a.substring(i, i+1); for(int i=0;i<4;i++) System.out.println(b[i]);

平昌县19841098691: C语言中,我要运行下面这个,代码是循环语句,怎么打这个代码 -
照旺赛特: 如果你要打印1123123412345123456 这个的话用以下代码:#include<stdio.h> int main() { int i,j; for(i=1;i<7;i++) { if(i==2) continue; for(j=1;j<=i;j++) printf("%d",j);printf("\n");}return 0; }如果你要打印112123123412345123456 这个的话用...

平昌县19841098691: C++如何实现输入一个数字,系统输出以这个数字为个数的大写字母顺序.比如输入5,输出A,B,C,D,E.急!! -
照旺赛特: 语言都忘得差不多了.数字不能超过26吧,最简单的办法.26个case.或者用循环来解决,数字j作为循环次数.for(i=0;i<j;i++) cout<<A+i; 数据类型转换我不记得了,只是个思路.

平昌县19841098691: 我想用JAVA代码实现循环输出以下这段话,求代码如何写? 1 13 135 1357 -
照旺赛特: for(int i=1;i

平昌县19841098691: 急求题目分析 输入4*4的数组,编写程序实现: -
照旺赛特: 4*4数组,对角线上的数有规律:第一行第一个数, 第二行第二个数, 第三行第三个数, 第四行第四个数·····(行标和列标相等), 第一行第四个数, 第二行第三个数, 第三行第二个数, 第四行第一个数···(行标和列标之和不变) 这样就可以利用循环来做,求和简单,直接循环相加即可,求积先判断行标和列标再计算,求最大值可以声明一个变量max,让它等于对角线上第一个数,再用max和后面的数比较,若max小则改变其值

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网