大小写转换-利用ASCⅡ
#include <stdio.h>
#include <stdlib.h>
int main() {
char c = 'a'; /*现在是小写字母,要转换为大写字母*/
c = c - 32; /*ASCⅡ码值转换*/
printf("%c\n", c); /* 以字符形式输出 */
return 0;
}
多种数据类型混合运算
类型转换—-浮点型除以浮点型才能求得小数
#include <stdio.h>
#include <stdlib.h>
int main() {
int i = 5;
float j = i / 2; /* j 的值是2.5还是2呢? */
float k = i;
printf("j = %f, k = %f\n", j, k / 2);
return 0;
}
常用的输入与输出函数
- scanf读取标准输入
- 为什么用于解除scanf函数报错的宏定义在头文件?
因为scanf函数的定义在头文件里面
int main() { int i; scanf(“%d”, &i); printf(“i = %d\n”, i); return 0; }
4. scanf函数的作用
1. 首先会主动从缓冲区读取输入,但是按照类型摘取
1. 当约定取整数时,只读整数,但我们输入时,输入的整数是以换行符号结尾的
1. 因此对于两对获取输入与打印而言,如果我们约定摘取字符类型,那么就会导致换行符被当作目标对象被读取,导致我们输入的字符未能读取到;
5. 演示效果


6. code1
```c
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
char c;
int i;
scanf("%d", &i);
printf("i = %d\n", i);
scanf("%c", &c); /* 缓冲区为空,scanf才会阻塞 */
printf("c = %c\n", c);
return 0;
}
int main() { float c; int i; scanf(“%d”, &i); printf(“i = %d\n”, i); scanf(“%f”, &c); / 缓冲区为空,scanf才会阻塞 / printf(“c = %f\n”, c); return 0; }
<a name="ekXlp"></a>
# 例题:如何判断闰年
code
```c
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main() {
int y;
scanf("%d", &y);
if (y % 400 == 0 || (y % 4 == 0 && y % 100 != 0)) {
printf("yes\n");
}
else {
printf("no\n");
}
return 0;
}