C语言学习笔记(自用)1.2.3章

C语言学习笔记(自用)1.2章

第一章 程序设计和C语言

main————主函数
int—————整型
return 0;——main函数执行结束前将整数0作为函数值,返回到调用函数处
\n—————换行符
.h—————头文件
//————— 注释(单行注释)
//———— 注释(多行注释)

C语言程序的结构

1.预处理指令:如#include<stdio.h>
2.全局声明:int a,b,sum;放在main外称为全局声明,a,b,sum称为全局变量;放在main内称为局部声明,a,b,sum称为局部变量。
3.函数定义:如max函数
4.程序总是从main函数开始执行的
5.程序中要求计算机完成的操作是由函数中的C语句完成的:如赋值,输入输出数据的操作
6.在每个数据声明和语句的最后都必须有一个分号
7.C语言本身不提供输入输出语句:输入输出由scanf和printf等函数完成的
8.程序应包含注释

第二章 算法——程序的灵魂

算法的特性

1.有穷性:一个算法应包含有限的操作步骤,而不是无限的。
2.确定性:每一个步骤都应当是确定的,而不是含糊的。
3.有零个或多个输入
4.有一个或多个输出
5.有效性

三种基本结构

1.顺序结构
2.选择结构
3.循环结构:while型循环结构 until型循环结构

第三章 最简单的C语言程序设计

1.常量和变量

常量和变量
变量必须先定义后使用
常变量:C99允许使用常变量,前面加一个关键字const

