【发布时间】:2021-01-22 13:06:46
【问题描述】:
我正在寻找一种从用户端退出循环的方法。
我正在编写一个应该填充数组的代码,直到数组完全填充或直到用户决定他完成为止。我试图在循环中使用 if 语句来做一些事情,但它没有成功,做错了什么。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define SIZE 6
void main() {
printf("enter numbers sorted by their value, from low to high.\n");
int HT7Q1[SIZE], kelet=0, kelettot=0, num2=0;
for (int i = 0; i < SIZE; i++) {
scanf("%d",&kelet);
HT7Q1[i] = kelet;
我正在尝试创建一个关键字或一个字母,当用户使用该关键字或字母时,循环将在此时终止。到目前为止还没有成功,希望得到一些帮助。 谢谢。
【问题讨论】:
-
break关键字允许您退出循环。 -
"a key word or a letter" 如果您在
scanf调用中只允许整数,您将无法检测到关键字或字母。您只能检查scanf是否返回 0 表示它不是整数。 -
我可以有一个 char 类型的变量,在用户使用之前将被忽略?
-
你可以用
fgets替换你的scanf来读取一个字符串。然后检查您的关键字,如果找不到,请使用sscanf从字符串中获取整数。 -
例如,假设我有:
scanf("%c",char);,但在使用 char 类型字符之前代码是未读的。有这样的可能吗?