初识结构体、分支及循环
#define _CRT_SECURE_NO_WARNINGS 1
1、struct 结构体关键字 --描述复杂对象--我们自己创造出来的类型
#include <string.h>
#include <stdio.h>
struct Book //创建一个结构体类型 --- {}描述结构体内在属性 -- "." 结构体变量.成员 -- "->"结构体指针 -> 成员
{
char name[20]; //C语言程序设计
short price; //55
};
int main()
{
struct Book b1 = { "C语言程序设计" ,55}; //利用结构体类型--创建一个该类型的结构体变量
printf("书名: %s\n", b1.name);
printf("价格: %d元\n", b1.price);
b1.price = 15;
printf("修改后的价格:%d元\n", b1.price);
strcpy(b1.name,"C++"); //strcpy-string copy--字符串拷贝--库函数--string.h
printf("修改后的书名: %s\n", b1.name);
return 0;
}
int main()
{
struct Book b1 = { "C语言程序设计", 55 };
struct Book* pb = &b1; //struct Book*的指针类型指向b1赋值给变量pb;
//利用pb打印出书名和价格
printf("书名: %s\n", (*pb).name);
printf("价格: %d\n", (*pb).price);
printf("书名: %s\n", pb->name);
printf("价格: %d\n", pb->price);
return 0;
}
2、分支语句和循环语句 --C语言中由一个分号“;”隔开的就是一条语句。比如 :printf("hehe");
C语言是一门结构化的程序设计语言
1、顺序结构
2、选择结构
3、循环结构
2.1 分支语句 if
if语法结构 1:
/* if(表达式) ---表达式为真,执行语句,否则不执行
语句;
if(表达式) ---表达式为真,执行语句1,否则不执行
语句1;
else ---以上都为假,执行语句2
语句2;
*/
if语法结构 2:
/* if(表达式) ---表达式为真,执行语句,否则不执行
语句;
else if(表达式) ---表达式为真,执行语句1,否则不执行
语句1;
else ---以上都为假,执行语句2
语句2;
*/
例:
int main()
{
int age = 9;
if (age < 18)
{ //---大括号表示一个代码块,可以执行多行语句
printf("未成年\n");
printf("不能谈恋爱\n");
}
else if (age<28 && age>=18)
printf("青年\n");
else if (age >= 28 && age < 50)
printf("壮年\n");
else if (age >= 50 && age < 90)
printf("老年\n");
else
printf("老不死\n");
return 0;
}
int main()
{
int a = 0;
int b = 2;
if (a == 1) // = 赋值 == 判断相等
if (b==2)
printf("hehe\n");
else
printf("haha\n"); //无输出内容,else就近匹配原则
return 0;
}
练习:判断一个数是否为奇数
练习:输出1-100之前的奇数
#include <stdio.h>
int main()
{
int a=0;
/*scanf("%d",&a);*/
/*printf("a = %d\n", a);*/
while (a < 100)
{
a++;
int b = a % 2;
if (b == 1)
printf("%d是奇数\n", a);
else
printf("%d不是奇数\n", a);
}
return 0;
}
2.2 分支语句 switch 常用于多分支语句
switch(整形表达式)
/*
{
语句项 -- case 整型常量表达式
}
*/
int main()
{
int day = 0; //必须整型类型的变量
scanf("%d", &day);
switch (day)
{
case 1: //case 整型常量表达式 --case后面不能为变量
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;
default:
printf("输入有误!\n");
break;
}
return 0;
}
int main()
{
int day = 0; //必须整型类型的变量
scanf("%d", &day);
switch (day)
{
case 1: //case 整型常量表达式 --case后面不能为变量
case 2:
case 3:
case 4:
case 5:
printf("工作日\n");
break;
case 6:
case 7:
printf("休息日\n");
break;
default: //default位置没有严格控制,可出现在语句列表中的任何位置.每个switch语句中只能出现一条default子句
printf("输入有误!\n");
break;
}
return 0;
}
练习
int main()
{
int n = 1;
int m = 2;
switch (n)
{
case 1:m++; //m = 3
case 2:n++; //n = 2
case 3:
switch (n){
case 1:n++;
case 2:m++; n++;
break;//m = 4,n =3
}
case 4:m++; //m = 5
break;
default:
break;
}
printf("m=%d,n=%d\n", m, n);
return 0;
}
3.循环语句
3.1 while
/*
while(表达式) 表达式为真,执行循环语句
循环语句;
*/
3.1.1 break ---while中的break是用于永久终止循环
int main()
{
int i = 1;
while (i < 11)
{
if (i == 5)
break; //不执行后循环内后面语句,直接停止后期的所有循环,终止循环
printf("%d\n", i);
i++; // 1,2,3,4
}
return 0;
}
3.1.2 continute --用于终止本次循环,本次循环中continute后面的代码不会再执行,
直接跳转到while语句的判断部分,进行下一次循环的入口判断。
int main()
{
int i = 0;
while (i < 10)
{
i++;
if (i == 5)
continue; //不执行后面语句,直接跳到while循环再判断
printf("%d\n", i); //1,2,3,4,6,7,8,9,10
}
return 0;
}
练习
int main()
{
int ch = 0;
//ctrl + z
//EOF --end of file -> -1
while((ch=getchar()) != EOF) //getchar()是获取输入字符的函数
{
putchar(ch); //打印getchaer()输入的字符 ,等同于printf("%c\n,ch);
}
return 0;
}
初识结构体、分支及循环相关推荐
- python的两种循环结构_python分支和循环结构
Python Python开发 Python语言 python分支和循环结构 1.分支结构 1.1应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构. ...
- 初识结构体之座机电话号码
试题描述 请定义一个表示电话号码的结构体类型. 电话号码包含区号(最多4位)和区内电话号码(最多8位).在一个区内的电话号码之间互相拨号时,不拨区号,否则必须先拨区号. 在主函数中,输入任意两个电话号 ...
- 【C语言趣味教程】typedef 真爽不爽不要玩 | 初识结构体
前言: 本篇文章是一次大胆的尝试,我想试着改变我那枯燥不堪的文笔,试着能不能幽默风趣地讲解知识点.如果效果好的话,我会进一步尝试!希望大家喜欢! 学习结构体之前,我们先来讲讲 非常
- 【软件测试】结构化分支和循环语句的白盒测试
文章目录 黑盒测试与白盒测试 分支语句的白盒测试 测试用例设计方法 举例 画流程图 设计语句覆盖测试用例 设计分支覆盖测试用例 设计路径覆盖测试用例 循环语句的白盒测试 简单循环 嵌套循环 连锁循环 ...
- 【结构体】 结构体引用、结构体数组指针、包含结构的结构体
目录 一.概念.变量的定义 初识结构体 结构体变量的定义.引用结构体类型的初始化 二.结构体的数组 认识结构体数组 初始化结构体数组 三.结构体指针 初识结构体指针 指向结构体数组的指针 结构体作为函 ...
- 厦门理工学院c语言实验报告5,厦门理工学院 C语言报告实验8 - 结构体
<C语言程序设计>实验报告 实验序号:8 实验项目名称:结构体 学 号 实验地点 315 姓 名 指导教师 林仙丽 专业.班级 实验时间 网络工程 2012年12月26日 一.实验目的及要 ...
- C语言结构体(入门)
目录 初识结构体 我们为什么要使用结构体 结构体的声明 注意事项 创建结构体变量 匿名结构体 结构体自引用 typedef重命名 结构体初始化 注意事项 打印结构体 结构体包含另一结构体的初始化 初识 ...
- c 结构体在声明时赋值_Java基础知识 初识Java 循环结构进阶 数组 数据类型 各种运算符...
今天给大家带来的是初级Java基础部分的知识:包括初始Java.变量.常量.数据类型.运算符.各种选择结构.循环结构.数组等Java的基础语法部分!最后还有****循环结构的进阶****,步骤超详细, ...
- C语言笔记含源码(变量、输入输出、分支、循环、函数、数组、指针、字符串、结构体)小总结
文章目录 一.变量与输入输出 二.分支语句 三.循环 四.函数 五.数组 六.指针 七.字符串 八.结构体 一.变量与输入输出 定义变量需要:类型.变量名.变量值(可有可无) #include < ...
最新文章
- SQL语句汇总(三)——聚合函数、分组、子查询及组合查询
- dependencies与dependencyManagement的区(转自:http://blog.csdn.net/liutengteng130/article/details/46991829)
- Unity-Animator深入系列---控制IK
- [USACO13JAN] Cow Lineup (单调队列,尺取法)
- 集成CDI和WebSockets
- Dockerfile构建python 运行项目运行环境
- 有没有人带?这些都是学习生信的一大助力!
- 计算机专业英语课后答案北京理工大学,计算机专业英语
- wpf treeview使用expanded事件出错的问题
- html5画电池状态,JavaScript里获取电池状态的方法
- 【CodeForces 1260D --- A Game with Traps】二分
- html链接打开word文档,一招教你在Word文档中创建超链接打开其他文件
- 边境的悍匪—机器学习实战:第十五章 使用CNN和RNN处理序列
- Delphi好书推荐
- CentOS 7 中 pptpd安装
- 一道小学题,解答了我与学霸的差距
- 周金涛:人生就是一次康波
- 教育培训行业现状分析 教育培训行业的基本发展模式、教育培训行业的教学管理现状、教育培训业的未来发展趋势 学大、学而思、新东方为主要案例...
- 打开日志管理的潘多拉盒子
- 笔记本电脑相关术语详解
热门文章
- 易优cms海报画册印刷设计公司网站模板源码 带手机端
- SQL SERVER的quotename函数
- MYSQL数据库字段关联_MySQL数据库 字段操作 多表关系(更新中...)
- 01编写10个线程,第一个线程从1加到10,第二个线程从11加20…第十个线程从91加到100,最后再把10个线程结果相加。
- ABAP项目砖家之旅-语法和开发对象篇
- 济南好吃的,我要吃遍
- 安徽农村信用社招聘备考:文秘专业考试
- 2019年1月Android手机性能榜,【排行】2021年1月Android手机性能榜单:iQOO 7力压小米11...
- 点成分享| 空气卫生的重要性和病毒传播方式
- oracle中row_number用法,深入探讨:oracle中row_number() over()分析函数用法