《C语言程序设计》(谭浩强第五版) 第1章 程序设计和C语言 习题解析与答案

《C语言程序设计》(谭浩强第五版) 第1章 程序设计和C语言 习题解析与答案

你也可以上程序咖(https://meta.chengxuka.com/#/mooc),打开大学幕题板块,不但有答案,讲解,还可以在线答题。

题目1:什么是程序?什么是程序设计?

答:

程序:就是一组计算机能识别和执行的指令集合,每一条指令使计算机执行特定的操作。

程序设计:是指从确定任务到得到结果、写出文档的全过程。

题目2:为什么需要计算机语言?高级语言有哪些特点?

答:

为什么需要计算机语言:计算机语言解决了人和计算机交流是的语言问题,使得计算机和人都能识别。

高级语言有哪些特点:
2.1 高级语言的数据结构要比汇编和机器语言丰富;
2.2 高级语言与具体机器结构的关联没有汇编以及机器语言密切;
2.3 高级语言更接近自然语言更容易掌握;
2.4 高级语言编写的程序要经过编译或解释计算机才能执行;

题目3:正确理解以下名词及其含义:

(1)源程序,目标程序,可执行程序。

(2)程序编辑,程序编译,程序连接。

(3)程序,程序模块,程序文件。

(4)函数,主函数,被调用函数,库函数。

(5)程序调试,程序测试。

答:

(1)源程序,目标程序,可执行程序。
源程序:指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令

目标程序:为源程序经编译可直接被计算机运行的机器码集合,在计算机文件上以.obj作扩展名

可执行程序:将所有编译后得到的目标模块连接装配起来,在与函数库相连接成为一个整体,生成一个可供计算机执行的目标程序,成为可执行程序

(2)程序编辑,程序编译,程序连接。

程序编辑:上机输入或者编辑源程序。

程序编译:

先用C提供的“预处理器”,对程序中的预处理指令进行编译预处理
对源程序进行语法检查, 判断是否有语法错误,直到没有语法错误未知
编译程序自动把源程序转换为二进制形式的目标程序
程序连接:将所有编译后得到的目标模块连接装配起来,在与函数库相连接成为一个整体的过程称之为程序连接

(3)程序,程序模块,程序文件。

程序:一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具

程序模块:可由汇编程序、编译程序、装入程序或翻译程序作为一个整体来处理的一级独立的、可识别的程序指令

程序文件:程序的文件称为程序文件,程序文件存储的是程序,包括源程序和可执行程序

(4)函数,主函数,被调用函数,库函数。

函数:将一段经常需要使用的代码封装起来,在需要使用时可以直接调用,来完成一定功能

主函数:又称main函数,是程序执行的起点

被调用函数:由一个函数调用另一个函数,则称第二个函数为被调用函数

库函数:一般是指编译器提供的可在c源程序中调用的函数。可分为两类,一类是c语言标准规定的库函数,一类是

编译器特定的库函数

(5)程序调试,程序测试。

程序调试:是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程

程序测试:是指对一个完成了全部或部分功能、模块的计算机程序在正式使用前的检测,以确保该程序能按预定的方式正确地运行

题目4:编写一个C程序,运行时输出Hello World!

这个程序是一-些国外C教材中作为第一个程序例子介绍的,一-般称为Hello程序。

答:

#include 
int main()
{
    printf("*****************«********\n\n");
    printf("      Hello World !\n\n");
    printf("*****************«********\n\n");
    return 0;
}

运行结果:

题目5:编写一个C程序,运行时输出以下图形:

*****
 *****
  *****
   *****

答案代码:

#include 
int main()
{
    printf("*****\n");
    printf("      *****\n");
    printf("          *****\n");
    printf("              *****\n");
    return 0;
}

运行结果:

说明: 由于目前只见过printf 函数,只能用这种最简单的方法。在学过循环后,可以利用循环语句编写程序,只须用一个printf 函数输出5个"*"号。请读者在学过第5章(循环)后,回过头用循环语句编写程序处理此问题。在学过第7章(函数)后,还可定义一个函数来实现输出5个'*',然后在main函数中调用该函数。

题目6:编写一个C程序,运行时输人a,b,c三个值,输出其中值最大者。

答案代码:

#include 
int main()
{
    int a, b, c, max;
    printf("please input a,b,c: \n");
    scanf("%d,%d,%d", &a, &b, &c);
    max = a;
    if (max < b)
        max = b;
    if (max < c)
        max = c;
    printf("The largest number is %d\n", max);
    return 0;
}

运行结果:

输入3个数:18,-43,34,输出最大数34。

注意:输入的3个数以英文状态下的痘哦好风格,如果以空格分割会出错,读者可试一下,请思考为什么?

题目7:看懂《C程序设计(第五版)学习辅导》第16章中介绍的用Visual Studio 2010对C程序进行编辑、编译、连接和运行的方法,并进行以下操作:
(1)建立一个新项目,定名为project1。
(2)建立一个新文件,定名为test1。
(3)向test1文件输人源程序(此源程序为读者自己编写的程序)。
(4)编译该源程序,如发现程序有错,请修改之,直到不出现“编译出错”为止。
(5)连接并运行,得到结果。分析结果。

解:

(1)建立一个新项目,定名为project1。

(2)建立一个新文件,定名为test1。

(3)向test1文件输人源程序(此源程序为读者自己编写的程序)。

(4)编译该源程序,如发现程序有错,请修改之,直到不出现“编译出错”为止。
(5)连接并运行,得到结果。分析结果。

你可能感兴趣的:(《C语言程序设计》(谭浩强第五版) 第1章 程序设计和C语言 习题解析与答案)