目录
基本语法
分支语句
if…else…
if(条件){//条件为true
执行当前语句块;
}else{ //条件为false
语句块执行;
}
多分支语句 if…else if…else
if(条件1){//条件为true
执行当前语句块;
}else if(条件2){ //条件为true
语句块执行;
}else if(条件3){ //条件为true
语句块执行;
}
else{//不满足上述条件123
语句块执行;
}
switch…case
switch(var){//变量类型:整型 字符 枚举
case 0:语句;break;
case 1:语句;break;
case 2:语句;break;
default:语句;break;
注意变量类型为整型,字符,枚举
例题:输入ABC(abc),打印相对应的成绩
char level;
scanf("%c",&level)
switch(level){
case 'A':
case 'a':printf("100~80");break;
case 'B':
case 'b':printf("80~60");break;
case 'C':
case 'c':printf("60以下");break;
default:printf("输入有误");break;
循环语句
for循环
for(初始化语句;条件判断;迭代){
循环体
}
注意:循环条件满足,执行循环内容,条件不满足,跳出循环执行
//例如
int a=0;
for(int i=0;i<=10;i++){//i是初始条件,i<=10循环条件,i++迭代
a+=i;//循环体内容
}
while循环
初始化语句;
while(条件判断){
循环体;
迭代;
}
注意:循环条件满足,执行循环内容,条件不满足,跳出循环执行
do…while循环
初始化语句;
do{
循环体;
迭代;
}while(循环条件);
先执行一遍循环体,后进行条件判断。条件满足继续循环体,不满足跳出循环,执行后续代码
简单练习
判断字符属于何种字符函数 两种方法
#include <stdio.h>
#include <ctype.h>
//islower(value): 英文小写字符 tolower转换成小写字母
//isupper(value): 英文大写字符 toupper转换成大写字母
//isalnum()是否是字母或者是数字
int main() {
char value;
int flag = 1;
while (flag==1)
{
scanf("%c", &value);
if (isalpha(value)) {
printf("英文字符\n");
}
else if (isdigit(value)) {
printf("数字字符\n");
}
else if (isblank(value)) {
printf("空格字符\n");
}
else {
printf("其他字符\n");
}
printf("继续测试请按1,结束测试请按0\n");
scanf("%d", &flag);
getchar();//吃掉enter
}
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
char value;
int flag = 1;
while (flag==1)
{
scanf("%c", &value);
if (value >= 'a' && value <= 'z' || value >= 'A' && value <= 'Z') {
printf("英文字符\n");
}
else if (value >= '0' && value <= '9') {
printf("数字字符\n");
}
else if (value == ' ') {
printf("空格字符\n");
}
else {
printf("其他字符\n");
}
printf("继续测试请按1,结束测试请按0\n");
scanf("%d", &flag);
getchar();
}
return 0;
}
闰年问题
输出1900——2000年中是闰年的年份,符合下面两个条件之一的年份是闰年:①能被4整除但不能被100整除;②能被100整除且能被400整除。
编程实现
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <ctype.h>
bool isrun(int year) {
if (year % 4 == 0 && year % 100 != 0
|| year % 100 == 0 && year % 400 == 0) {
return true;
}
else {
return false;
}
}
int main() {
int year;
for (int i = 1900; i <= 2000; i++) {
if (isrun(i))printf("%d ", i);
}
return 0;
}
三个整型中最大值
从键盘输入3个整型,输出三个整型中最大值
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
int a, b, c;
scanf("%d%d%d",&a,&b,&c);
//先挑选两个数较大者,较大者跟第三个数比较 最大
//int max = a > b ? a : b > c ? a > b ? a : b : c;
//printf("%d最大值\n",max); //不建议
//int max = a; //max 保存较大值
//if (max < b) {
// max = b;
//}
//if (max < c) {
// max = c;
//}
//printf("%d是最大值\n",max);
int max = a > b ? a : b;
max = max > c ? max : c;
printf("%d最大值\n",max); //建议选择
return 0;
}