与C运行时库中的scanf()函数系列相关的问题,它读取和转换格式化数据。 (包括scanf(),sscanf(),fscanf()及其可变等价物。)
我必须编写一个程序,输入是: Spring Miles 独立 谎言 自我 结果将是: 微笑 但我在输入方面遇到了一些问题。我不知道输入的长度,所以它可以是任何长度...
我如何让程序等到下一步,直到我输入(我在c中使用了fgets)
我编写了一个程序,但它不会等待接受我的输入。它需要现成的输入。但我只想一一提供输入。 #包括 无效输入(字符a[]){ printf("%s",...
我的目标是使用 scanf() 函数的属性。我想在输入中抑制“:”,以将小时和分钟值放入各自的变量hours_var和mines_var中。 #包括 我的目标是使用 scanf() 函数的属性。我想抑制输入中的 ':',以将小时和分钟值放入各自的变量 hours_var 和 minutes_var。 #include<stdio.h> #include<string.h> void main() { int hours_var,minutes_var; printf("Whats the time??\n"); scanf("%d*c%d",&hours_var,&minutes_var); printf("%d\n", hours_var); printf("%d\n",minutes_var); } 输出: Whats the time?? 2:24 2 0 我想要 24 在 minutes_var 变量中。我错过了什么?? 正如@mch解释,您在%之前缺少指定字符*c的格式。完整的格式字符串应为 "%d%*c%d"。 请注意,这将匹配(并丢弃)前面的 %d 说明符未使用的 任何 字符,因此诸如 2t24 之类的输入格式将起作用。您可以显式匹配 : 字符,如 %d:%d。 正如@一些程序员家伙指出的那样,应始终检查scanf的返回值,以确保在发生少量转换时,您不会使用不确定的值。 #include <stdio.h> int main(void) { int hours, minutes; printf("What is the time: "); if (2 != scanf("%d:%d", &hours, &minutes)) { fputs("Invalid format.\n", stderr); return 1; } printf("%d\n%d\n", hours, minutes); } What is the time: 2:24 2 24 What is the time: 2t24 Invalid format. 您还可以考虑使用 fgets 读取整行,并使用 sscanf 或使用 POSIX strptime 等函数解析日期和时间格式。
如何从输入中读取两行数字到2个数组,C语言?不知道数量?在 C
例如输入为: 12 23 32 41 45 22 11 43 行以 ' 结尾 ', 我想将 nums 保存到 a[] 和 b[]; a[] = {12, 23, 32, 41, 45} b[] = {22, 11, 43} 重点是我不知道有多少......
我有一个包含特定格式数据的文件,我想从该文件中提取并存储某些数字。在程序中我最初使用 sscanf 来解析和存储文件中的值...
do while 循环只执行 scanf_s(" %d", &variable);一次
当遇到 do while 循环时,我只被要求输入一次,然后就陷入无限循环。有人知道为什么吗? 做 { printf("插入出版年份: ”); ...
我的程序中的 scanf() 和输入缓冲区有问题。 首先我要求用户输入: char 一些变量; printf("请输入文字:"); scanf(" %c",&someVariable); 然后我...
printf/scanf 系列中%n 格式有什么实际应用吗?
int x; printf("你好%n世界 “, &X); printf("%d “,x);
这是我尝试运行的代码 - #包括 int main() { 字符a; 整数b; printf("囚犯姓名 ”); scanf("%c",a); printf("jai 多少年了...
我输入此代码是为了让用户不输入字符串而只输入数字,但是当输入类似 55ST 程序接受 55 的内容时,不要将 55ST 视为字符串 printf("请输入数字...
我正在编写一个带有结构和指针的程序。正如您将在程序中看到的,我询问用户是否想继续添加学生。我想检查他的答案是是还是否。显而易见...
以下代码: #包括 int 主函数(无效){ char buf[80] = "萨拉姆"; const char *fmt = "\"%79[^\"]\""; 整数 n; n = sscanf("\"\...
我在c中发现了一些类似的问题,但解决方案是c特定的。包主 这是代码的最小工作示例 导入“fmt” 函数主() { var 模式字符串 ...
尽管我有 C++ 经验,但我对 C 仍然比较陌生。我正在编写一个程序,它接受用户输入的数组长度和操作变量,并且我试图通过 scanf pr 来完成此任务...
scanf 可以使用“%c”而不是“%s”扫描多个字符,为什么?
这是一段从用户那里接收未知数量字符的代码,直到他输入“;”然后打印一堆有关字符的信息。 我的问题是为什么要扫描字符
我编写了一段代码,可以轻松地以某种格式写入文件结构。 但当我读回这些信息时,我完全失败了。这是代码: const char *USER_INFO_OUT = "(%s...
我试图在 while 循环中继续读取文件。该循环调用另一个函数,该函数获取文件作为参数,读取它并返回读取的内容。然而第一个函数总是调用第二个函数...
scanf() 在读取第三个取消引用的整数时使我的程序崩溃。我该如何解决这个问题?
好的,这是相关代码: int main(int argc, char *argv[]) { int *v1、*v2、*v3; printf("请输入三个整数:"); scanf("%d %d %d", v1, v2, v3); 打印(...
scanf() 在读取第三个取消引用的整数时使我的程序崩溃。我该如何解决这个问题?
/* 好的,这是相关代码 */ 整数 main(int argc, char *argv[]) { int *v1、*v2、*v3; printf("请输入三个整数:"); scanf("%d %d %d", v1, v2, v3);