提示用户输入一个正整数,如果错误,则重新输入,可以使用以下的代码来保证用户输入正确:...

double n; //用于保存用户的输入

while(true) // 用于永远无法退出这个循环,除非输入正确
{
  Console.Write("请输入一个正整数:");
  n = int.Parse(Console.ReadLine());
  if(n<=0||n-(int)n!=0)
  {
    Console.Write("输入有误,按回车键后重新输入"); // 提示错误信息
    Console.ReadLine(); // 让程序暂停,等待用户按下回车键
    Console.Clear(); // 控制台清屏
    //后面已没有代码,将进入下一次循环
  }

      else
  {
    break; //用户输入正确,结束无休止的循环
  }
}
//循环结束后,变量n中一定保存的是正整数,否则,他根本无法退出循环
Console.Write("你的输入正整数是:" + n);

转载于:https://www.cnblogs.com/huan123/p/8010553.html

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用下面的代码来完成这个任务: ``` while True: # 输入字符串、填充字符和总长度 input_str = input("输入字符串:") fill_char = input("输入填充字符:") try: total_length = int(input("输入字符串的总长度:")) # 如果输入的是正整数,就退出循环 break except ValueError: # 如果输入的不是正整数,就提示错误重新提示输入 print("输入一个正整数!") # 计算填充的数量 fill_count = total_length - len(input_str) # 如果填充数量为正数,就在字符串两边填充填充字符 if fill_count > 0: # 计算左边填充的数量 left_fill_count = fill_count // 2 # 计算右边填充的数量 right_fill_count = fill_count - left_fill_count # 填充字符串 filled_str = fill_char * left_fill_count + input_str + fill_char * right_fill_count else: # 如果填充数量为0或负数,就直接输出字符串 filled_str = input_str # 输出填充后的字符串 print(filled_str) ``` 这段代码提示用户输入字符串、填充字符和字符串的总长度,如果输入的总长度不是正整数,就会提示错误重新提示输入输入正确后,会计算 ### 回答2: 可以使用以下Python代码实现用户输入字符串、填充字符和要显示的字符串总长度,并输出居中对齐的结果: ```python def center_align(input_str, fill_char, total_length): # 判断总长度是否为正整数 while not str(total_length).isdigit() or total_length <= 0: total_length = input("输入一个正整数作为总长度:") # 居中对齐并用填充字符补齐到总长度 output_str = input_str.center(total_length, fill_char) return output_str # 用户输入 input_str = input("输入一个字符串:") fill_char = input("输入一个用于填充的字符:") total_length = input("输入显示的字符串的总长度:") # 调用函数并输出结果 output_str = center_align(input_str, fill_char, int(total_length)) print("居中对齐的结果是:", output_str) ``` 这段代码首先定义了`center_align()`函数,该函数用于实现字符串的居中对齐操作。然后,用户通过`input()`函数分别输入一个字符串、一个用于填充的字符和要显示的字符串总长度。然后,调用`center_align()`函数传入这些参数,并将结果打印出来。在`center_align()`函数中,使用`center()`函数将输入的字符串居中对齐,并用填充字符补齐到总长度的要求。如果总长度输入的不是正整数,则通过循环提示用户重新输入直至输入正整数。 ### 回答3: 可以使用以下Python代码来实现这个功能: ```python def center_align(): while True: try: # 用户输入字符串、填充字符和总长度 input_string = input("输入字符串:") fill_char = input("输入用于填充的字符:") total_length = int(input("输入字符串的总长度:")) # 判断总长度是否为正整数 if total_length <= 0: print("重新输入一个正整数!") continue # 计算左右两侧需要填充的字符数 padding = total_length - len(input_string) left_padding = padding // 2 right_padding = padding - left_padding # 输出居中对齐的字符串 output_string = fill_char * left_padding + input_string + fill_char * right_padding print("居中对齐的字符串:", output_string) break except ValueError: print("重新输入一个正整数!") center_align() ``` 上述代码使用了一个无限循环,并通过`try-except`块来处理用户可能输入的非正整数的情况。如果用户输入的总长度不是正整数,则会提示重新输入。如果用户输入正确,将计算需要填充的字符数,并分别左右填充,最后输出居中对齐的字符串。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值