当前位置:文档之家› C++语言程序设计代码规范

C++语言程序设计代码规范

C++语言程序设计代码规范
C++语言程序设计代码规范

C++语言程序设计代码规范

1 命名规范

本规范对变量、函数、类(结构)等的名称有严格的规定,在编码过程中务必遵守。

1.1 变量命名规范

变量名称采用匈牙利命名法,即:完整的名称由“缀”和“主体”复合而成。“缀”用于指示变量的种类、数值类型、作用域等属性,由小写字符和下划线(_)组成,根据其附着在“主体”的位置分为前缀和后缀两种。“主体”表示变量的语义。

整个变量名称的格式如下:

<作用域前缀>[<指针缀>]<类型缀><主体><作用域后缀>

下面详细论述。

1.1.1 作用域缀(前缀和后缀)

作用域前缀处在整个变量名的最前面。常用的作用域前缀为:

作用域后缀处在整个变量名的最后面。只有一种情况使用作用域后缀,就是函数的形参必须以作用域后缀结束。

1.1.2 指针缀

如果一个变量是指针,则必须使用指针缀。指针缀使用字母p表示。

以前,在DOS平台下有短指针和长指针的区别,有时称长指针为lp。在Win32平台下已经不存在这个区别了,所以统一使用p, 而不是lp。

1.1.3 类型缀

类型缀由小写字符构成,用于描述变量的类型。注意:

1.不要私自创造出各种各样的前缀。

2.也没有必要在前缀中仔细区分一些细小的类型区别,那样会给代码维护工作带来额外的麻烦。

常用的类型前缀为:

对于其他不在上面表中的结构、类等复杂数据类型,特别是不常使用的和不通用的,不使用前缀。例如:

class Person Jonson;

struct DateTime MyDt;

在应用场合明确的情况下,例如:简单的局部变量,它的值类型前缀有时可以省略。具体见下面的例子。

1.1.4 复合前缀

根据以上规则,变量根据它所在的作用域、类型、是否是指针,得到一个复合前缀。例如:

char g_szFileName[_MAX_PATH]; //全局字符串变量

char* g_pszFileName; //全局字符串指针变量:

char s_szFileName[_MAX_PATH]; //静态字符串变量

char* s_pszFileName; //静态字符串指针变量:

char _s_szFileName[_MAX_PATH]; //局部静态字符串变量

char* _s_pszFileName; //局部静态字符串指针变量:

char m_szFileName[_MAX_PATH]; //类字符串变量

char* m_pszFileName; //类字符串指针变量:

char ms_szFileName[_MAX_PATH]; //类静态字符串变量

char* ms_pszFileName; //类静态字符串指针变量:

更多的例子,参见下面按照作用域讨论变量名一节。

1.1.5 主体

用于描述变量的上下文意义。

一般地,由首字母大写的一个或者多个单词构成,要求用英语作为描述语言。如:FileName,

DateTime。这样就形成了由大小字母夹杂的单词串,这种写法常见于Windows风格的编码。

注:全部单词小写,单词之间使用下划线分割,例如:file_name,date_time。这种写法常见于UNIX风格的编码。但是这种命名方式就不能很好地区分缀和主体,所以在本规范中是不推荐的。

单个的变量声明使用单数形式,不加任何冠词。例如:

CFile _file;

数组使用名词复数形式。

CFile _files[3];

一些容器类的作用类似于数组,所以也使用复数命名,例如:

CArray _arrayFiles;

std::list _listObjects;

1.2 按作用域分类讨论变量命名

1.2.1 参数变量

函数的参数变量要求由后下划线结尾(见作用域缀一节)。在一些纯数学函数中,也可省去数值类型前缀n,其它类型前缀不能省略。例如:

bool Create(PCTSTR pszPathName_);

double Add(double a_, double b_); // 值类型前缀省略

1.2.2 局部变量

由前下划线开头。在纯数学函数中,或者简短的上下文中,也可省去数值类型前缀n,其它类型前缀不能省略。

bool _bRet;

char _szBuffer[_MAX_PATH]

// 下面是一些值类型前缀省略的例子

int _i; // 常表示循环变量

int _temp;

for (int _i = 0; _i < _countof(_szBuffer); _i++)

{

float _a; // _a的作用域很短,所以可以省略

}

1.2.3 全局变量

使用作用域前缀’g_’。全局变量因为作用域很大,所以命名一定要规范。名称的主体部分必须能清晰说明变量的意义,并且不得有不规范的缩写。例如:

CWinApp g_Application;

int g_nVersion;

HINSTANCE g_hInstance;

1.2.4 静态变量

使用作用域前缀’s_’。局部静态变量使用前缀’_s_’,注意看下面的例子。例如:

CNcWinApp s_App;

int s_nVersion;

HINSTANCE s_hInst;

void f()

{

static int _s_nCallTimes;

}

1.2.5 其他例子

下面是变量命名的一些例子:

extern HINSTANCE g_hInst; //全局变量

static int s_nTimer = 0; //全局静态变量

int func(int nCounter_, int* pnSize_) //参数变量

{

//局部变量

long _nTotalItem;

static long _s_nCount = 0;

int _nVar;

LPSTR _pszBuffer;

TCHAR _szCache[_MAX_PATH];

int _var1; // 省去类型前缀

}

1.3 常数

目前本规范对常数类的命名规范还不是非常清晰。很多常数作用域也很大,类似于全局变量,所以命名一定要规范。名称的主体部分必须能清晰说明变量的意义,并且不得有不规范的缩写。

常数分成以下几类讨论。

1.3.1 宏定义的常数

#define定义的常数要求用大写字母和下划线混合命名,但是并不强制要求在每个单词之间插入下划线。如:

#define LEFT 0 // okay

#define RIGHT 1 // okay

#define UP_DOWN 1 // okay

#define Right 1 // not recommended

