scanf相关内容

从 C 中的文本文件中读取 int 值

我有一个包含以下三行的文本文件: 12 5 64 27 9 我可以使用 fscanf 函数读取前 3 个值并将它们存储在 3 个变量中.但我无法阅读其余部分.我尝试使用 fseek 函数,但它仅适用于二进制文件. 请帮我将所有值存储在整数变量中. 解决方案 一个使用 fscanf 的简单解决方案: void read_ints (const char* file_name){F ..
发布时间:2021-12-29 12:36:41 其他开发

while循环中的scanf

在这段代码中,scanf 只工作一次.我做错了什么? #include #include int main(){国际我= 1;如果(!叉()){当我){printf("请输入我");scanf("%d", &i);冲洗(标准输入);fflush(标准输出);}}别的{printf("父\n");}返回(0);} 解决方案 已经推荐你不使用 scanf.如果你觉得你必须使用 scanf,你真的 ..
发布时间:2021-12-26 18:27:39 其他开发

使用 scanf 进行验证检查在循环内不起作用

我正在尝试创建一个函数来检查用户的输入,并让他们在输入错误类型的输入时再试一次. 因此,当我在函数中输入错误的输入时,它会将我置于无限循环中.我能做些什么来修复它? 我只能使用 getchar 和 scanf 进行用户输入. int sizeOfField(){int size,inputCheck,flag=0;而(!标志){inputCheck= scanf(" %d ", &s ..
发布时间:2021-12-26 18:13:05 其他开发

在 while 循环中使用 scanf

对于这个极其简单的问题可能是一个极其简单的答案: 我正在阅读 Pratta 的“C Primer Plus",他一直在使用这个例子 while (scanf("%d", &num) == 1)... == 1 真的有必要吗?似乎可以只写: while (scanf("%d", &num)) 似乎不需要相等性测试,因为 scanf 返回读取的对象数,而 1 将使 while 循环为真. ..
发布时间:2021-12-26 18:07:43 其他开发

在 C 中使用 scanf 在 EOF 退出 while 循环

我正在为我的 C 入门课程编写一些非常小的程序.其中之一要求我读取双精度值,每行一个数字,然后在 EOF 后打印出基本统计信息.这是我的代码段给我带来的问题: double sample[1000000];整数结果;双号;int i = 0;整数计数 = 0;双和 = 0;双和谐= 0;结果 = scanf(" %lf \n", &number);双分钟 = 数字;双最大 = 数字;而(结果!= ..
发布时间:2021-12-26 18:05:36 其他开发

在while循环中使用scanf函数

我正在尝试为编程作业格式化以空格分隔的用户输入. 本质上,输入由任意数量的表达式组成 L integer integer integer 和 C integer integer integer. 例如:L 1 1 5 7 C 4 5 3. 到目前为止,我已经设法根据初始字符提取整数,并且可以使用 scanf 函数遍历字符串: char a;while(scanf("%c" ..
发布时间:2021-12-26 18:03:31 其他开发

While-loop 第二次忽略 scanf

#include int主(){字符循环='y';而(循环!= 'n'){printf("循环?");scanf("%c", &loop);如果(循环!= 'y'){循环='n';}}返回0;} 如果我输入“y",他会重新启动 while 循环,但第二次忽略 scanf 并在此之后结束循环.有人可以帮忙吗? 解决方案 确保 scanf 丢弃换行符.改为: scanf(" %c", &l ..
发布时间:2021-12-26 17:59:57 其他开发

带有 scanf 的程序在 NetBeans 中无法正常工作

我今天安装了 NetBeans 7.0.1 当我尝试在其中执行带有“scanf"的 C 程序时,它给出了奇怪的错误 这是我写的: 它会一直运行,直到我在输出控制台中输入一些内容. 进入后显示printf语句并显示“RUN FAILED" 谁能告诉我我该怎么做才能做到这一点? 解决方案 您的 printf 没有被刷新,因此它在程序结束之前不会显示. 您没有显式地 ..
发布时间:2021-12-26 15:11:19 其他开发

当输入太长时,如何限制C中的scanf函数打印错误?

我想限制 scanf 函数,所以当我输入例如一个 char* 数组 超过 30 个字符时,它不会得到它和我的输出会出错. 我得到了使用 [^n] 或类似内容的提示,但我不明白该怎么做?我知道我可以使用 scanf("%30s"..) 但我不希望输入有效而只是错误. 任何帮助都会很棒. 解决方案 如果你必须使用 scanf 那么我相信你能做的最好的事情就是 ..
发布时间:2021-12-21 18:05:48 其他开发

将 CSV 文件中的值读入变量

我正在尝试编写一段简单的代码来从一个 CSV 文件中读取值,最多 100 个条目到一个结构数组中. CSV 文件的一行示例: 1,Mr,James,Quigley,Director,200000,0 我使用以下代码读入值,但是当我打印出这些值时它们不正确 for(i = 0; i ..
发布时间:2021-12-21 18:02:32 其他开发

在 C 中获取用户输入的最简单方法是什么?

在 C 中似乎有很多方法可以获取用户输入. 需要很少代码的最简单方法是什么? 基本上我需要显示这个: 输入文件名:apple.text 基本上我需要向用户询问文件名.所以我需要一些东西来获取用户将输入的那个词. 解决方案 最简单的“正确"方法可能就是这个,摘自 Bjarne Stroustrup 的论文 将标准 C++ 作为一种新语言学习. (注意:我更改了 Bjar ..
发布时间:2021-12-21 17:58:50 其他开发

get 和 scanf 有什么区别?

如果代码是 scanf("%s\n",message) 对比 gets(message) 有什么区别?似乎他们都得到了消息的输入. 解决方案 [参考您的特定场景] 的基本区别, scanf() 在遇到 whitespace、newline 或 EOF 时结束接受输入p> gets() 将空格视为输入字符串的一部分,并在遇到 newline 或 EOF 时结束输入. ..
发布时间:2021-12-21 17:47:34 其他开发

如何使用scanf读取由空格分隔的数字

我想使用 scanf() 函数读取由空格分隔的数字(整数类型).我已阅读以下内容: C、从单个输入行读取多个数字 (scanf?) 如何读取带有空格的 scanf 这对我帮助不大. 如何读取带有空格作为分隔符的数字.例如我有以下数字作为输入 2 5 7 4 3 8 18 现在我想将这些存储在不同的变量中.请帮忙. 解决方案 我认为默认情况下 scanf 读取的值带有空格 ..
发布时间:2021-12-21 17:47:30 其他开发

格式字符串中的空格 (scanf)

考虑以下代码: #includeint main() {int i=3, j=4;scanf("%d c %d",&i,&j);printf("%d %d",i,j);返回0;} 如果我必须更改变量的值,如果我将 2c3 或 2 c 3 或 2c 3 作为输入,它会起作用.如果我希望用户输入与我想要的相同的模式,我该怎么做意味着如果 %dc%d 那么只有 2c3 是可接受的,而不是 2 c 3 ..
发布时间:2021-12-21 17:44:14 其他开发

如何使用 scanf() 扫描包含空格的字符串?

我想编写一个子程序,用户可以在其中输入他们的评论.我使用 scanf("%s", X) 并让他们输入注释,但它只能存储字符串中空格键之前的单词. 如何解决这个问题,以便将整个句子存储到字符串或文件中? 我的代码如下: FILE *fp;字符注释[100];fp=fopen("comment.txt","a");printf("您可以在我们的系统中输入您的评论或对音乐发表意见:\n") ..
发布时间:2021-12-21 17:39:20 其他开发

scanf(或) printf 中的格式说明符错误

就printf函数而言,我从一些参考资料和实验中了解到以下内容. 当我们尝试使用用于浮点(或)双精度的格式说明符打印整数值时,反之亦然,行为是不可预测的. 但是可以使用 %c 打印与整数值等效的字符.也可以使用 %d 打印字符的 ASCII 值(整数表示). 同样,如果格式说明符和传递给 scanf 的参数不匹配,scanf 的行为是什么.标准是否定义了它? 解决方案 可变参 ..
发布时间:2021-12-21 17:35:01 其他开发

在获取之前在 C. Scanf 中输入.问题

我对 C 很陌生,我在向程序输入数据时遇到了问题. 我的代码: #include #include #include int main(void) {一个;字符 b[20];printf("请输入您的ID:");scanf("%d", &a);printf("请输入您的姓名:");获取(b);printf("---------");printf("姓名:%s", b);系统(“暂停");返 ..
发布时间:2021-12-21 17:33:04 其他开发

从带有空格字符的输入中读取字符串?

我使用的是 Ubuntu,我也使用 Geany 和 CodeBlock 作为我的 IDE.我想要做的是读取一个字符串(如 "Barack Obama")并将其放入一个变量中: #include int main(void){字符名称[100];printf("请输入您的姓名:");scanf("%s", 姓名);printf("你的名字是:%s", name);返回0;} 输出: 输入你的名 ..
发布时间:2021-12-21 17:30:17 其他开发

%ms 和 %s scanf 之间的差异

阅读 scanf 手册我遇到了这一行: 一个可选的“m"字符.这与字符串转换一起使用(%s, %c, %[), 有人可以用简单的例子来解释它,说明在某些情况下这种选项的区别和需要吗? 解决方案 C 标准没有在 scanf() 格式中定义这样的可选字符. GNU lib C 确实以这种方式定义了一个可选的 a 指示符(来自 scanf 的手册页): 一个可选的 a 字 ..
发布时间:2021-12-18 22:54:51 其他开发