重新学习C语言day03
一、指针1、内存
内存是电脑上特别重要的存储器,计算机中所有程序的运行都是在内存中进行的,为了有效地使用内存,就把内存划分成一个个小小的内存单元,每个内存单元的大小是一个字节,为了能够有效地访问到内存地每个单元,就给内存单元进行了编号,这些编号称为内存单元的地址。
专门存放地址的变量-->指针变量
指针变量的大小:4 byte(32位)或8 byte(64位)
打印指针:%p
int a = 10;
int *p = &a; //*:定义指针变量
*p = 20; //*:解引用操作符/间接引用操作符二、结构体
1、创建一个简单的结构体变量
#include <stdio.h>
//创建一个结构体类型
struct Human
{
char name;
short age;
};
int main()
{
//利用结构体类型创建一个该类型的结构体变量
struct Human ren = {"xiaoma",19};
printf("姓名:%s\n",ren.name);
printf("年龄:%d\n",ren.age);
return 0;
}2、利用结构体类型变量访问数据
struct Human* zz = &ren;
//两种方法: .和->
printf("姓名:%s\n年龄:%d\n",(*zz).name,(*zz).age); //结构体变量.成员
printf("姓名:%s\n年龄:%d\n",zz->name,zz->age); //结构体指针->成员tips: 1、 . 也可作为结构体成员访问操作符
printf("姓名:%s\n年龄:%d\n",ren.name,ren.age);2、 用strcpy函数给数组重命名(需要导入头文件string.h)
strcpy(ren.name,"feiren");三、分支和循环
如果条件成立,要执行多条语句,应该使用代码块,即使用{}。
else和同一个代码块中的前面的且未曾配对的最近的if配对
1、分支语句(if、switch)
if语句:
if(表达式)
语句;if(表达式)
语句1;
else
语句2;if(表达式1)
语句1;
else if(表达式2)
语句2;
else
语句3;switch语句:常用来判断多分支语句
switch (整型表达式)
{
语句项; //一些case语句
}#include <stdio.h>
int main()
{
int day = 0;
scanf("%d",&day);
switch (day)
{
case 1:
printf("星期一");
break;
case 2:
printf("星期二");
break;
case 3:
printf("星期三");
break;
case 4:
printf("星期四");
break;
case 5:
printf("星期五");
break;
case 6:
printf("星期六");
break;
case 7:
printf("星期七");
break;
default:
printf("输入错误");
break;
}
return 0;
}//当输出语句相同时,可以只写一个输出语句。
#include <stdio.h>
int main()
{
int day = 0;
scanf("%d",&day);
switch (day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("工作日");
break;
case 6:
case 7:
printf("休息日");
break;
default:
printf("输入错误");
break;
}
return 0;
}tips:
常量和变量判断是否相等,常量在左变量在右。 --> 避免因为混淆=和==导致不必要的错误
switch后跟整型表达式
default语句用来处理非法状况
switch语句提供嵌套使用
2、循环语句(while、for、do while)
while语句
whlie(表达式)
循环语句;while语句执行的流程:
#include <stdio.h>
int main()
{
int i = 0;
while (i<10)
{
printf("%d",i);
i++;
}
return 0;
}//continue语句用于终止本次循环,跳回到判断语句
#include <stdio.h>
int main()
{
int ch = 0;
//ctrl + z
//EOF: end of file --> -1
while ((ch = getchar() )!= EOF)
{
putchar(ch);
}
return 0;
}3、goto语句
文档来源:51CTO技术博客https://blog.51cto.com/u_15281500/3215420
页:
[1]