数据类型
1. 常量与变量(#include<stdio.h>)
# include <stdio.h>
# define PI 3
int main ( )
{
int a = 3 ;
a = 5 ;
printf ( "%d\n" , PI) ;
}
2. scanf使用
#define _CRT_SECURE_NO_WARNINGS 解决scanf编译报错问题
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int a, b;
scanf ( "%d%d" , & a, & b) ;
printf ( "a = %d, b = %d" , a, b) ;
}
3. 进制变换
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int i = 0x7b ;
printf ( "%d\n" , i) ;
}
4. 浮点型和字符型
# include <stdio.h>
int main ( )
{
float f = 1.234 ;
printf ( "%f\n" , f) ;
char c = 'a' ;
printf ( "%c\n" , c) ;
}
5. 字符型大小写转换
# include <stdio.h>
int main ( )
{
char c = 'a' ;
c = c - 32 ;
printf ( "%c\n" , c) ;
}
6. 混合运算
# include <stdio.h>
int main ( )
{
int i = 5 ;
float j = i / 2 ;
float k = ( float ) i / 2 ;
printf ( "j = %f,k = %f\n" , j, k) ;
}
7. scanf读取标准输入缓冲区原理
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int i, j;
char c;
float f;
scanf ( "%d,%c" , & i, & c) ;
printf ( "i = %d\n" , i) ;
printf ( "c = %c\n" , c) ;
scanf ( "%d" , & j) ;
printf ( "j = %d\n" , j) ;
scanf ( "%f" , & f) ;
printf ( "f = %f\n" , f) ;
}
8. scanf读取两个整数
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int a, b;
scanf ( "%d %d" , & a, & b) ;
printf ( "%d\n" , a + b) ;
}
9. 判断闰年
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int year;
scanf ( "%d" , & year) ;
if ( year % 400 == 0 || ( year % 4 == 0 && year % 100 != 0 ) )
{
printf ( "yes\n" ) ;
}
else
{
printf ( "no\n" ) ;
}
}
10. scanf循环读数(难点)
EOF表示-1 清空缓冲区,VS2012 fflush(stdin) stdin是标准输入 VS2013-VS2019清空标准输入缓冲区,用rewind 行首输入ctrl+z回车
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int i, ret;
while ( rewind ( stdin ) , ( ret = scanf ( "%d" , & i) != EOF ) )
{
printf ( "i = %d\n" , i) ;
}
return 0 ;
}
11. 循环读取字符(难点)
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
char c;
while ( scanf ( "%c" , & c) != EOF )
{
if ( c != '\n' )
{
printf ( "%c" , c - 32 ) ;
}
else
{
printf ( "\n" ) ;
}
}
}
12. scanf混合输入(%c之前加空格)
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int i;
char c;
float f;
scanf ( "%d %c %f" , & i, & c, & f) ;
printf ( "i = %d,c = %c,f = %f\n" , i, c, f) ;
return 0 ;
}
13. printf使用
# include <stdio.h>
int main ( )
{
printf ( "name = %s,age = %3d,sex = %c,score = %4.1f\n" , "longge" , 34 , 'm' , 98.5 ) ;
}
14. 算术运算
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int a = 4 + 5 * 2 - 6 / 3 + 11 % 4 ;
printf ( "%d\n" , a) ;
scanf ( "%d" , & a) ;
printf ( "a = %d\n" , a) ;
while ( a != 0 )
{
printf ( "%d" , a % 10 ) ;
a = a / 10 ;
}
printf ( "\n" ) ;
}
15. 关系运算
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int a = 8 ;
if ( 3 < a && a < 10 )
{
printf ( "a is right\n" ) ;
}
else
{
printf ( "a is wrong" ) ;
}
float f = 234.56 ;
if ( f - 234.56 > - 0.0001 && f - 234.56 < 0.0001 )
{
printf ( "yes\n" ) ;
}
else
{
printf ( "no\n" ) ;
}
}
16. 自增自减运算
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int i = - 1 ;
int j;
j = i++ > - 1 ;
printf ( "i = %d,j = %d\n" , i, j) ;
printf ( "i的字节数 = %d\n" , sizeof ( i) ) ;
}
17. day3作业
# define _CRT_SECURE_NO_WARNINGS
# include <stdio.h>
int main ( )
{
int a;
scanf ( "%d" , & a) ;
printf ( "%c\n" , a) ;
}