- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 C 有点陌生,我的任务是编写一个程序来计算 ';' 的次数。已在用户选择的文件中使用。所以我决定用一堆 if 来实现它,当我放下第一个 if 时(只有一个 if),它就起作用了,但是当我添加 else if 段时,它只是吐出第一个 if 的结果(eof 的数字),我没有线索说明为什么会发生这种情况。代码如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
int s = 0;
int ch;
char in;
printf("Choose which file to be opened: inpt , eof or cntr\n");
scanf("%c", &in);
if (in = 'eof')
{
fp = fopen("D:\\programming\\C projects\\kursova PIK 1\\kursova 1\\New folder\\eof.c", "r");
if (fp == NULL)
{
printf("Error opening file");
}
else
{
while (!feof(fp))
{
ch = fgetc(fp);
if (ch == ';')
{
++s;
}
else if (ch == EOF)
break;
}
fclose(fp);
printf("The number of times ';' was used is: %d", s);
}
}
else if (in = 'inpt')
{
fp = fopen("D:\\programming\\C projects\\kursova PIK 1\\kursova 1\\New folder\\inpt.c", "r");
if (fp == NULL)
{
printf("Error opening file");
}
else
{
while (!feof(fp))
{
ch = fgetc(fp);
if (ch == ';')
{
++s;
}
else if (ch == EOF)
break;
}
fclose(fp);
printf("The number of times ';' was used is: %d", s);
}
}
system("pause");
return 0;
}
最佳答案
您无法将 3 个字母的字符串输入到单字符变量中。如果您计划用户输入eof
或类似的内容,您需要声明一个字符数组,例如
char userinput[ 30];
然后输入用户选择
scanf( "%s", userinput);
并将其与字符串进行比较,而不是多字 rune 字:
if( strcmp( userinput, "eof") == 0)
process a file
而不是
if(in == 'eof)
最后,请注意您使用双等号 ==
来比较值。单个 =
是赋值,而不是 C 中的比较。
关于c - 具有 2 个 if 的代码不断给出第一个 if 的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28002430/
如果这不是一个错误,那就是另一个错误。如果不是那样的话,那就是别的东西了。我觉得我的项目已经改变了很多,现在只是试图解决代码签名问题,结果一切都搞砸了。我严格按照说明进行操作,但出现错误,例如当前的“
我不确定是否有一些我不知道的内置变量或规则,或者 make 是否有问题,或者我只是疯了。 对于我的一个项目,我有一个如下的 makefile: CC=g++ CFLAGS=-O3 `libpng-co
我有大约 10 个 div,它们必须不断翻转,每个 div 延迟 3 秒 这个 codrops 链接的最后一个效果是我正在寻找的,但无需单击 div http://tympanus.net/Devel
我如何使用 jQuery 持续运行 PHP 脚本并每秒获取响应,以及将鼠标上的少量数据发送到同一脚本? 我真的必须添加一些随机扩展才能让这么简单的计时器工作吗? 最佳答案 To iterate is
JBoss 4.x EJB 3.0 我见过如下代码(大大简化): @Stateless @TransactionAttribute(TransactionAttributeType.NOT_SUPPO
使用 PHPStorm,我试图忽略每次尝试进行 git 提交时 pop 的 workspace.xml。 我的 .gitignore 看起来像: /.idea/ .idea/workspace.xml
我是一名优秀的程序员,十分优秀!