c语言程序的框架以及内容
目录
一.一个c语言程序大体框架由哪几部分组成
二.认识c语言
数据类型
变量和常量
转义字符
语句(循环语句和选择语句等六种语句)
函数——(大都由圆括号组成,花括号代表函数的开始和结束)
数组
操作符
常见关键字
指针
结构体
什么是c语言程序?
一.一个c语言程序大体框架由哪几部分组成
#include |
预处理器指令 |
int main() |
C语言中的主体 |
function a() |
语句(函数构造块) |
function b() |
语句(函数构造快) |
语句种类 |
|
二.认识c语言
数据类型
- int 占用4个字节的内存 整形 —— %1d占用一个变量
- short 占用2个字节的内存 短整型
- char 占用1个字节的内存 字符数据类型 ——%c
- long 占用4个字节的内存 长整型
- long long 占用8个字节的内存 更长的整形
- float 占用4个字节的内存 单精度浮点数 ——%.1lf 保留一位小数
- double 占用8个字节的内存 双精度浮点数
变量和常量
局部变量和全局变量,局部变量优先
- 字面常量
- const 修饰的常变量
- #define 定义的标识符常量
- 枚举常量
转义字符
- \? 主要为了防止三字母词
- \'
- \"
- \\ 反斜杠
- \a 警告蜂鸣
- \b 退格符
- \f 进纸符
- \n 换行
- \r 回车
- \t 水平制表符
- \v 垂直
- \ddd 八进制数字
- \xdd 2个十六进制数字
注释
语句(循环语句和选择语句等六种语句)
函数——(大都由圆括号组成,花括号代表函数的开始和结束)
例如:主函数 int main()等等,不仅如此,函数也可以创建和被调用,常用来调用代码较多的函数 体。
数组
char arr2[这里为有几个元素]={这里为存放的元素}注意存放的元素可以为任何类型但是都是相同类型,并且下标是从0开始
例如:
#include <stdio.h>
int main()
{int arr[5]={1,2,3,4,5};printf("%d",arr[4]);return 0;}
这样我们就打印出了一个5
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{char* arr[] = { "a","b","c" };printf("%s", arr[0]);return 0;}
这样就打印了一个a
char arr2[]={"a","b","c"}没有0所以他会一直检索 随机找到/0,所以他的字符长度是随机的
char arr1[]="abc" 这个是默认有/0
操作符
算术操作符 + - * / %
移位操作符
>> << (按照二进制移位)
位操作符
& ^ |
赋值操作符
= +=(相当于i=i+1) -= *= /= &= |= >>= <<=
单目操作符
!逻辑反 常见!=为不等于
- 负值
+ 正值
& 取地址
sizeof 计算操作数的类型长度(以字节为单位)
++ 前置 b=++a(相等于a=a+1),先a自身++,再使用. 后置++ ,b=a++,先使用(也就是赋值 给b),再a自身++(赋值后a自增)
-- 同理
条件操作符
exp ?exp2:exp3(m=(a>b?a:b)) 如果为真表达式2计算为假则表达式3计算
exp为表达式
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{int a = 0, b = 0;scanf("%d %d", &a, & b);if(a>b? printf("%d", a) : printf("%d", b))return 0;}
逗号表达式
例子d=(a=b-3,b=a+c,c=a-b,a=c+3)从左向右依次计算,但是最后结果以最后表达式为主
下标引用操作符
arr[10]={1,2,2,4};
printf("%d",arr[3]);这里的3为下标
常见关键字
static 修饰局部变量时候改变了变量的存储类型
普通的局部变量是存储在栈区
被static修饰的变量是存储在静态区的
存储在静态区的变量,出了作用域不会销毁,依然存在,所以静态变量的生命周期就是程序的 生 命周期,程序结束的时候,静态变量才会回收空间
#define 定义常量和宏
1.define 定义标识符常量
#define MAX 1000
2.define定义宏
#define ADD(x, y) ((x)+(y)) 最后一个圆括号为内容 中间是圆括号的宏的名字
注意宏和函数的区别
函数的参数有具体的类型,而宏没有,宏的内容主要在最后一个括号内
指针
指针变量 —— 简单描述为 类型* 变量 = &变量
#include <stdio.h>
int main()
{int a = 0;int* aa = &a;printf("%d", *aa = 1);return 0;
}
由上看出是输出1,int* aa = &a 是解引用符号指向int从而找到a的地址,
而*aa是找到a这个变量相当于 a=1,也就是把1赋值给*aa(a),从而输出a
注意数据在内存中是倒着放的 (涉及到原码,反码,补码)
原码就是二进制位,反码就是原码取反,补码就是反码加1
其中的缘由到指针时再去细学
指针变量是4字节(32位)和8字节(64位)——(基本不会改变)
指针变量与函数
void test(double* pd)
{
*pd=5.6;
}
test(&d) 把这个&d传给*pd(指针变量)
结构体
struct 名称 变量
struct stu{}是类型相当于int
c语言程序的框架以及内容相关推荐
- c语言程序只能调试成功一半,c语言程序的调试方法所谓程序调试是指对程序的查错和排错。调试程序一般应经过以下几个步骤:一、先进行人工检查,即静态检查。在写好一个程序以后,不要匆匆忙忙...
c语言程序的调试方法 所谓程序调试是指对程序的查错和排错. 调试程序一般应经过以下几个步骤: 一.先进行人工检查,即静态检查. 在写好一个程序以后,不要匆匆忙忙上机,而应对程序进行人工检查.这一步十分 ...
- 在c语言中调试作用是什么意思,c语言程序调试方法整理
c语言程序的调试方法 所谓程序调试是指对程序的查错和排错. 调试程序一般应经过以下几个步骤: 一.先进行人工检查,即静态检查. 在写好一个程序以后,不要匆匆忙忙上机,而应对程序进行人工检查.这一步十分 ...
- python的flask实现第三方登录怎么写_Python语言的Flask框架应用程序实现使用QQ账号登录的方法...
本文主要向大家介绍了Python语言的Flask框架应用程序实现使用QQ账号登录的方法,希望对大家学习Python语言有所帮助. Flask-OAuthlib是OAuthlib的Flask扩展实现, ...
- 对C语言的程序基本结构框架,C语言的基本框架的.doc
C语言的基本框架的 第1章 C语言的基本框架 上机指导 本节将提供4个实验的指导,通过本节内容的学习和实践,读者可以更好地了解C 语言程序,并熟悉Turbo C 2.0集成环境. [实验1.1] 设计 ...
- Evento 易语言web服务框架 微信小程序 微信支付 微信JSAPI调用
Evento 易语言web服务框架使用说明 前言: 为什么要有这个东西,C/S构架在十多年前就已经开始向主流的B/S构架转型,其中在易语言WEB应用也不泛优秀的例程和应用.官方出了针对IIS开发的IS ...
- PySide是Python语言的Qt框架的一个绑定。PySide支持跨平台和本地GUI应用程序开发,是在Python 2.6、2.7和3.x版本下可用。
PySide是Python语言的Qt框架的一个绑定.PySide支持跨平台和本地GUI应用程序开发,是在Python 2.6.2.7和3.x版本下可用. 在开始使用PySide之前,需要在你的机器上安 ...
- 对c语言和程序设计基础的体会,C语言程序设计基础与应用
<C语言程序设计基础与应用(高等院校计算机教育系列教材)>由刘丽.朱俊东.张航编著,本书内容由浅入深.循序渐进,介绍C语言的基本语法知识和程序设计等内容,同时兼顾了全国计算机等级考试二级C ...
- c语言课设学生管理程序,c语言程序课程设计学生成绩管理程序.doc
c语言程序课程设计学生成绩管理程序 武汉科技大学 二〇一〇~二〇一一学年第一学期 信息科学与工程学院 课程设计报告书 课程名称: C语言课程设计 班 级: 自动化2009级2班 学 号: 姓 名: 指 ...
- 在c语言程序中将数据分为两种,2012年计算机二级C语言考点归纳汇总(一至四章)...
第1章程序设计基本概念考点归纳 1.1 C语言的特点 C语言是近年来非常流行的语言,很多人宁愿放弃已经熟悉的其他语言而改用C语言,其原因是C语言有优于其他语言的一系列特点.下面是C语言的主要特点: ( ...
- c语言程序实际问题,《编程解决问题之程序规划语言(c语言)》.doc
<编程解决问题之程序规划语言(c语言)> <编程解决问题之程序设计语言(c语言)> 课程内容介绍: 本课程主要是介绍如何利用c程序设计语言,编写程序,解决实际问题.目的是提高学 ...
最新文章
- 计算机图形学——三角形网格
- 烦神的斐波那契洛谷-1306-斐波那契公约数
- Tensor2Tensor 踩坑记录
- 常见八种安卓开发报错的方式
- 欢乐纪中某B组赛【2019.1.28】
- ElasticSearch核心基础之聚合
- 请求失败或服务器为及时响应,SQLServer(MSSQLSERVER)请求失败或服务未及时响应,有关详细信息,请参见事件日志或其他的适用的错误日志。...
- Python Text I/O
- 利用Mapinfo工具转地图数据
- python遗传算法求解TSP问题
- 关于csdn登陆提示验证码
- Digispark(ATTINY85) 微型开发板驱动安装与开发环境配置教程
- AI芯片产业生态及竞争格局:英伟达、谷歌、BAT实力拆解对比
- linux密码是什么加密方式,Linux系统的几种加密
- Mybatis Plugin拦截器处理特殊字符串
- xlrd.biffh.XLRDError: Excel xlsx file; not supported 。我也来蹭一下热度~
- 类型转换及类型转换函数
- 【HTML + CSS】如何引入icon图标
- 浅谈即时通讯开发之实时视频直播平台如何开发
- 金融时间序列分析——对收益率序列平稳化处理
热门文章
- 总结openstack nuetron网络架构图
- Vue中用到jeDate日期控件,Vue对象中的值滞后,总是滞后当前选择的值
- 1.SCRT怎么连接Ensp里面的设备???
- 三码合一方法 制作QQ、微信、支付宝收款码合一
- 各厂家服务器存储默认登录信息
- deepin linux字体设置,在deepin系统中如何安装系统字体? - Deepin深度系统用户手册...
- 软件需求工程 高校教学平台 项目可行性报告
- 天天生鲜商品详情页HTML+css
- 微信html5电子相册,维本- 电子相册微信H5模板【h5特效】
- SpringBoot读取JSON文件