Day2
原创
©著作权归作者所有:来自51CTO博客作者wx6396081c7d893的原创作品,请联系作者获取转载授权,否则将追究法律责任
悬空else
#include <stdio.h>
int main()
{
int a = 0;
int b = 2;
if(a == 1)
if(b == 2)
printf("hehe\n");
else
printf("haha\n");
return o;
}
//什么都不输出
#include <stdio.h>
int main()
{
int a = 0;
int b = 2;
if(a == 1)
{
if(b == 2)
printf("hehe\n");
}
else
printf("haha\n");
return o;
}//修改后可以输出haha
- 输入缓存区造出的错误
- 代码while ((ch = getchar()) != '\n'){ ;}的作用
int main()
{
int ret = 0;
int ch = 0;
char password[20] = { 0 };
printf("请输入密码:>");
scanf_s("%s", password, 20);
//缓存区还剩一个'\n'
while ((ch = getchar()) != '\n')
{
;
}
//while循环作用是清空输入缓存区
printf("请确认(Y/N); >");
ret = getchar();
if (ret == 'Y')
{
printf("确认成功\n");
}
else
{
printf("放弃确认\n");
}
return 0;
}
int main()
{
int i = 0;
for(i=1 ; i<=10; i++)
{
if(i == 5)
continue;
printf("%d ", i) ;
}
return 0;
}
//输出结果为1 2 3 4
运行结果:
int main()
{
int i = 1;
while(i<=10)
{
if(i == 5)
continue;
printf("%d ", i) ;
i++;
}
return 0;
}
//continue跳过i++,导致死循环
运行结果:
1.不可在for循环体内修改循环变量,防止 for循环失去控制。
⒉.建议for语句的循环控制变量的取值采用“前闭后开区间"写法。
即
,而不是
- 死循环
for(;;)
{
...;
}//for循环;;中的内容可以省略,但没必要,除了死循环。
- x,y
int x,y;
for (x = 0, y = 0; x<2 && y<5 ; ++X, y++)
{
printf("x \n");
}