c语言程序设计1-5章知识总结与感想
第二章
1.基本整型:int 长整型:long 短整型:short 无符号整型:unsigned
①有符号整型常量
②无符号整型常量
③长整形常量
④无符号长整形常量
2.实型:
①单精度实型:float
②双精度实型:double
③长双精度实型:long double
3.字符型:char
字符型用单引号,如'z','3','$',\n'
用\开头的字符为转义字符,代表一个字符。
字符串用双引号,如“URM”,“1”,“5a”
4.一个字节代表八个二进制位。
int型占四个字节,long int型占两个字节。
short int型占四个字节,long long int型占八个字节
float型占四个字节,double型占八个字节,
long double占十个字节,char占一个字节。
sizeof是C语言的关键字,不是函数名。
sizeof()是c语言提供的专门用于计算指定数据类型字节数的运算符。
例,其他基本数据类型存储空间大小
分别定义bool,char类型的变量各一个,并依次输出它们的存储空间大小(单位:字节)。
输入
无。
输出
一行,两个整数,分别是两个变量的存储空间大小,用一个空格隔开。
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
bool b;
char c;
cout << sizeof(b) << " " << sizeof(c) << endl;
return 0;
}
第三章
1.整数除法:商一定为整数,11/5=2
实数除法:11.0/5=2.2
算术运算符的优先级取相反数的优先级最高,其次是* / %,+ -的优先级最低。
2.复合赋值运算:n*=m+1,即n=n*(m+1)
3.增1和减1运算符
m=n++:将增1操作之前的n值赋值给变量m
m=++n:将增1操作之后的n值赋值给了m
4.宏常量与宏替换
宏定义的一般形式为:#define标识符 字符串
例:#define PI 3.14159,一般不以分号结尾
5.const常量
将const放在类型名之前,即可将类型名后的标示符声明为具有该类型的const常量,只能在定义时赋初值。
例,const double PI=3.14159;
例,与圆相关的计算
描述
给出圆的半径,求圆的直径、周长和面积。
输入
输入包含一个实数r(0 < r <= 10,000),表示圆的半径。
输出
输出一行,包含三个数,分别表示圆的直径、周长、面积,数与数之间以一个空格分开,每个数保留小数点后4位。
样例输入
3.0
样例输出
6.0000 18.8495 28.2743
提示
如果圆的半径是r,那么圆的直径、周长、面积分别是2*r、2 * pi * r、pi * r * r,其中约定pi=3.14159。
可以使用printf("%.4lf", ...)实现保留小数点后4位。
#include<cstdio>
#include<iostream>
#include<iomanip>
#include<cmath>
using namespace std;
int main()
{
const double pi=3.14159;
double r,d,c,s;
scanf("%lf",&r);
d=2*r;
c=2*pi*r;
s=pi*r*r;
printf("%.4lf %.4lf %.4lf", d, c, s);
return 0;
}
第四章
1.ASCII字符表
小写英文字母比大写英文字母的ASCII码值大32
即ch=ch+32;(将大写英文字母转换为小写英文字母)
2.printf()一般格式
printf(格式控制字符串,输出值参数表)
%d输出带符号的十进制整数
%c输出一个字符
%s输出字符串
%f输出实数
%lf输出双精度数
%e以指数形式输出实数
%%输出百分号
3.格式修饰符
①输出域宽m
②显示精度n:只输出的浮点数的小数位数
例,%7.2f表示保留两位小数,且输出数据点七个字符宽度,小数点也占一个字符位置
4.scanf()对输入数据的格式要求
例,scanf(“%d”,&a)
第五章
1.<小于
>大于
<=小于等于
>=大于等于
==等于
!=不等于
&&与
‖或
!非
2.单分支条件语句
if(表达式) 语句1
条件成立做的工作,用一条语句描述
当需要多条语句时,用复合语句,用花括号括起来
例:
if(表达式)
{
语句序列1
}
3.双分支条件语句
if(表达式) 语句1
else 语句2
感想:
经过这几个月的学习,我发现在上课的时候听得还算明白,但是在下来做作业的时候还是没有办法完全的将这些题解决,总是有一点这儿或那儿搞不明白,尤其是在做练习1顺序结构的时候,因为是第一次做,所以觉得无从下手,从而做一个错一个,我认为这是由于我们平时没有机会操作,我们需要在平时做题的过程中发现问题,在过程中去寻找那些你还存在的问题和比较模糊的概念,c语言是我们学习网络的基础,同时也是我们进行学习其它计算机语言的敲门砖,所以以后要更加努力的学c语言这门课程。