1.3.2 const定义的常数

(未完成)

const常数员命名既可以遵循一般变量命名法则;也可以遵循常数命名法则;

1.3.3 枚举

(未完成)

枚举命名:枚举名服从一般变量命名法则。

枚举成员命名:枚举成员名既可以遵循一般变量命名法则;也可以遵循常数命名法则;

1.4 函数命名规范

函数命名采用大小写夹杂的动宾结构命名。如:

int GetLastError(); // okay

int getlasterror(); // 全小写,不推荐

int get_last_error(); //全小写,不推荐

int OpenFile(); // okay

int FileOpen(); // 非动宾结构,不推荐

属于同一类的一组函数可以使用共同前缀来标识。如:

int NetGetError();

int NetOpen();

int NetClose();

int NetSend();

int NetReceive();

内部实现函数可以使用前下划线作为前缀,例如:

class MyClass

{

// . . .

private:

void _init();

};

仅在某一个代码文件使用的内部实现函数应定义为静态函数,这可以避免作用域冲突。

1.5 结构命名规范

结构命名:结构名服从一般变量命名法则。

结构成员命名:结构变量名服从一般变量命名法则。如:

struct DateTime

{

int nYear;

int nMonth;

int nDay;

int nHour;

int nMinite;

int nSecond;

};

本规范不采用对结构成员使用表示结构的前缀。如:

struct DateTime

{

int dtYear; // error

int dtMonth; // error

int dtDay; // error

int dtHour; // error

int dtMinite; // error

int dtSecond; // error

};

一般说来,结构中不包含成员函数(偶尔,仅仅包含构造函数是允许的)。如果希望把结构改造成包含丰富成员函数的对象,那样的话,请使用类(class)。其命名规范见下面叙述。

1.6 类(class)

1.6.1 类布局

在类中,推荐先是public节的内容,然后是protected节,最后是private节。也推荐参考MFC的类布局,使用

// Construction

// Attributes

// Operations

// Overrides

// Implementation

等注释来布局。

1.6.2 类成员

类成员变量:遵循一般变量命名法则,同时要求使用’m_’前缀。

类成员函数:遵循一般函数命名法则;

嵌套类、枚举、嵌套结构:遵循一般类、结构命名法则;

综合以上,举一例如:

class MyClass :: public BaseClass

{

public: //first

MyClass();

~MyClass();

protected: //then

int m_nVar1;

int m_nVar2;

private: //last

int DoSomething();

};

2 布局规范

需要注意的是,非公共接口的结构、类、常数、函数原形不要放在公共头文件中,而是应该放在私有头文件或实现文件中。

2.1 文件标头

文件标头必须包括版权说明、简短介绍。下面是文件标头的一个例子:

// Copyright (c) Naiky Company. All rights reserved.

//

// Abstract:

//

///////////////////////////////////////////////////////////

#include . . .

#include . . .

#include . . .

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE[] = __FILE__;

#endif

自VC6.0以来,new/delete操作增加了调试版本,对检测内存泄露非常有帮助。所以上面的代码包含这部分内容。

2.2 函数说明

函数说明是可选的。可以使用中文或者英文编写。

一般说来,公开接口、公共函数应该有说明,这样便于代码维护。

函数说明有两个地方可以放,一是放在函数声明中,而是放在函数实现中。这两个地方的函数说明有所不同。

函数声明处的说明:

此处的说明目的是告诉使用者,该函数的用法以及应该注意的问题,应包括函数的作用、入口参数和返回值说明,以及需要注意的声明内容。

下面是一个声明处说明的例子:

//Description:

// [You can fill some description here ]

//

//Entries:

// [Parameter1] [about Parameter1]

// [Parameter2] [about Parameter2]

// [Parameter3] [about Parameter3]

//

//Return:

// [about return value]

//[Note:]

// [this is an optional section]

函数实现处的说明:

此处的说明目的是告诉代码维护人员,该函数实现的细节以及在实现过程中需要注意的问题。

以下是摘自实际代码的一个例子:

/****

DESCRIPTION:

Get the distance from a 3d-point to a 3d-line.

ALGORITHM:

A line in 3D is given by the parametric vector with parameter t:

/ x0 + (x1 - x0) * t \

L = | y0 + (y1 - y0) * t | -----------------------(1)

\ z0 + (z1 - z0) * t /

A given point is

P = (u1, v1, w1)

The distance between the point and the line is therefore

r^2 = (u1 - x0 - (x1 - x0)*t)^2

+ (v1 - y0 - (y1 - y0)*t)^2

+ (w1 - z0 - (z1 - z0)*t)^2 ----------------------(2) To minimize the distance, take

d(r^2) / dt = 0 -------------------------(3)

assume that

a = (x1 - x0) u = (u1 - x0)

b = (y1 - y0) v = (v1 - y0)

c = (z1 - z0) w = (w1 - z0)

therefore

-2a * (u - a*t) - 2b(v - b*t) - 2c(w - c*t) = 0 -------(4) therefore

a*u + b*v + c*w

t = ------------------ ------------------------(5) a*a + b*b + c*c

reference to (2), get

r^2 = (u - a*t)^2 + (v - b*t)^2 + (w - c*t)^2 -----------(6) PARAMETERS:

POINT3DD point_ the given point

POINT3DD line0_, POINT3DD line1_ the given line RETURNS:

the power 2 of the distance

****/

inline double distance2_point_line(POINT3DD point_, POINT3DD line0_, POINT3DD line1_)

{

// . . .

}

2.3 代码布局

代码使用制表符缩进,制表符宽度为4。

代码行宽一般不超过80列(不过,现在的显示器越来越大,阅读更加方便,所以可以考虑把代码行宽设定到100列)。超过的部分折行到下一行,折行要求缩进一个制表符。

2.3.1 空格使用规范

保留字后面空一格。如:

for (int _i = 0; _i < 3; _i++) // okey

