不懂怎么用while 循环或者 do..while循环,把输入错误的提示一直循环,请帮忙修改一下,谢谢!

807254150 2014-01-08 11:42:05
不懂怎么用while 循环或者 do..while循环,把输入错误的提示一直循环,请帮忙修改一下,谢谢!
static void Main(string[] args)
{

Hashtable hshtb = new Hashtable();
hshtb.Add("010", "北京市");
hshtb.Add("020", "广州市");

Console.Write("输入要查找的城市或区号:");
string s = Console.ReadLine();

foreach (DictionaryEntry de in hshtb)
{

string dkey = Convert.ToString(de.Key);
string dvalue = Convert.ToString(de.Value);
if (s.Equals(dkey))
{
Console.Write("您要查找的城市是:" + de.Value);
Console.ReadLine();
break;
}
else if (s.Equals(dvalue))
{
Console.Write("您要查找的区号是:" + de.Key);
Console.ReadLine();
break;
}

//Console.WriteLine("输入有误,请重新输入:");

}
}
...全文
213 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hui211314ddhui 2014-01-10
  • 打赏
  • 举报
回复
引用 4 楼 Frank_Wang_ 的回复:
看代码. [quote=引用 楼主 u011195704 的回复:] 不懂怎么用while 循环或者 do..while循环,把输入错误的提示一直循环,请帮忙修改一下,谢谢! static void Main(string[] args) { Hashtable hshtb = new Hashtable(); hshtb.Add("010", "北京市"); hshtb.Add("020", "广州市"); boolean bFind = false; do { Console.Write("输入要查找的城市或区号:"); string s = Console.ReadLine(); foreach (DictionaryEntry de in hshtb) { string dkey = Convert.ToString(de.Key); string dvalue = Convert.ToString(de.Value); if (s.Equals(dkey)) { Console.Write("您要查找的城市是:" + de.Value); Console.ReadLine(); bFind = true; break; } else if (s.Equals(dvalue)) { Console.Write("您要查找的区号是:" + de.Key); Console.ReadLine(); bFind = true; break; } //Console.WriteLine("输入有误,请重新输入:"); } }while(!bFind) }
[/quote] ++
vipcxj 2014-01-09
  • 打赏
  • 举报
回复
LZ你真是掉渣天,while都还不会用就开始用foreach了
derekrose 2014-01-09
  • 打赏
  • 举报
回复
转到c#那边去吧
赵4老师 2014-01-09
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <conio.h>
int i = 0;
char c;
void main() {
    while (1) {
        printf("\nPlease input a number:");
        fflush(stdout);
        rewind(stdin);
        if (2==scanf("%d%c",&i,&c)) {
            if ('\n'==c) {
                printf("\nThe number is %d.\n", i);
                break;
            }
        }
    }
    printf("Press any key to end ...");
    getch();
}
//
//Please input a number:12a
//
//Please input a number:a
//
//Please input a number:12
//
//The number is 12.
//Press any key to end ...
Frank_Wang_ 2014-01-09
  • 打赏
  • 举报
回复
看代码.
引用 楼主 u011195704 的回复:
不懂怎么用while 循环或者 do..while循环,把输入错误的提示一直循环,请帮忙修改一下,谢谢! static void Main(string[] args) { Hashtable hshtb = new Hashtable(); hshtb.Add("010", "北京市"); hshtb.Add("020", "广州市"); boolean bFind = false; do { Console.Write("输入要查找的城市或区号:"); string s = Console.ReadLine(); foreach (DictionaryEntry de in hshtb) { string dkey = Convert.ToString(de.Key); string dvalue = Convert.ToString(de.Value); if (s.Equals(dkey)) { Console.Write("您要查找的城市是:" + de.Value); Console.ReadLine(); bFind = true; break; } else if (s.Equals(dvalue)) { Console.Write("您要查找的区号是:" + de.Key); Console.ReadLine(); bFind = true; break; } //Console.WriteLine("输入有误,请重新输入:"); } }while(!bFind) }
vipcxj 2014-01-09
  • 打赏
  • 举报
回复
仔细一看,你妈这真是C++吗?
sleeplacker 2014-01-09
  • 打赏
  • 举报
回复
好强大的代码,连我都看不懂

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