C语言学习笔记1.docx
- 文档编号:11639849
- 上传时间:2023-03-29
- 格式:DOCX
- 页数:19
- 大小:22.46KB
C语言学习笔记1.docx
《C语言学习笔记1.docx》由会员分享,可在线阅读,更多相关《C语言学习笔记1.docx(19页珍藏版)》请在冰豆网上搜索。
C语言学习笔记1
VC++6.0学习笔记
进入方法:
1、建立一个工程
文件——新建——(选择)工程——(选择)Win32ConsoleApplication——位置(选择存贮的位置)——工程名称(要用字母、英文、或拼音都可以)——一路确定到完成
2、建立一个文件
文件——新建——(选择)文件——(选择)C++SourceFile——文件名(要用字母、英文、或拼音都可以)——确定
一、一个简单的程序:
#include
main()
{
printf("Helloeveryone!
!
\n");(\n表示换行)
}
注意:
每写完一个程序必需先编译(快捷键是:
ctrl+F7)然后再输出(快捷键是ctrl+F5)
程序:
连续执行的一条条指令的集合称为“程序”
对于计算机来说,它不能识别由高级语言编写的程序,它只能接受和处理由0和1的代码构成的二进制指令或数据,由于这种形式的指令是面向机器的,因此也被称为“机器语言”所以所有的高级语言编写的程序都要经过编译,编译成二进制代码,这种具有翻译功能的软件称为编译程序。
1.1.2程序设计
1、确定数据结构:
就是数也数这间的关系列。
2、确定算法:
3、编码:
4、在计算机上调试程序:
5、整理并写出文档资料:
1.2算法
定义:
是指为了解决某个特定的问题而采取的确定且有限的步骤。
1、有穷性
2、确定性
3、可行性
4、有零个或多个输入
5、有一个或多个输出
1.3结构化程序设计模快化结构
结构化程序由三种基本的结构组成
1、顺序结构
2、选择结构
3、循环结构(分为单性循环、直道循环)
练习题:
1、计算机能直接执行的程序是()
A)源程序B)目标程序C)汇编程序D)可执行程序
源程序:
由高级语言编写的代码叫做源程序。
2、以下叙实中正确的是
A)程序设计的任务就是编写程序代码并上机调试
B)程序设计的任务就是确定所用的数据结构
C)程序设计的任务就是确定所用算法
D)以上三种说法都不完整
一个简单的程序
#include
main()
{
doublea,b,area;
a=1.2,b=3.6;/*将矩形的两条边长分别赋给a和b变量*/
area=a*b;
printf("a=%f,b=%f,auea=%f\n",a,b,area);/*输出矩形的两条边长和面积*/
}
主意:
C语言中一定要区分大小写字母。
#include
main()(表示主函数)一个程序是由多个函数组成的,而任何一个程序都要有一个主函数,有且只有一个,任何程序都是由主函数开始执行的。
{}他们都是成对出现,表示主函数的主体部分,包括定义部分和执行部分。
它们中的语句,每一条必须由;结束。
;是C语句的一个组成部分而不是一个结束标识。
/**/注释符。
注释符一定要成对出现,不允许嵌套。
两个符号间的语句不被执行。
double(表示“双”的意思。
也就是双精度。
)
float(表示“单”的意思。
也就是单精度。
)
printf(表示输出)
练习题:
1、以下叙述正确的是()
A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句
C)简单C语句必须以分号结束D)C语句必须在一行内写完
2、以下叙述正确的是()
A)C程序中的注释只能出现在程序的开始位置和语句的后面
B)C程序书写格式严格,要求一行内只能写一个语句
C)C程序书写格式自由,一个语句可以写在多行上
D)用C语言编写的程序只能放在一个程序文件中
2.2标识符,常量,变量
2.2.1标识符:
定义:
由字母,数字和下划线组成,并且第一个字符必须为字母或下划线的。
这样的组成就是标识符。
标识符的分类有:
(关键字“如ifdoubleint等等不能用作它作。
”、预定义标识符“如printfscanf等等、用户标识符“用户根据自己的需求来定义的。
)
2.2.2常量:
定义:
是指在程序的执行的过程中,其值不会被改变的量
分类:
整型常量:
没有小数的常量。
如391234等等都是常量
实型常量;有小数点的常量。
如3.93.0
字符常量:
量单个字符组成的量。
如‘a’‘b’‘3’
字符串常量:
至少由一个字符组成的量。
如“a”“abc”“Beijing”
符号常量:
符号常量的值到底是多少,这是由在来定义符号常量时来决定的。
2.3整型常量与实型常量
整型常量的几个表示方法
十进制数:
就是我们日常用的数字。
八进制数:
以0开头的数字,由0~7组成。
十六进制数:
以0x开头,由0~9和A~F组成。
实型常量:
(分为小数形式、指数型式)
小数形式:
123.4
指数形式:
1.234e2
注意:
1、字母e和E之前必须要有数字。
2、字母e和E之后的数字必须是整数。
3、字母e数字之间不能有空格。
变量
定义:
在程序的运行过程中其值可以被改变的量,就叫做变量。
原则:
变量必须先定义后使用,变量定义的过程就是给变量开辟存储单元的过程。
分类:
整型变量:
用关键字ing来表示。
Shortint短整型
Longint长整型在内存中占4个字节如123L
Unsigned无符号如有-200u这就是错的。
变量的定义:
inta这是定义了一个整型变量。
实型变量:
用关键字double或float来表示。
float单精度在内存中占4个字节。
double双精度在内存中占8个字节。
算术表达式
一、基本的算术运算符:
+-*/%这些是双目运算符(就是指操作对象有两个)。
注意:
除%外,其它的运算符的运算对像可以是整型也可以是实型。
%的操作对象只能是整型。
如10%3=110.7%3
+-也可能做为单目运算。
如-5.4(表示负数)+4.9(表示正数)
说明“
1、如果双目运算符两边运算数的类型一致,则所得结果的类型与运算数的类型一致。
如1.0/2.0=0.51/2=0
2、如果双目运算符两边运算数的类型不一致,则系统会自动进行类型转换,使两边的类型一致后,再进行运算。
如1.0/2=0.5
3、所有的单精度数据,在运算过程中都以双精度进行运算。
二、优先级:
()+-*/%+-由高——低。
(注明:
第一个+-表示正、负)
2.6赋值表达式
格式:
变量名=表达式
注:
1、不可以颠倒(左边必须是变量名,右边必须是C语言中合法的表达式)
2、功能就是先求出右边的表达式的值,然后把此值赋给赋值号左边的变量,确切的说是把数据存入该变量为标识的存储单元中去。
如a=4a=7
3、结合性的优先给仅高于逗号表达式,顺序是自右向左的。
如a=2+7/3
4“=”是一个赋值号,不是一个等号。
5、X=Y。
变量的值也是可以传递和赋值的,它的意思就是将变量Y中的值赋值到X中去,同样N=N+1也成立。
6、赋值运算符的左侧只能是变量,不能是常量或表达式a+b=c这就是违法的。
7、赋值号的右边也可经是一个赋值表达式。
如a=b=7+1
表达式与语句的区别:
表达式后面加一个分号就是语句。
逗号表达式
一、定义:
用逗号将表达式连接起来的式子称为逗号表达式
二、格式:
表达式1,表达式2,…….,表达式N
三、说明:
1、逗号运算符号的结合性为从左到右进行运算,逗号表达式的的值是最后一个表达式的值。
2、在所有运算符中,逗号运算符的优先级量低。
函数是由{开始,再到}结束。
函数体内的前面是由定义和说明部分,后面是语句部分
输出语句
一、printf函数的一般调用形式
格式:
print(格式控制,输出项1,输出项2……)
在print函数的最后面写上;号就是输出语句。
1,给输出项提供输出格试说明
格式说明符:
作用:
就是使数据按格式说明符的要求进行输出。
组成:
由%号和紧跟在其后的格式描述符组成。
int--------%d
float或double-------%f或%e
char--------%c(表示以字符形式输出)
2、提供原样输出的文字或字符
在””中除了格式说明符之外的内容要全部原样输出。
各个输出项之间要用逗号隔开。
输出项可以是任意合法的常量,变量或表达式。
Print中常用的格式说明
在格式说明符中,每一个格式说明符都必须以%号开头由相应的类型标识字母结束,但在他们之间可以有其它的一个内容:
%c:
输出一个字符
%d:
输出一个十进制的数据
%o:
以八进制格式输出
%x:
以十六进制输出
%u:
无符号十进制输出
%f:
以带小数点的数字输出
%e:
以指数形式输出
%s:
输出一个字符串
%%:
输出一个%
%4d:
输出的数据长度是4个长度,当原来的长度大于4个时会自动突破,小于4个时会填充空格。
%x.yf:
X代表数制的宽度(包括小数点)。
Y代表小数点后面的小数位数。
输入语句
格式:
scanf(格式控制,输入项1,输入项2,…….)
例如:
想通过键盘输入3个数分别给变量a.b.c。
并且他们分别为整型,浮点型,双精度型。
输入语句为scanf(”%d%f%if”,&k,&a,&y)
说明:
1、格式说明符与输出语句一样
2、在格式串中,必须含有与输入项一一对应的格式转换说明符。
3、在VC6.0的环境下,要输入double的型号数据的格式说明符一定要用,否则数据不能正确的输入。
4、由于输入是一个字符串,所以当输入的数据少于输入项时,程序会等待用户输入,直到满足要求,当输入的数据多于输入项时,多余的数据会自动作废。
关系运算与逻辑运算
一、简介
关系表达式与逻辑表达式的运算结果都会得到一个逻辑值,就是“真”“假”
C语言中0表示“假”,非0(无论是负数还是正数都是真,更多时候用1来代替)表示“真”
二、几个简单的关系运算符。
<(表示小于)<=(表示小于等于)>(表示大于)>=(表示大于等于)==(表示等于)!
=(表示不等于)。
注意:
1、由两个字符组成的运算符,中间不能用空格。
2、它们都是双目运算符,具有自左至右的结合性。
3、上面的6个运算符中,前4个的优先级要比后2个的优先级要高。
先计算,后判断,最后进行赋值运算
三、几个简单的逻辑运算符
&&与一假则假
||或一真则真
!
非非假则真,非真则假
如:
1&&2=1(即表示真。
因为1表示真的)
0&&6=0(即表示假。
因为0表示是假的)
if和else的执行
在两个数中,只输出一个大数的程序
#include
main()
{
inta,b;
printf("请输入两个数");
scanf("%d%d",&a,&b);
if(a
printf("%d",b);
else
printf("%d",a);
}
if(条件)
语句1;
else
语句2;
语句3;
运行方法:
当if(条件)成立,则执行语句1;再执行语句3。
否则执行语句2
if(条件)
语句1;
else
{语句2;
语句3;}
运行方法:
当if(条件)不成立,则执行语句2;再执行语句3{}里面的属于一个复合语句。
一个三的倍数的程序
#include
main()
{
intx;
printf("请输入一个数\n");
scanf("%d",&x);
if(x%3==0)
printf("这是一个3的倍数");
else
printf("这不是一个3的倍数");
}
输入三个数,然后从小排到大的程序
#include
main()
{
inta,b,c,t;
printf("inputthreeNo.");
scanf("%d%d%d",&a,&b,&c);
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
if(b>c)
{t=b;b=c;c=t;}
printf("%d%d%d",a,b,c);
}
输入一个成绩,然后分出“优、良、差”的程序
#include
main()
{
inta;
printf("inputscores.");
scanf("%d",&a);
if(a>60)
if(a>90)
printf("优\n");
else
printf("良\n");
else
printf("差\n");
}
输入一个成绩,小于60的显示差,大于或等于90的显示优。
其它不显示的程序
#include
main()
{
inta;
printf("inputscores.");
scanf("%d",&a);
if(a>60)
{if(a>=90)
printf("优\n");}
else
printf("差\n");
}
输入一个成绩,然后判别成绩的等级
(1)
#include
main()
{
inta;
printf("inputscores.");
scanf("%d",&a);
if(a>=90)
printf("A\n");
else
if(a>=80)
printf("B\n");
else
if(a>=70)
printf("C\n");
else
if(a>=60)
printf("D\n");
elseprintf("e\n");
条件表达式:
条件表达式是C语言中唯一的一个三目运算
格式:
表达式1?
表达式2:
表达式3
当1成立(非零时)时,表达式的值就是2的值,否则就是3的值。
如1、1<2?
4:
5因为1<2所以成立,那输也的值就是4
3<2?
4:
5因为3<2不成立,那输出的值就是5
2、printf(“%d”,x<0?
(-1)*++x:
x++);(假定x的值为3)
因为x的值为3,所以x<0不成立,那输出的值则为x++即3
printf(“%d”,x<0?
(-1)*++x:
x++);(假定x的值为-3)
因为x的值为-3,所以x<0成立,那输出的值则为(-1)*++x即2
3、++x>3?
(x<3?
a:
b):
b
思考:
当x的值为3时,那输出的值就为?
注意表达式2里面又含有一个条件表达式
输入一个成绩,然后判别成绩的等级
(2)
#include
main()
{
inta;
printf("inputscores.");
scanf("%d",&a);
switch(a/10)
{
case10:
printf("A\n");break;
case9:
printf("A\n");break;
case8:
printf("B\n");break;
case7:
printf("C\n");break;
case6:
printf("D\n");break;
default:
printf("E\n");
}
}
编写程序,输入一位学生的生日,并输入当前的日期,然后输出该生的实际年龄
#include
voidmain()
{
inty0,m0,d0,y1,m1,d1,age;
printf("请输入学生的生日(年,月,日):
");
scanf("%d%d%d",&y0,&m0,&d0);
printf("该学生生日是:
%d年%d月%d日\n",y0,m0,d0);
printf("请输入当前日期(年,月,日):
");
scanf("%d%d%d",&y1,&m1,&d1);
printf("当前日期是:
%d年%d月%d日\n",y1,m1,d1);
age=y1-y0;
if(m1 printf("该学生年龄为: %d岁\n",age); else printf("该学生年龄为: %d岁\n",age); printf("任务完成\n");} 解析 编写程序,输入一位学生的生日,并输入当前的日期,然后输出该生的实际年龄 #include voidmain() { inty0,m0,d0,y1,m1,d1,age; printf("请输入学生的生日(年,月,日): "); scanf("%d,%d,%d",&y0,&m0,&d0); printf("该学生生日是: %d年%d月%d日\n",y0,m0,d0); printf("请输入当前日期(年,月,日): "); scanf("%d,%d,%d",&y1,&m1,&d1);//中间加逗号才可以输入格式加逗号 printf("当前日期是: %d年%d月%d日\n",y1,m1,d1); age=y1-y0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 学习 笔记