for(int _i = 0; _i < 3; _i++) // not recommended

while (true) // ok

while(true) // not recommended

if (a == b) // ok

switch (sw) // ok

双目操作符左右各空一格,括号((,),[,])左右不空格。如:

a =

b = c; // ok

a=b=c; // not recommended

a = (

b == c) // ok

a = (b==c) // not recommended

a = (

b ==

c ) // not recommended

a = (

b == (c&d)) // not recommended

a = b[1] // ok

a = b[ 1 ] // not recommended

if (a == b) // ok

if ( a == b ) // not recommended

单目操作符不空格

a++; // ok

++a; // ok

a * -b; // ok

~a // ok

逗号、分号前面紧贴上一个字符,后面空一格。如:

func(int a_, int b_, int c_) // ok

func(int a_,int b_,int c_) // not recommended

func(int a_ , int b_ , int c_) // not recommended

for (int _loop = 0; _loop < _MAX; _loop++) // ok

for (int _loop = 0;_loop < _MAX;_loop++) // not recommended

变量(常量)的类型、名称及其它修饰符之间使用空格,而不是制表符分开,例如:int _nVar1 = 0; // ok

double _nVar2 = 1.0;

long _nVar3 = 2;

DWORD _nVar4 = 0xFFFF;

const float c_nMAX_VAL = 99999.9999;

int _nVar1 = 0; // not recommended

double _nVar2 = 1.0;

long _nVar3 = 2;

DWORD _nVar4 = 0xFFFF;

2.3.2 指针符位置

指针贴近类型,而不是变量。如:

// following lines are fine and recommended style!

long* _PnVar3 = GetPointer();

DWORD* _nVar4 = (DWORD*)0xFFFF;

const char* _pszString = “This is a test string”;

// not recommended!

long *_PnVar3 = GetPointer();

DWORD *_nVar4 = (DWORD*)0xFFFF;

const char *_pszString = “This is a test string”;

在VC6.0环境下,我们设计了宏StandardFormat用来格式化代码。可以完成大部分格式化工作。也可以用VC++中Edit |Advanced| Tabify Selection和Edit| Advanced| Untabify Selection命令来格式化代码。

下面是一些推荐布局风格:

// Ex. 1

if (a == b)

{

//some code here

}

// Ex. 2

switch (_nSwitchVar)

{

case 1:

{

//some code here

int _temp = // . . .

}

break;

case 2:

f(2);

break;

case 3:

f(3);

break;

default:

assert(false);

break;

}

不推荐风格:

if (a == b){

//some code here

}

3 语法风格

避免不好的语法习惯。

3.1 关于if

不要在if表达式中使用’=’。例如:

int _a;

if (_a = GetValue())

{

//some code here

}

应该写为:

int _a = GetValue();

if (_a) //or if (_a != 0)

{

//some code here

}

下面的代码实际上可能并不按你想象的方式运行:

if (a == b)

if (d == e)

x = 1;

else

func();

3.2 变量声明与定义

不要使用未赋初值的变量,尤其是指针:

int _a;

if (GetSomeValue() == OK)

_a = 100;

Func(a); //at some cases, “a” has not get an initial value here 3.3 关于宏

不要在宏中使用表达式或者调用函数:

#define __max(a, b) ((a) > (b) ? (a) : (b))

__max(func(), 3) // not recommended!!!

__max(var++, 3) // not recommended!!!

int _a = func();

__max(_a, 3) // okey

尽量使用inline函数代替函数宏。

尽量使用const代替常数宏。

3.4 测试代码

一些测试代码要用_DEBUG包围起来。

// bad code!!!

if (pszBuffer)

{

ASSERT(strlen(pszBuffer) < 100);

}

// good code

#ifdef _DEBUG

if (pszBuffer)

{

ASSERT(strlen(pszBuffer) < 100);

}

#endif

4 注释

关于代码注释原则有两条:

1、代码中注释原则上不少于代码量的20%,最低不得少于代码量的10%;

2、在进行Bug维护时,功能维护单的内容必须全部出现在代码中,否则在代码最终评审时会进行相应的扣分。

C语言程序设计第三版习题库答案

