假设我有一个 while 循环,它会在条件“isDone”设置为 true 时结束。在 while 循环内,我要求用户输入一个整数以继续循环或输入一个字符以结束它(通过将“isDone”设置为 true)。
我如何只使用一个 scanf() 来解决这个问题?
最佳答案
上面的建议是很好的建议:您最好根本不使用 scanf()
。使用类似 fgets() 的东西可能会更好相反,然后解析字符串。或者更好,只需使用 getchar() .
但是无论如何...
请记住,在 C 语言中,“字符”是 一个整数。所以只需 scanf("%c", &i)
并检查您是否有“整数”(isdigit())或“字符”(isalpha())。
关于c - 整数或字符的 scanf(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49725845/