C语言课程总结

    经过了半个学期对C语言的学习,我领悟到了C语言的魅力。它是一门有一定的难度却又有趣的学科,而且对于作为计算机科学与技术专业的我来说也是很有用的。在我看来,C语言程序设计这门课所学的内容是十分重要的,因为C语言是计算机程序设计的重要理论基础,在我以后的学习和工作中都有着无与伦比的地位。通过对它的学习,我在学习中提高了自己。

一、这半个学期的学习让我认识到C语言有以下几个特点:
①语言简洁、紧凑,使用方便、灵活。共有32个关键字,9种控制语句。
②运算符丰富,公有34种运算符。
③数据结构丰富,数据类型有:整型、实型、字符型、数组、指针、结构体、共用体等。
④具有结构化的控制语句(如if…else、while、do…while、switch、for)
⑤语法限制不太严格,程序设计自由度大。
⑥允许直接访问物理地址,能进行位(bit)操作,可以直接对硬件操作。
⑦生成目标代码质量高,程序执行效率高。
⑧可移植性好。
二、我掌握的一部分知识
1)我学习了C语言的数据类型、常量与符号常量、变量、 C语言的运算符和表达式、赋值运算符和赋值表达式、自增自减运算符以及逗号表达式等。
2)了解了结构化程序的三种基本结构、C语句概述、数据输出包括字符输出函数putchar()和格式输出函数printf()、数据输入包括字符输入函数getchar()和格式输入函数scanf(),还有一些简单的C语程序设计举列等。
3)关于数据输出
c语言不提供输入输出语句,输入输出操作是由c的库函数完成。但要包含头文件stdio.h。putchar( ) 向终端输出一个字符
printf( )的格式字符:
① d格式符用来输出十进制整数
%d 按整型数据的实际长度输出
%md 使输出长度为m,如果数据长度小于m,则左补空格,如果大于m,则输出实际长度%ld 输出长整型数据② o格式符以八进制形式输出整数
③ x格式符以十六进制形式输出整数
④ u格式符用来输出unsigned型数据,以十进制形式输出
⑤ c格式符用来输出一个字符
⑥ s格式符输出一个字符串
%s输出实际长度字符串
%ms 输出的串占m列,如果串长度小于m,左补空格,如果大于m,实际输出
%-ms输出的串占m列,如果串长度小于m,右补空格,
%m.ns 输出占m列,但只取字符串中左端n个字符并靠右对齐
%-m.ns m、n含义同上,靠左对齐,如果n>m,则m自动取n值
⑦ f格式符以小数形式输出实数
%f 整数部分全部输出,小数部分输出6位
%m.nf 输出数据共占m列,其中有n位小数。如果数值长度小于m,左补空格
%-m.nf 同上,右补空格
⑧ e格式符以指数形式输出实数
%e 系统指定6位小数,5位指数(e+002 )
⑨ g格式符输出实数,根据数值大小,自动选f格式或e格式
4)关于数据输入
getchar( ) 从终端输入一个字符
scanf( 格式控制,地址列表) 标准C scanf中不使用%u,对于unsigned型数据,以%d或%o或%x 输入。%后的*,用来跳过它相应的数据。输入数据时不能规定精度如scanf( “%7.2f”, &a );是不合法的。
5)关于形参和实参的说明
①在函数被调用之前,形参不占内存
②实参可以是常量、变量或表达式
③必须指定形参的类型
④实参与形参类型应一致
⑤实参对形参的数据传递是"值传递",即单向传递
6)关于宏定义
不带参数的宏定义
用一个指定的标识符来代表一个字符串,形式:#define 标识符字符串
几点说明:
①宏名一般用大写
②宏定义不作语法检查,只有在编译被宏展开后的源程序时才会报错
③宏定义不是c语句,不在行末加分号
④宏名有效范围为定义到本源文件结束
⑤可以用#undef命令终止宏定义的作用域
⑥在宏定义时,可以引用已定义的宏名
带参数的宏定义
定义形式:#define 宏名(参数表)字符串
这和函数有些类似,但他们是不同的:
①函数调用时,先求实参表达式值,再代入形参,而宏只是简单替换,并不求值
②函数调用是在程序运行时分配内存的,而宏展开时并不分配内存,也没有返回值的概念
③对函数中的实参和形参都要定义类型,而且要求一致,宏名无类型,其参数也没有类型。
④函数只有一个返回值,而宏可以得到几个结果
⑤宏替换不占运行时间,只占编译时间,而函数调用占运行时间
7)关于指针的数据类型
定义含义
int I; 定义一个整型变量I
int *p; p为指向整型数据的指针变量
int a[n]; 定义整型数组a,它有n个元素
int *p[n]; 定义指针数组p,它有n个指向整型的指针元素
int (*p)[n]; p为指向含有n个元素的一维数组的指针变量
int f(); f为返回整型值的函数
int *p(); p为返回值为指针的函数,该指针指向整型数据
int (*p)(); p为指向函数的指针,该函数返回一个整型值
int **p; 定义一个指向指针的指针变量
三、总结
C语言程序设计这门课也不是很好学,对我来说,这是一种挑战也是一种进步。我不确定我会学好甚至感觉自己还有点跟不上节奏,但是既然已经决定了计算机这条路,即使荆棘满地,我也只顾风雨兼程,不问归期!

猜你喜欢

转载自blog.csdn.net/qq_43471411/article/details/85337248