转义字符字符值输出结果
\ \backslash \一个单撇号(’)输出单撇号字符’
\ \backslash \"一个双撇号(")输出双撇号字符
\ \backslash \一个问号(?)输出问号字符?
\ \backslash \ \ \backslash \一个反斜线( \ \backslash \输出反斜线字符 \ \backslash \
\ \backslash \a警告(alert)产生声音或视觉信号
\ \backslash \b退格(backspace)将光标当前位置后退一个字符
\ \backslash \f换页(form feed)将光标当前位置移到下一页的开头
\ \backslash \n换行将光标当前位置移到下一行的开头
\ \backslash \r回车(carriage return)将光标当前位置移到本行的开头
\ \backslash \t水平制表符(tab)将光标当前位置移到下一个tab位置
\ \backslash \v垂直制表符将光标当前位置移到下一个垂直制表对齐点
\ \backslash \o、 \ \backslash \oo或 \ \backslash \ooo其中o代表一个八进制数字与该八进制码对应的ASCII字符与该八进制码对应的字符
\ \backslash \xh[h…]其中h代表一个十六进制数字与该十六进制码对应的ASCII字符与该十六进制码对应的字符

2.数据类型

C语言允许使用的类型,*的是C99所增加的

3.整型数据 字符型数据 浮点型数据

类型字节数取值范围
int(基本整型)4-2 147 483 648(-2^31)~2 147 483 647(2^31-1)
unsigned int(无符号基本整型)40~4 294 967 295(2^32-1)
short(短整型)2-32 768(-2^15)~32 767(2^15-1)
unsigned short(无符号短整型)20~65 535(2^16-1)
long(长整型)4-2 147 483 648(-2^31)~2 147 483 647(2^31-1)
unsigned long(无符号长整型)40~4 294 967 295(2^32-1)
long long(双长型)8-9 223 372 036 854 775 808(-2^63)~9 223 372 036 854 775 807(2^63-1)
unsigned long long(无符号双长整型)80~18 446 744 073 709 551 615(2^64-1)
signed char(有符号字符型)1-128(-2^7)~1 27(2^7-1)
unsigned char(无符号字符型)10~255(2^8-1)
类型字节数有效数字数值范围
float460以及1.2×10^(-38)~3 .4×10^(38)
double8150以及2.3×10^(-308)~1 .7×10^(308)
long double8150以及2.3×10^(-308)~1 .7×10^(308)
long double16190以及3.4×10^(-4932)~1 .1×10^(4932)

4.C运算符

1.算术运算符(+,-,*,/,%,++ ,–)
2.关系运算符(>,<,==,>=,<=,!=)
3.逻辑运算符(!,&&,||)
4.位运算符(<<,>>,~,|,&)
5.赋值运算符(=及其扩展赋值运算符)
6.条件运算符(?,:)
7.逗号运算符(,)
8.指针运算符(*和&)
9.求字节数运算符(sizeof)
10.强制类型转换运算符((类型))
11.成员运算符(,->)
12.下标运算符([])
13.其他(如函数调用运算符())

5.C语句的作用和分类

1控制语句

1.if()…else…(条件语句)
2.for()…    (循环语句)
3.while()…   (循环语句)
4.do…while()  (循环语句)
5.continue  (结束本次循环语句)
6.break    (终止执行switch或循环语句)
7.switch   (多分支选择语句)
8.return    (从函数返回语句)
9.goto      (转向语句,在结构化程序中基本不用goto语句)
上面九种语句表示形式中的()表示括号中是一个“判别条件”,“…”表示内嵌的语句

2函数调用语句

如printf(“this is a C statement.”)

3表达式语句

如:

a=3;

4空语句

    ;

5.复合语句

可以用{}把一些语句和声明括起来成为复合语句,例如:

{
	float pi=3.14159,r=2.5,area;  \\定义变量			
	area=pi*r*r;
	printf("area=%f",area);
}

ps:复合语句中最后一个语句末尾的分号不能忽略不写。

6.数据的输入输出

用scanf函数输入数据,用printf输出数据

用printf函数输出数据

格式:printf(格式控制,输出表列)
格式字符
1.d格式符,用来输出一个有符号的十进制整数。

printf("%5d\n%5d\n",12,-345)\\%5d是指定的域宽,指定数据站5

输出结果为12(12前面有3个空格)
     -345(-345前面有1个空格)
2.c格式符,用来输出一个字符

char ch='a';
printf("%5c",ch);

运行时输出 a(a前面有四个空格)

一个整数,如果范围在0~127范围中,也可以用%c使之按字符形式输出,在输出前,系统会将该整数作为ASCII码转换成相应的字符,如:

short a=121;
printf("%c",a);

输出字符y
如果整数比较大,则把他的最后一个字节的信息以字符形式输出,如:

int a=377;
printf("%c",a)

输出字符y
用%c格式输出时,只考虑一个字节01111001即十进制的121,是’y’的ASCII编码。
             0 0 0 0 0 0 0 1| 0 1 1 1 1 0 0 1
3.s格式符,用来输出一个字符串。如:

printf("%s","CHINA")

输出CHINA
4.f格式符,用来输出实数(包括单精度、双精度、长双精度),以小数形式输出,有几种用法:
①基本型,用%f。
不指定输出数据的长度,由系统根据数据的实际情况决定数据所占的列数。系统处理的方法一般是:实数中的整数部分全部输出,小数部分输出6位。如:

#include<stdio.h>
int main()
{
	double a=1.0;
	printf("%f\n",a/3);
	return 0;
}

运行结果:0.333333
虽然a是双精度型,a/3也是双精度型,但用%f格式声明只能输出6位小数
②指定数据宽度和小数位数

printf("%20.15f\n",a/3);

输出结果:0.333333333333333(0前有3个空格)(20位数字,17位有效数字)
③输出的数据向左对齐,用%-m.nf
在m,n的前面加一个负号,其作用与%m.nf形式作用基本相同,但当数据长度不超过m时,数据向左靠,右端补空格。如:

printf("%-25.215f,%25.15f\n",a,a);

运行结果:3333.333333333333500
3333.333333333333500
5.e格式符,以指数形式输出实数

printf("%e",123.456);

输出如下:1.234560e+002
6.其他格式符
①i格式符。作用与d格式符相同,按十进制整型数据的实际长度输出
②o格式符。以八进制整数形式输出。
③x格式符。以十六进制数形式输出整数
④u格式符。用来输出无符号型数据,以十进制整数形式输出。
⑤g格式符。用来输出浮点数
scanf中的格式字符与其相同
字符输入输出函数
1.putchar
putchar(c)

#include<stdio.h>
int main()
{
	char a='B',b='O',c='Y';//定义三个字符变量并初始化
	putchar(a);            //向显示器输入字符B
	putchar(b);			   //向显示器输入字符O
	putchar(c);			   //向显示器输入字符Y
	putchar('\n');		   //向显示器输出一个换行符
	return 0;
}

运行结果:BOY
也可以输入其ASCII编码

#include<stdio.h>
int main()
{
	int a=66,b=79,c=89;
	putchar(a);
	putchar(b);
	putchar(c);
	putchar('\n');
	return 0;
}

输出结果:BOY
2.getchar
getchar()

#include<stdio.h>
int main()
{
	char a,b,c;//定义字符变量a,b,c
	a=getchar();//从键盘输入一个字符,送给字符变量a
	b=getchar();//从键盘输入一个字符,送给字符变量b
	c=getchar();//从键盘输入一个字符,送给字符变量c
	putchar(a);//将变量a的值输出
	putchar(b);//将变量b的值输出
	putchar(c);//将变量c的值输出
	putchar('\n');//换行
	return 0;
}

运行结果:BOY
BOY
也可以

#include<stdio.h>
int main()
{
	putchar(getchar());//将接收到的字符输出
	putchar(getchar());//将接收到的字符输出
	putchar(getchar());//将接收到的字符输出
	putchar('\n');//换行
	return 0;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值