今天没有思维导图,今天的内容如题目所示。
一、结构体
结构体是c语言中特别重要的知识点,结构体使得c语言有能力描述复杂类型。 比如描述学生。学生包含:名字+年龄+性别+学号+成绩这几项信息。 这里只能使用结构体来描述了。
#include <stdio.h>
struct Student
{
char name[20]; //名字
int age; //年龄
char sex[5]; //性别
char id[15]; //学号
int score; //成绩
};
int main()
{
struct Student s = { "张三","20","男","10086","0" };
printf("1:%s %d %s %d %d\n", s.name, s.age, s.sex, s.id, s.score);
struct Student* ps = &s;
printf("2:%s %d %s %d %d\n", (*ps).name, (*ps).age, (*ps).sex, (*ps).id, (*ps).id, (*ps).score);
printf("3:%s %d %s %d %d\n", ps->name,ps->age,ps->sex,ps->id,ps->score);
return 0;
}
C语言的结构体相当于Java中的类,用struct来定义,命名采用大驼峰的方式,如:Student,MicrosoftWindows等
这些语句的输出都一样:
二、If else
C语言是结构化的程序设计语言!结构有: 顺序结构 选择结构 循环结构
代码如下:
#include <stdio.h>
int main()
{
int age = 20;
if (age >= 18)
{
printf("成年\n");
}
else
{
printf("未成年\n");
printf("不能自由打游戏\n");
}
return 0;
}
语法结构为:
if (判断句1)
{
语句1;
}
if (判断句2)
{
语句2;
}
else
{
语句3;
}
再来看多分支语句
代码如下:
#include <stdio.h>
int main()
{
int age = 65;
if (age < 18)
{
printf("少年\n");
}
else if (age >= 18 && age < 26)
{
printf("青年\n");
}
else if (age >= 26 && age < 40)
{
printf("壮年\n");
}
else if (age >= 40 && age < 60)
{
printf("中年\n");
}
else if (age >= 60 && age < 100)
{
printf("老年\n");
}
else
{
printf("神仙\n");
}
return 0;
}
代码语法简单,不过多赘述
再看一段代码:
#include <stdio.h>
int main()
{
int a = 0;
int b = 2;
if (a == 1)
if (b == 2)
printf("hehe\n");
else
printf("haha\n");
return 0;
}
输出结果为:
是不是以为会输出haha,no!因为else会自动匹配最近的if,而非对齐的if,所以其明了的形式是:
#include <stdio.h>
int main()
{
int a = 0;
int b = 2;
if (a == 1)
{
if (b == 2)
{
printf("hehe\n");
}
else
{
printf("haha\n");
}
}
return 0;
}
所以说,要养成良好的代码习惯。
OK今天到这里
相关代码我会放在我的码云上,欢迎交流与学习:C语言学习之路: C语言学习当中做的相关代码 - Gitee.com