if 与 else的使用规则
else 不能单独出现
可以不断进行 else if, 最后才可以是else,语句只会有一个得到执行
if 内部写if 和 else
code
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
int i = 0;
while (scanf("%d", &i) != EOF) {
if (i > 0) {
printf("i is bigger than 0.\n");
}
else {
printf("i is smaller than 0.\n");
}
}
return 0;
}
while 循环 求 1- 100的和
会出现死循环的原因
- while后面加了分号;
- while语句体内没有让表达式趋近于零的条件;
code
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
int i = 1, total = 0;
while (i <= 100) {
total += i;
i++;
}
printf("%d\n", total);
return 0;
}
continue求100以内的奇数
code
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, total;
/* for循环里面有且只能使用两个分号 */
for (i = 1, total = 0; i <= 100; i++) {
if (i % 2 == 0) {
continue;
}
else {
total += i;
}
}
printf("%d\n", total);
return 0;
}
continue和break的区别
continue 语句只结束本次循环,而不是终止整个循环。
break 语句则是结束整个循环过程,不再判断执行循环的条件是否成立。
而且,continue 只能在循环语句中使用,即只能在 for、while 和 do…while 中使用,除此之外 continue 不能在任何语句中使用。
所以,再次强调:continue 不能在 switch 中使用,除非 switch 在循环体中。此时 continue 表示的也是结束循环体的本次循环,跟 switch 也没有关系。
break语句
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, total;
/* for循环里面有且只能使用两个分号 */
for (i = 1, total = 0; i <= 100; i++) {
if (total > 2000) {
break;
}
total += i;
}
printf("total = %d, i = %d\n", total, i);
return 0;
}
作业—-数字位数比对
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
int a, b, tmp;
scanf("%d", &a);
b = 0;
while (a) {
tmp = a % 10;
//printf("%d\n", a % 10);
b = b * 10 + tmp;
a /= 10;
};
if (a = b) {
printf("yes.\n");
}
else {
printf("no.\n");
}
return 0;
}