Bootstrap

四、初识C语言(4)

1.作业:static修饰局部变量

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
//作业:static修饰局部变量
int sum (int a)
{
	int c = 0;
	static int b = 3;
	c += 1;
	b += 2;
	return (a+b+c);
}
int main()
{
	int i = 0;
	int a = 2;
	for (i=0;i<5;i++)
	{
		printf ("%d\n",sum(a));
	}
	return 0;
}

2.结构体  struct

结构体:自己创建的一种描述复杂对象的一种类型 (数据类型)

strcpy:字符串拷贝,字符串数组内容修改。  <string.h>

例:strcpy(a,"b");//把b字符串数组的内容给a

(结构体变量).成员                    (*结构体变量的指针变量).成员

结构体变量的指针变量 -> 成员

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
//结构体
struct Book	//创建了一个结构体类型,相当于“图纸”,不占“土地”,不占内存空间。
{
	char name[20];
	short price;
};

int main()
{
	struct Book b1={"高数",88};	//利用该结构体类型创建了一个该类型的结构体变量,相当于“房子”,占“土地”,占内存空间。
	struct Book* p=&b1;		//定义该结构体变量的指针变量

	printf("书名:%s\n",b1.name);
	printf("价格:%d元\n",b1.price);
	//修改结构体内容
	b1.price=100;
	strcpy(b1.name,"C++");

	printf("修改后的书名为:%s\n",b1.name);
	printf("修改后的价格为:%d元\n",b1.price);

	printf("内容指向:\n");
	printf("书名:%s\n",(*p).name);
	printf("价格:%d元\n",(*p).price);

	printf("地址指向:\n");
	printf("书名:%s\n",p->name);
	printf("价格:%d元\n",p->price);

	return 0;
} 

;