C语言概述-学习一

2022-02-28 18:06:03 浏览数 (1)

本文最后更新于2022年01月24日,已超过35天没有更新。如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!

程序设计语言发展过程 机器语言:0 / 1 汇编语言:符号语言(操作指令) 高级语言:面向过程(C语言) / 面向对象(Java/C )

C语言特点

  1. 语言 简洁紧凑 ,使用 灵活方便 (一共只有32个关键字9种控制语句,程序书写形式自由,区分大小写)。
  2. 丰富的 运算符数据类型(共有34种运算符,整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等)。
  3. 具有 结构化 的控制语句,是 完全模块结构化 语言(主要为设计结构选择结构循环结构)。
  4. 允许直接访问 物理地址,可以 直接对硬件进行操作(能够对位(bit)、字节和地址进行操作,对 操作系统 以及需要对 硬件 操作的场合有优越性)。
  5. 程序 可移植性好(与汇编语言相比,基本不需要修改就能用于各种型号计算机与操作系统)。

C语言程序结构

C程序主要包括以下部分:

  • 预处理器指令
  • 函数
  • 变量
  • 语句 & 表达式
  • 注释
代码语言:javascript复制
#include <stdio.h>
int main()
{
    /* 我的第一个 C 程序 */
    printf("This is a C program.n");
    return 0;
}

/*  
include为指令,作用是将头文件(stdio.h)添加到源文件。
stdio .h 头文件定义了 三个变量类型、一些 宏 和各种函数来执行 输入 和 输出。详情见附录。
main()表示主函数,程序的执行从主函数开始,一个C语言程序有且只能有一个主函数。
其中int代表函数的返回类型是整型。
{代码}括号里的内容称为函数体。
printf(...)是通过include添加的头文件里的另一个的函数,作用是打印输出。
return 0 因为main函数类型为整型,所以要返回一个整型 0 结束程序。
*/

总结:

  1. 程序的第一行 #include <stdio.h> 是预处理器指令,告诉 C 编译器在实际编译之前要包含 stdio.h 文件。
  2. 第二行 int main() 是主函数,程序从这里开始执行。
  3. {}括号将函数体包括起来。
  4. 第四行 /.../ 将会被编译器忽略,这里放置程序的注释内容。它们被称为程序的注释。
  5. 第五行 printf(...) 是 C语言 中另一个可用的函数,会在屏幕上显示消息 "This is a C program."。
  6. 第六行 return 0; 终止 main() 函数,并返回值 0。

C语言运行机制

  1. 函数库: 是文件,文件里存放了多个函数供你调用。
  2. 函数库对应的头文件: 扩展名多为 .h ,即head 头。
  3. 在C语言的源程序中使用 #include <函数库的头文件> 语句引入 函数库,再调用库中的函数。

示例:

1.求两个整数之和

解题思路:

  • 设置3个变量:a、b、sum;
  • a和b用来存放两个整数;
  • sum用来存放之和的数;
  • 用赋值运算符 “=” 把结果传递给sum;
代码语言:javascript复制
#include <stdio.h>
int main()
{
    int a,b,sum;  //定义整数变量 a,b,sum
    a=1;   //对变量a,b赋值
    b=2;
    sum = a   b;  // 把变量a,b的和赋值给sum
    printf("两个整数之和是 %dn",sum); //将和输出
    return 0;
}
2.求两数之间的较大的数

解题思路:

  • 使用一个函数实现求出两数的较大者;
  • 在主函数中调用此函数并输出结果;
代码语言:javascript复制
#include <stdio.h>
#pragma warning(disable:4996)  

//4996这个警告是VC2005以后的版本为了提高程序安全性而用的。
//去掉这个警告可以编译非安全函数,包括scanf,printf,strcpy等。

int main()
{
    int max(int x, int y);  //因为max函数定义在在main之后,需要声明。
    int a,b,c;
    scanf("%d,%d",&a,&b);   //新版本使用scanf_s函数输入。
    c = max(a,b); //a,b为实参。
    printf("较大的数是:%dn",c);
    return 0;
}

//求两个整数中的较大者的max函数。
int max(int x, int y) //定义max函数,函数值为整型,形参x和y为整型。
{
    int z;           //max函数中的声明部分,定义本函数中用到的变量z为整型。
    if(x>y) z=x;     //若x>y成立,将x的值赋给变量z 。
    else z=y;        //否则(即x>y不成立),将y的值赋给变量z。
    return(z);       //将z的值作为max函数值,返回到调用max函数的位置。
}

★C语言程序结构的特点:

  1. 一个源程序文件包括:
    • 预处理指令:#include <stdio.h>等;
    • 函数定义;

2.函数是C语言程序的主要组成部分

  • 一个C程序由一个或多个函数组成;
  • 必须包含一个main函数(只能有一个);
  • 程序总是从main函数开始执行;
    • 一个函数包括两个部分:
      • 函数首部
      • 函数体

3.C程序对计算机的操作由C语句完成

  • C程序书写格式是比较自由的;
  • 为了清晰可见,习惯上每行只写一个语句;

  1. 数据声明和语句的末尾必须有分号
  2. C语言本身不提供输入输出语句
  3. 程序应当包含注释,增加可读性。

C程序的执行步骤

练习

练习

1、以下叙述正确的是___。

(A)在C程序中main函数必须位于程序的最前面。

(B)C程序的每行中只能写一条语句。

(C)C语言本身没有输入输出语句。

(D)在对个C程序进行编译的过程中可发现注释中的拼写错误。

2、C语言规定:在一个源程序中,main函数的位置___。

(A)必须在最开始。

(B)必须在系统调用库函数的后面。

(C)可以任意。

(D)必须在最后。

3、一个C程序的执行是从___。

(A)本程序的main函数开始,到main函数结束。

(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。

(C)本程序的main函数开始,到本程序文件的最后一个函数结束。

(D)本程序文件的第一个函数开始,到本程序main函数结束。

4、以下叙述不正确的是___。

(A)一个C源程序可由一个或多个函数组成。

(B)一个C源程序必须包含一个main函数。

(C)C程序的基本组成单位是函数。

(D)在C程序中,注释说明只能位于一条语句后面。

答案

1、C   2、C   3、A   4、D

附录:

#include <stdio.h> 函数库 (包括printf()输出函数、scanf()输入函数等函数)。 #include <math.h> 数学计算(包括abs()求绝对值的函数、sqrt()求开方的函数等等数学计算需要用到的函数)。 #include <sting.h> 字符串处理 (包括strlen()计算字符串长度函数、strcpy()字符串复制函数等等字符串处理函数)。 更多详细内容

0 人点赞