C 语言程序设计(第三版)习题库 1、设圆半径r=,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf 输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 #include<> main(){ floatr,h,C1,Sa,Sb,Va,Vb; scanf(__”%f ”__,&r); scanf(”%d ”,__&h _);; C1=2**r; Sa=*r*r; Sb=4*Sa; Va=4**r*r*r/3; Vb=Sa*h; printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f ”,Cl,Sa,Sb,Va,Vb ); } 2、输入一个华氏温度,要求输出摄氏温度。公式为c=5(F-32)/9 输出要求有文字说明,取位2小数。 #include<> main(){ floatF,c; scanf("%f",&F); ____c=5*(F-32)/9______; printf("c=%.2f",c); } 3、有一函数:?? ???≥-<≤-<=10113101121x x x x x x y 写一程序,输入x 值,输出y 值。 #include<> main(){ intx,y; printf("输入x :"); scanf("%d",&x); if(x<1){/*x<1*/ y=x; printf("x=%3d,y=x=%d\n",x,y);

}elseif(____x<10_______){/*1≤x-10*/ _____y=2*x-1_______; printf("x=%3d,y=2*x-1=%d\n",x,y); }else{/*x≥10*/ y=3*x-11; printf("x=%3d,y=3*x-11=%d\n",x#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d\n",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }scanf("%d",&x);

C语言程序设计试题集与答案解析

一.填空 1. 每个C程序都必须有且仅有一个________ 函数。 2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。 3. 软件是程序,以及______、使用和维护所需要的所有文档。 4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。 5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。 6. C语言是由________组成的。 7. C语言的函数可分为主函数main、标准库函数和_________。 8. 一个函数是由两部分组成的,即:________和函数体。 9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。 10. 程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作 的要求。不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。 11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。 12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对 象,也可以用标号和符号来代替地址、常量和变量。

13. 在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。 14. C程序的执行均是由执行_________开始。 15. 函数体即为包含在{}内的部分。它分为________和为完成功能任务由若干个C 语句 组成的执行部分。 16. C语言程序中一条简单语句是以________字符作为结束符的。 17. C语言是结构化、________的程序设计语言。 18. 由于计算机硬件不能直接识别高级语言中的语句,因此,必须经过“_______程序”,将用高级语言编写的程序翻译成计算机硬件所能识别的机器语言程序方可执行。 19. 用高级语言编写的程序需翻译成计算机硬件所能识别的机器语言程序方可执行。所以 说,用高级语言进行程序设计,其编程效率高,方便易用,但_______没有低级语言高。 20.

c语言程序设计第五版习题答案

习题解析与答案 第1章C语言概述 一.简答题 1.概述C语言的主要特点。 【解答】 (1)语言简洁、紧凑,使用方便、灵活。 (2)数据类型丰富,表达能力强。 (3)运算符多样。C语言中的运算符包含的范围非常广泛。 (4)具有结构化的控制语句。如if…else语句、while语句、do while语句、switch 语句、for语句。 (5)允许直接访问物理地址。C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。 (6)所生成的目标代码质量高,可移植性好。 2.构成C语言程序的基本单位是什么?它由哪几部分组成? 【解答】函数是构成C语言程序的基本单位。一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。 3.C语言程序的运行一般要经过哪几个步骤? 【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。 二.运行程序写结果 1.输入下面程序并运行。 main() { int a1,a2,x; a1=100; a2=50; x=a1-a2; printf(″x=%d\n″,x); } 【解答】运行结果为:x=50 2.输入下面程序并运行。 main() { int a1,a2,x; a1=10; a2=20; x=a1*a2; printf(″a1=%d,a2=%d\n″,a1,a2); printf(″x=%d\n″,x); } 【解答】运行结果为:a1=10,a2=20 x=200 3.输入下面程序并运行。

#include main() { printf("******\n"); printf(" *****\n"); printf(" ****\n"); printf(" ***\n"); printf(" **\n"); printf(" *\n"); } 【解答】运行结果为:****** ***** **** *** ** * 思考:可以修改程序,使之输出平行四边形,等腰三角形等图形。 三.编程题 1.参照本章例题,编写一个C程序,用于显示如下信息: ************************* I love C programs! ************************* 【分析与提示】 ①要有文件包含语句#include 。C语言中没有数据的输入、输出等功能,数据的输入、输出都是通过调用系统提供的库函数scanf和printf等来实现的。这些函数的说明都包括在stdio.h文件中。 ②main是主函数的名称。用{}括起来的内容是函数体,函数体由若干条语句组成,这是计算机要执行的部分,每条语句以分号“;”结束。 ③注意显示的信息有三行,所以要用到换行符“\n”。 参考代码: #include main() { printf("************************\n"); printf(" I love C programs! \n"); printf("************************\n"); }

(完整版)C语言程序设计练习及答案

《C语言程序设计》练习及答案 得分评卷人复查人 一、单选题,每小题1分,共60分(将正确答案的序号写在题目的括号中)。 1、结构化程序设计的三种基本控制结构是(D )。 A、主程序、子程序、函数 B、输入、处理、输出 C、调用,返回,转移 D、顺序、选择、循环 2、下列关于C程序变量的叙述, ( D )是错误的。 A、变量名必须由字母或下划线开头。 B、程序中的变量必须在被使用之前定义。 C、不同的基本类型的变量之间可以混合运算。 D、变量的数据类型决定变量的"作用域"。 3、能将C语言编写的源程序转换为目标程序的软件是(C )。 A、编辑程序 B、汇编程序 C、编译程序 D、解释程序 4、以下符号中,合法的用户标识符是( D )。 A、-p B、int C、3ab D、_xt_ 5、以下选项中,与m=n++完全等价的表达式是( C )。 A、m=++n B、m+=n+1 C、m=n, n=n+1 D、n=n+1,m=n 6、若有定义:int aa[8];。则以下表达式中不能代表数组元aa[1]的地址的是(C )。 A、&aa[0]+1 B、&aa[1] C、&aa[0]++ D、aa+1 7、表达式!5&(7+3)&&(4+5)的值是(A)。 A、0 B、1 C、5 D、9 8、以下选项中非法的C语言表达式是(A )。 A、x+1=x+1 B、0<=x<100 C、i=j==0 D、(char)(65+3) 9、在TURBO C中, int类型变量所占字节数是(B )。 A、1 B、2 C、4 D、8 10、C语言中基本的数据类型包括(B)。 A、整型,实型,逻辑型 B、整型,实型,字符型

C语言程序设计第二版习题参考答案

C语言程序设计第二版 习题参考答案 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-

C语言程序设计习题参考答案 习题 1 一、判断题 1.在计算机中,小数点和正负号都有专用部件来保存和表示。 2.二进制是由0和1两个数字组成的进制方式。 3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。 4.在整数的二进制表示方法中,0的原码、反码都有两种形式。 5.有符号数有三种表示法:原码、反码和补码。 6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。 解:1.F2.T 3.T 4.T 5.T 6.T 二、单选题 1.在计算机中,最适合进行数值加减运算的数值编码是。 A. 原码 B. 反码 C. 补码 D. 移码 2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII 码为十进制数。 A. 112 B. 120 C. 121 D. 122 3.关于ASCII码,在计算机中的表示方法准确地描述是。 A. 使用8位二进制数,最右边一位为1 B. 使用8位二进制数,最左边一位为1 C. 使用8位二进制数,最右边一位为0 D. 使用8位二进制数,最左边一位为0 4.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是 ___________。 A. X∧Y=1000 B. X∨Y=1111 C. X⊕Y=0011 D. ˉY=1000 5.下列叙述中正确的是()。 A.高级语言就是机器语言 B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序 C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种 D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。 A.生成可执行文件B.生成目标文件 C.输出运行结果D.自动保存源文件 7.下列叙述中不正确的是()。 A.main函数在C程序中必须有且只有一个 B. C程序的执行从main函数开始,所以main函数必须放在程序最前面 C. 函数可以带参数,也可以不带参数。

C语言程序设计习题答案

C 语言程序设计习题答案 习题一 C 语言程序设计概述 一、名词解释 (1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)汇编程序P2 (5)高级语言P2 (6)编译程序P3 (7)解释程序P3 (8)算法P4 (9)结构化的程序设计P9 二、简述题 1. 设计程序时应遵循哪些基本原则?P4 答:正确性、可靠性、简明性、有效性、可维护性、可移植性。 2. 算法的要素是什么?算法具有哪些特点? 答:算法的要素是:操作与控制结构;算法的特点有:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。 3. 算法的表示形式有哪几种? 答:算法的表示形式有:自然语言、传统流程图、伪代码、结构化的流程图(N_S 流程图,盒图)。 4. 有哪三种基本结构? 答:三种基本结构是:顺序结构、选择结构和循环结构。 5. 传统流程图与N-S 流程图最大的区别是什么? 答:N-S 流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。 三、用传统流程图、N-S 图分别表示求解以下问题的算法。 1. 有3个数a ,b ,c ,要求按由大到小的顺序把它们输出。 2. 依次将10个数输入,求出其中最大的数 和最小的数并输出。 3. 求1+2+3+…+100的值。

5. 求下列分段函数的值。 6. 求100~200之间的所有素数。 7. 求一元二次方程ax 2+bx+c=0的根。分别考虑d=b 2-4ac 大于0、等于0和小于0三种情况。 四、注释下面C 程序的各个组成部分。 main() /*主函数 */ { /*程序开始 */ int a,k,m; /*定义三个用来存放整数的变量 */ a=10; /*将整数10赋值给变量a */ k=2; /*将整数2赋值给变量k */ m=1; /*将整数1赋值给变量1 */ a=(k+m)*k/(k-m); /*先求出算术表达式的值,并将其赋值给变量a */ printf("%d\n",a); /*在屏幕上打印出变量a 的值 */ } /*程序结束 */ 习题二 数据类型、运算符与表达式 一、选择题 1~10:BCDCB DDBCA 11~20: ADDAA DBADC 21~28: DABAD CDD Y= 3X (X<1) 4X-1 (X=1) 5(X-1)+6 (1

C语言程序设计第三版谭浩强课后习题答案完整版

C语言程序设计第三版谭浩强 课后习题答案完整版 第一章 1.5请参照本章例题,编写一个C程序,输出以下信息:************************** V ery Good! ************************** 解: mian() {printf(“**************************”); printf(“\n”); printf(“V ery Good!\n”); printf(“\n”); printf(“**************************”); } 1.6 编写一个程序,输入a、b、c三个值,输出其中最大值。解: mian() {int a,b,c,max; printf(“请输入三个数a,b,c:\n”); scanf(“%d,%d,%d”,&a,&b,&c); max=a; if(max main() { char c1=?C?,c2=?h?,c3=?i?,c4=?n?,c5=?a?; c1+=4; c2+=4; c3+=4; c4+=4; c5+=4; printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5); } 运行结果: 密码是Glmre 3.9求下面算术表达式的值。 (1)x+a%3*(int)(x+y)%2/4 设x=2.5,a=7,y=4.7 (2)(float)(a+b)/2+(int)x%(int)y 设a=2,b=3,x=3.5,y=2.5 (1)2.5 (2)3.5 3.10写出程序运行的结果。 main() {int i,j,m,n; i=8; j=10; m=++i; n=j++; printf(“%d,%d,%d,%d”,i,j,m,n); } 解: 9,11,9,10 3.12 写出下面表达式运算后a的值,设原来a=12。设a和n都已定义为整型变量。 (1)a+=a (2)a-=2 (3)a*=2+3 (4)a/=a+a (5)a%=(n%=2),n的值等于5 (6)a+=a-=a*=a 解: (1) 24 (2) 10 (3) 60 (4) 0 (5) 0 (6) 0 第四章 4.4若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1=’a’,c2=’b’。想得到以下输出格式和结果,请写出程序(包括定义变量类型和设计输出)。 a=_3_ _b=_4_ _c=_5 x=1.200000,y=2.400000,z=-3.600000 x+y=_3.600_ _y+z=-1.20_ _z+x=-2.40 c1=ˊaˊ_or_97(ASCII)

c语言程序设计第五版习题答案

c语言程序设计第五版习 题答案 Prepared on 24 November 2020

习题解析与答案 第1章C语言概述 一.简答题 1.概述C语言的主要特点。 【解答】 (1)语言简洁、紧凑,使用方便、灵活。 (2)数据类型丰富,表达能力强。 (3)运算符多样。C语言中的运算符包含的范围非常广泛。 (4)具有结构化的控制语句。如if…else语句、while语句、dowhile语句、switch语句、for语句。 (5)允许直接访问物理地址。C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。 (6)所生成的目标代码质量高,可移植性好。 2.构成C语言程序的基本单位是什么它由哪几部分组成 【解答】函数是构成C语言程序的基本单位。一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。 3.C语言程序的运行一般要经过哪几个步骤 【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。 二.运行程序写结果 1.输入下面程序并运行。 main() { inta1,a2,x; a1=100; a2=50; x=a1-a2; printf(″x=%d\n″,x); } 【解答】运行结果为:x=50 2.输入下面程序并运行。 main()

{ inta1,a2,x; a1=10; a2=20; x=a1*a2; printf(″a1=%d,a2=%d\n″,a1,a2); printf(″x=%d\n″,x); } 【解答】运行结果为:a1=10,a2=20 x=200 三.编程题 1.参照本章例题,编写一个C程序,用于显示如下信息: ************************* IloveCprograms! ************************* 【分析与提示】 ①要有文件包含语句#include<>。C语言中没有数据的输入、输出等功 能,数据的输入、输出都是通过调用系统提供的库函数scanf和printf 等来实现的。这些函数的说明都包括在文件中。 ②main是主函数的名称。用{}括起来的内容是函数体,函数体由若干 条语句组成,这是计算机要执行的部分,每条语句以分号“;”结束。 ③注意显示的信息有三行,所以要用到换行符“\n”。 参考代码: #include<> main() { printf("************************\n"); printf("IloveCprograms!\n"); printf("************************\n"); } 第2章数据类型及其运算一.简答题 1.C语言中的数据类型主要有哪几类 【解答】短整型(shortint) 整型整型(int) 长整型(longint) 基本类型字符型(char)(float) 实型(浮点型) 双精度(double) 枚举类型(enum) 数组类型

《C语言程序设计教程》习题参考答案

《C语言程序设计教程》习题参考答案 祝胜林主编 华南理工大学出版社 【习题1】 (1) 【习题2】 (2) 【习题3】 (3) 【习题4】 (5) 【习题5】 (8) 【习题6】 (11) 【习题7】 (14) 【习题8】 (16) 【习题9】 (16) 【习题10】 (18)

一、简答题(在课本中寻找答案,略) 1.1C程序的基本结构包括哪些内容? 1.2如何定义标识符? 1.3输入格式、输出格式的组成包括哪些内容? 1.4C语言函数分为哪两类? 1.5计算表达式的值应该考虑哪些方面? 1.6上机调试程序的步骤如何? 二、判断并改错 1.7C程序执行的入口是main()函数,所以main函数必须放在程序的开头。 错误:main函数可以放在程序的任何位置。并不限定在程序的开头。 1.8定义一个函数包括数据说明部分和执行语句部分,两者可以交叉出现。 错误:不可以交叉出现,数据说明部分在执行语句部分的前面。 1.9编辑与编译不是一回事。 错误:不是一回事。编辑完成源程序的输入和修改;编译是对源程序进行语法检查,如果无语法错误,则生成目标程序。 1.10scanf("%d,%d",&x,&y);的正确输入格式:3,4<回车>。 正确 1.11注释内容太多会影响程序的执行效率。 错误:不会影响程序的执行效率。因为在编译时,编译系统将注释内容删除或用空格代替,所以注释内容不会编译到目标程序中。 1.12所有的数学公式可以直接出现在源程序中。 错误:数学公式需要转换成C语言能够接受的公式才能出现在源程序中。 三、编程题 1.13在屏幕上输出自己名字的拼音。 提示:中文名字叫?张三?,对应的拼音为?Zhang San?,输出用printf()函数。 1.14 输入圆的半径,求圆的周长,并将结果保留两位小数输出到屏幕上。 提示:定义圆的半径r,圆的周长:2*3.14*r,输出结果保留2位小数可以用%.2f 1.15输入两个整数,输出其中最大者。 提示:模仿例1.3 1.16 输入三个整数,输出其中最小者。 提示: min(min(a,b),c);

c语言程序设计题目及答案

一、程序设计共113 题第1 题题 号:319 #include "stdio.h" void wwjt(); int fun(int m) { int i,k=1; if(m<=1) k=0; for(i=2;i #include #define M 3 #define N 4 void wwjt(); void fun(int tt[M][N],int pp[N]) { int i,j; for(j=0;jpp[j]) pp[j]=tt[i][j]; } 第3 题题号:375 功能:从键盘上输入任意实数, 求出其所对应的函数值。 z=e 的x 次幂( x>10) z=log(x+3) (x>-3) z=sin(x)/((cos(x)+4) #include #include void wwjt(); double y(float x) { double z; if(x>10) z=exp(x); else if(x>-3) z=log(x+3); else z=sin(x)/(cos(x)+4); return(z); } 第4 题题号:334 功能:求给定正整数n 以内的素数之积。( n<28) #include #include"conio.h" void wwjt(); long fun(int n) { long i,k; long s=1; for(i=2;i<=n;i++) {for(k=2;k #include"conio.h" void wwjt(); long int fun(int n) { long s=1,i; for(i=2;i<=n;i++) if(n%i==0)s=s*i; return s; } 第6 题题号:50 功能:求出菲波那契数列的前一项与后一项之比的极限的 近似值例如:当误差为0.0001 时,函数值为0.618056 。 #include #include "math.h" void wwjt(); float fun() { float f1=1,f2=1,f3; float r1=2,r2; do {r2=r1; r1=f1/f2; f3=f1+f2; f1=f2; f2=f3; }while(fabs(r1-r2)>1e-4); return r1; } 第7 题题号:394 功能:产生20个[30,120] 上的随机整数放入二维数组 a[5][4] 中, 求其中的最小值。 #include "stdlib.h" #include void wwjt(); int amin(int a[5][4]) { int i,j,s; s=a[0][0];

C语言程序设计试题及答案

C语言程序设计试题及 答案 内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)

C语言程序设计 一、选择题(共40分,每小题2分) 1、以下叙述不正确的是() A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个main函数 C、C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 2、下列四个选项中,是不合法的用户标识符的选项是() A、abc B、12AC C、sun D、 A2 3、设有语句int a=4;则执行了语句a+=a- =a*a后,变量a的值是() A、-24 B、0 C、4 D、16 4、下列运算符中优先级最高的是() A、< B、+ C、&& D、== 5、在C语言中,运算对象必须是整型数的运算符是() A、% B、/ C、%和/ D、 + 6、以下关于运算符的优先顺序的描述正确的是() A、关系运算符<算术运算符<赋值运算符<逻辑与运算符 B、逻辑与运算符<关系运算符<算术运算符<赋值运算符 C、赋值运算符<逻辑与运算符<关系运算符<算术运算符 D、算术运算符<关系运算符<赋值运算符<逻辑与运算符 7、在C语言中,如果下面的变量都是int类型,则输出的结果是() sum=pad=5;pAd=sum++,pAd++,++pAd;

printf(“%d\n”,pad); A、7 B、6 C、5 D、4 8、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是() A、 INPUT x、y、z; B、scanf(“%d%d%d”,&x,&y,&z); C、 scanf(“%d%d%d”,x,y,z); D、read(“%d%d%d”,&x,&y,&z); 9、假定从键盘输入23456< 回车 >,下面程序的输出结果是:() void main ( ) { int m,n; scanf(“%2d%3d”,&m,&n); printf(“m=%d n=%d\n”,m,n); } A、m=23 n=45 B、m=234 n=56 C、m=23 n=456 D、语句有错误 10、若运行时,给变量x输入12,则以下程序的运行结果是() main( ) { int x,y; scanf(“%d”,&x); y=x>12?x+10:x-12; printf(“%d\n”,y); } A、 0 B、 22 C、 12 D、10 11、C语言中while和do-while循环的主要区别()

C语言程序设计答案

C语言程序设计答案集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)

C语言程序设计(第三版)黄保和江弋主编第一到四章编程题答案 2.1 #include #include void main() { printf("%g\n",fabs(-6)+16.3*5.4); } 2.2 #include #include main() { int a,b ; printf("Input a,b:\n"); scanf("%d%d",&a,&b); if (a>b) printf("%g\n",sqrt(a)); else printf("%g\n",sqrt(b)); } 2.3

#include main() { float a; printf("Input a:\n"); scanf("%g",&a); printf("the square of a=%g\ta cubed=%g\n",a*a,a*a*a); } 2.4 #include main() { float a,b,c,d,sum; printf("Input a,b,c,d:\n"); scanf("%f%f%f%f",&a,&b,&c,&d); sum=a+b+c+d; printf("%f\n",sum/4); } 2.5 #include main() {

int n,a,b,c,d,e,s; printf("请输入一个五位数:\n"); scanf("%d",&n); a=n%10; b=n/10%10; c=n/100%10; d=n/1000%10; e=n/10000; s=a+b+c+d+e; printf("%d\n",s); } 3.2 #include main() { float r,C,S; printf("Input r :\n"); scanf("%f",&r); C=2*3.14159*r; S=3.141459*r*r; printf("C=%.2f\tS=%.2f\n",C,S); }

c语言程序设计答案

C语言: C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。 C语言程序设计实验及习题解答: 《C语言程序设计实验及习题解答》是2016年11月清华大学出版社出版的图书,作者是张书云、朱雷、海沫、张悦今、汤健。 内容简介: 本书是为了配合《C语言程序设计》(ISBN: 9787302440055,清华大学出版社)一书的学习而编写的配套教材,共包含两部分内容: 第1部分每一章由三部分内容构成,包括对《C语言程序设计》教材对应章节的知识点进行总结、归纳、讲解,结合知识点设置相应的实验内容,结合实验所涉及的知识点列出了常见错误及解决方法。本部分第1章结合实验题目详细介绍了Visual C++ 6.0及DEV C++集成开发环境的使用方法。第2部分给出了《C语言程序设计》一书中所有习题的详细解题思路及参考答案。 本书内容丰富、概念清晰、实用性强,是学习C语言的极佳参考书。本书可以作为高等院校,特别是财经类院校C语言程序设计

课程的实验教学用书,也可以供广大C语言程序设计初学者自学参考。 目录: 第1部分知识点讲解及实验安排 第1章C语言概述3 1.1知识要点3 1.2上机实验4 1.3实验过程中的常见问题与解决方法11 第2章数据类型、常量与变量17 2.1知识要点17 2.2上机实验17 2.3实验过程中的常见问题与解决方法20 第3章数据的运算与输入输出22 3.1知识要点22 3.2上机实验22 3.3实验过程中的常见问题与解决方法26 第4章C语言三种基本结构程序设计29 4.1选择结构29 4.1.1知识要点29 4.1.2上机实验29 4.1.3实验过程中的常见问题与解决方法33 4.2循环结构基础35

C语言程序设计课后答案

第二章C++简单程序设计 2-10 执行完下列语句后,a、b、c三个变量的值为多少? a = 30; b = a++; c = ++a; a:32 ;b:30 ;c:32; 2-13 写一条for语句,计数条件为n从100到200,步长为2;然后用while和do…while语句完成同样的循环。 解: for循环: for (int n = 100; n <= 200; n += 2); while循环: int x = 100; while (n <= 200) n += 2; do…while循环: int n = 100; do { n += 2; } while(n <= 200); 2-17 修改下面这个程序中的错误,改正后它的运行结果是什么? #include <> void main() int i int j; i = 10; /* 给i赋值 j = 20; /* 给j赋值*/ cout << "i + j = << i + j; /* 输出结果*/ return 0; } 解: 改正: #include <> int main() { int i; int j; i = 10; 09:;<>?@ABCDEFGHIJKLMNOP_QRSTUV WXYZ[\]^'abcdefghijklmnopqrstuvwxyz<| >~s 2-21 运行下面的程序,观察其输出,与你的设想是否相同? #include <> int main() { unsigned int x; unsigned int y = 100; unsigned int z = 50; x= y - z; cout << "Difference is: " << x; x = z - y; cout << "\nNow difference is: " << x < int main() { int myAge = 39; n"; cout << "You are: " << yourAge << " years old\n"; myAge++; .\n"; cout << "I am: " << myAge << " years old.\n"; cout << "You are: " << yourAge << " years old\n"; cout << "Another year passes\n"; cout << "I am: " << myAge++ << " years old.\n"; cout << "You are: " << ++yourAge << " years old\n"; cout << "Let's print it again.\n"; cout << "I am: " << myAge << " years old.\n"; cout << "You are: " << yourAge << " years old\n"; return 0; } 解: 程序运行输出: I am 39 years old You are 39 years old One year passes I am 40 years old You are 40 years old Another year passes I am 40 years old You are 41 years old Let's print it again I am 41 years old You are 41 years old 2-28 编写一个完整的程序,实现功能: 向用户提问"现在正在下雨吗?",提示 用户输入Y或N。若输入为Y,显示"现 在正在下雨。";若输入为N,显示"现 在没有下雨。";否则继续提问"现在正 在下雨吗?" 源程序: #include <> #include <> void main() { char flag; while(1) { cout << "现在正在下雨吗?(Yes or No):"; cin >> flag; if ( toupper(flag) == 'Y') { cout << "现在正在下雨。"; break; } if ( toupper(flag) == 'N') { cout << "现在没有下雨。"; break; } } } 程序运行输出: 现在正在下雨吗?(Yes or No):x 现在正在下雨吗?(Yes or No):l 现在正在下雨吗?(Yes or No):q 现在正在下雨吗?(Yes or No):n 现在没有下雨。 或: 现在正在下雨吗?(Yes or No):y 现在正在下雨。 2-29 编写一个完整的程序,运行时向用 户提问"你考试考了多少分?(0~100)", 接收输入后判断其等级,显示出来。规 则如下: 解: #include <> void main() { int i,score; cout << "你考试考了多少分?(0~100):";

c语言程序设计答案

1什么是程序?什么是编程? 程序:是一组可以识别和执行的指令,每一条指令都使计算机执行特定的操作 编程:它涉及从确定任务到获得结果和编写文档的整个过程 2为什么我们需要计算机语言?高级语言的特点是什么? 为什么你需要一种计算机语言:计算机语言解决了人与计算机之间通信的语言问题,这样计算机和人就可以相互识别了 高级语言的特点是什么 2.1高级语言的数据结构比汇编语言和机器语言丰富; 2.2高级语言与特定机器结构的关系与汇编语言和机器语言的关系不密切; 2.3高级语言更接近自然语言,更容易掌握; 2.4在执行计算机之前,必须对用高级语言编写的程序进行编译或解释; 三。正确理解下列术语及其含义: (1)源程序,目标程序,可执行程序。

源程序:指按照一定的编程语言规范编写的未编译的文本文件,它是一系列人类可读的计算机语言指令 目标程序:源程序编译后,可由计算机直接运行的一组源代码。Obj在计算机文件中用作扩展名 可执行程序:将所有编译后的目标模块与函数库连接并组装成一个整体,生成一个可由计算机执行的目标程序,成为可执行程序 (2)程序编辑、程序编译和程序链接。 程序编辑:输入或编辑源程序。 程序编制: 首先,使用C提供的预处理器对程序中的预处理指令进行编译和预处理 检查源程序的语法以确定是否有语法错误,直到没有语法错误为止 编译器将自动将源程序转换为二进制形式的目标程序 程序连接:将所有编译的对象模块连接并组装成一个整体的过程称为程序连接

(3)程序,程序模块,程序文件。 程序:能被计算机识别和执行的一组指令,能在电子计算机上运行以满足人们的某些需要 程序模块:一个独立的、可识别的程序指令级,可由汇编程序、编译程序、装入程序或翻译程序作为一个整体进行处理 程序文件:程序文件称为程序文件。程序文件存储程序,包括源程序和可执行程序(4)函数,主函数,调用函数,库函数。 函数:封装一段常用的代码,可以直接调用它来完成某些功能 主函数:也称为主函数,是程序执行的起点 调用函数:当一个函数调用另一个函数时,调用第二个函数 库函数:通常是指编译器在C源程序中可以调用的函数。它可以分为两类,一类是C语言标准规定的库函数,另一类是C语言标准规定的库函数 编译器特定的库函数

C语言程序设计试题及答案解析[1]

C语言程序设计试题 第1、2、3章概述、类型、表达式 一、选择题 1、一个C程序由若干个C函数组成,各个函数在文件中的位置顺序为:() A、任意 B、第一个函数必须是主函数,其他函数任意 C、必须完全按照执行的顺序排列 D、其他函数可以任意,主函数必须在最后 2、下列四个叙述中,正确的是:() A、C程序中的所有字母都必须小写 B、C程序中的关键字必须小写,其他标示符不区分大小写 C、C程序中的所有字母都不区分大小写 D、C语言中的所有关键字必须小写 3、下列四个叙述中,错误的是:() A、一个C源程序必须有且只能有一个主函数 B、一个C源程序可以有多个函数 C、在C源程序中注释说明必须位于语句之后 D、C源程序的基本结构是函数 4、下面不是C语言合法标识符的是:() A、abc B、5n C、_4m D、x3 5、以下叙述不正确的是:() A. 分号是C语句的必要组成部分 B. C程序的注释可以写在语句的后面 C. 函数是C程序的基本单位 D. 主函数的名字不一定非用main来表示 6、C语言中允许的基本数据类型包括:() A. 整型、实型、逻辑型 B. 整型、实型、字符型 C. 整型、字符型、逻辑型 D. 整型、实型、逻辑型、字符型 7、C语言中能用八进制表示的数据类型为:() A、字符型、整型 B、整形、实型 C、字符型、实型、双精度型 D、字符型、整型、实型、双精度型 8、下列属于C语言合法的字符常数是:() A、’\97’ B、”A” C、’\t’ D、”\0” 9、在C语言(VC环境)中,5种基本数据类型的存储空间长度的排列顺序为:() A、char

相关主题
文本预览
相关文档 最新文档