C基础-01
一、基础概念及代码
0. Visual Studio 的书写前注意
- 初始代码
#define _CRT_SECURE_NO_WARNINGS //解决scanf报错问题
#include <stdio.h> //引用头文件,必须要有这一行
int main() {}
- 多main函数要求时:
一个project多个main函数时,不需要运行的右键-属性-从生成中排除-是
1.符号常量—代码初写
1.符号常量的规则
2.符号常量以及初写代码:
#include <stdio.h> //引用头文件,必须要有这一行
#define PI 3 //定义符号常量 无法赋值
// int 是函数返回值 main是入口函数的函数名
int main() {
printf("Hello world");
return 0;
}
2.进制转换问题
(1)进制基础
十六进制 0-9 A-F (变成前加0x代表16进制)
十进制:0-9
八进制: 0-7
二进制 0 1
(2)单位基础
1位(1bit)(存储了 0 或者1)
1字节(1byte)=8bit
1kb=1024byte
1Mb=1024kb
1Gb=1024Mb
(3)进制转换
十进制到8or 16进制 or 2进制: 除以相应的数,逆顺序取值
二进制转换为8进制或者16进制: 分组去看,然后获取数字
二进制转为10进制
3.基本数据类型—基础
整数类型 int i (4个byte)
浮点型 float f (4个byte)
转义字符
字符类型 char(1个byte) 需要用单引号,不能用双引号 ,字符串以及除了字符类型可以用双引号
如下混合输出输入实例
#define _CRT_SECURE_NO_WARNINGS //解决scanf报错问题
#include <stdio.h>
int main() {
// 混合输入的注意事项:
// 因为scanf在读取 整型 浮点,字符串才会忽略空格,一旦字符的话不会忽略,因此 %c之前有空格应当加空格
int i;
char c;
float f;
scanf("%d %c%f",&i,&c,&f);
printf("i=%d,c=%c,f=%f\n",i,c,f);
//来一个多输出 注意 char是单引号 str是双引号 ,除了char我们一般都用双引号
// 浮点的format输出
// %4.1f 意思是 总共占了四个位置 9 8 . 5 然后小数点后面保持一个位置,这样就会输出 98.5
printf("name=%s,age=%d,sex=%c,score=%4.1f\n", "zhangyujia", 34,'m',98.5);
}
注:
printf 和 scanf 中
%c代表 字符 %f代表浮点制 %d代表以十进制输出整数
4.基本函数(scanf printf)
4.1scanf函数
scanf循环打印代码
#define _CRT_SECURE_NO_WARNINGS //解决scanf报错问题
#include <stdio.h>
int main() {
int a,ret;
// rewind(stdin) 清空标准输入缓冲区,那么你输错之后不会循环打印
// 如果你需要退出循环打印 连续输入三次 ctrl Z
while (rewind(stdin), ret = scanf("%d", &a) != EOF) {
printf("a=%d\n", a);
}
}
4.2 scanf函数实现大小写转换思路
ASCii码减去32变为大写字母
#define _CRT_SECURE_NO_WARNINGS //解决scanf报错问题
#include <stdio.h>
int main() {
char c;
while (scanf("%c",&c)!=EOF ) {
if (c!="\n") {
// 从AISCii 码的角度上来说,一个小写字母变成大写字母减去32
printf("%c",c-32);
}
else{
printf("\n");
}
}
}
4.3 printf函数
浮点制格式输出见上面的混合输出代码
4.4 sizeof
5.运算符问题
重点是关系运算符和逻辑运算符
5.1 关系运算符—判断浮点数是否相等问题
0为假的 其他为真的
5.2 逻辑运算符—非运算
只有0 和1
写在最后:
研一刚结束,论文中了1篇,马上要中1篇,但是—导师放养。。。。。
尽管我很想走学术,但是目前真的是无事可做,只能转码。