指针简单理解
#include<stdio.h>
int main()
{
int a = 10;//申请了4个字节的空间
int* p = &a;
//这里的p是变量它的类型是int*
这*告诉我们p是指针变量
是p指向的对象a的类型int
因为a是int所以p指向它,所以p也是int
*p = 20;
这里的*是操作符*-解引用操作符/间接访问操作符
printf("a=%d\n",a);
return 0;
}
结构体初识
描述复杂对象
名字+身高+年龄+身份号码
书名+作者+出版社+定价
描述复杂对象–结构体–我们自己创造出来的一种类型
#include<stdio.h>
//创建一个结构体类型
struct Book
{
char name[20];//c语言程序设计
short price;//20
};
int main()
{
//利用结构体类型--创建一个该类型的结构体变量
struct Book b1 = {
"c语言程序设计",20};
printf("书名=%s\n",b1.name);
printf("价格=%d\n", b1.price);
b1.price = 15;
//可以修改价格
return 0;
}
结构体指针
strcpy
#define _CRT_SECURE_NO_WARNINGS 1
#include<string.h>
#include<stdio.h>
struct Book
{
char name[20];//c语言程序设计
short price;//55
};
int main()
{
//利用结构体类型-创建一个该类型的结构体变量
struct Book b1 = {
"c语言程序设计",55};
//改变价格,价格是变量
b1.price = 22;
//如何更改书名书名不是变量所以要用到下面的库函数
strcpy(b1.name, "c++");//strcpy-string copy -字符串拷贝-库函数-string.h
struct Book* p = &b1;
//利用p打印出我的书名和价格
//. 用于结构体变量.成员
//-> 结构体指针->成员
printf("%s\n", (*p).name);
printf("%s\n", p->name);
printf("%d\n", (*p).price);
printf("%d\n", p->price);
}
**>分支语句和循环语句
判断1-100内的奇数**
//判断1~100内的奇数
#include<stdio.h>
int main()
{
int i = 0;
while (i <= 100)
{
if (i % 2 == 1)
//判断奇数的算法
printf("%d是奇数\n", i);
i++;
}
return 0;
}
switch case break语句
switch用法一
#include<stdio.h>
int main()
{
int day = 0;
while (1)
{
printf("请输入星期几");
scanf("%d", &day);
switch (day)
{
case 1:
printf("今天是星期一\n");
break;
case 2:
printf("今天是星期二\n");
break;
case 3:
printf("今天是星期三\n");
break;
case 4:
printf("今天是星期四\n");
break;
case 5:
printf("今天是星期五\n");
break;
case 6:
printf("今天是星期六\n");
break;
case 7:
printf("今天是星期日\n");
break;
}
}
return 0;
}
switch用法二
#include<stdio.h>
int main()
{
int day = 0;
printf("请输入星期几\n");
scanf("%d", &day);
switch (day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("工作日\n");
break;
case 6:
case 7:
printf("休息日\n");
break;
default:
printf("输入错误\n");
break;
}
return 0;
}
while循环 break continue
#include<stdio.h>
int main()
{
int i = 1;
while (i <= 10)
{
i++;
if (i == 5)
continue;
//continue继续
//当i=5是遇到continue,continue跳过本次循环后面的代码,在到while(i<10)判断部分接着判断
/*总结continue是用于终止本次循环的,也就是本次循环中continue后边的代码不会再执行,
而是直接跳转到while语句的判断部分,进行下一次循环的入口判断
*/
printf("%d\n", i);
}
return 0;
}
getchar putchar
#include<stdio.h>
int main()
{
//getchar可以接受一个键盘上的字符
int ch = getchar();
putchar(ch);
printf("%c\n", ch);
//putchar输出
return 0;
}
#include<stdio.h>
int main()
{
int ch = 0;
while ((ch = getchar()) != EOF)
//EOF - end of file 它的值是-1 文件结束标志
//想要结束这个循环那就输入ctrl+z 那么getchar就会获取一个EOF来结束循环
{
putchar(ch);
}
return 0;
}