国家二级(C语言)机试模拟试卷175附答案解析

国家二级(C语言)机试模拟试卷175

选择题

1.在软件开发中,需求分析阶段产生的主要文档是( )。(D)

A. 数据字典

B. 详细设计说明书

C. 数据流图说明书

D. 软件需求规格说明书

解析:需求分析的最终结果是生成软件需求规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便。

2.关系数据库管理系统能实现的专门关系运算包括( )。(B)

A. 排序、索引、统计

B. 选择、投影、连接

C. 关联、更新、排序

D. 显示、打印、制表

解析:关系数据库管理系统的专门关系运算包括选择运算、投影运算和连接运算。

3.下列叙述中正确的是( )。(D)

A. 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构

B. 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况

C. 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况

D. 循环队列中元素的个数是由队头指针和队尾指针共同决定

解析:循环队列有队头和队尾两个指针,但是循环队列仍是线性结构的,所以A错误;在循环队列中只需要队头指针与队尾指针来共同反映队列中元素的动态变化情况,所以B与C错误。

4.下面结构体的定义语句中,错误的是( )。

A

解析:分号代表该结构体定义语句的结束,选项A)的结构体没有定义完全就用该结构体另外定义变量,用法有误,所以答案选A)。

5.对下列二叉树进行前序遍历的结果为( )。

(B)

A. ABCDEFGH

B. ABDGEHCF

C. GDBEHACF

D. GDHEBFCA

解析:遍历就是不重复地访问二叉树的所有结点。二叉树遍历的方法有3种:前序遍历、中序遍历和后序遍历。记住3种遍历的顺序:

①前序,访问根→按前序遍历左子树→按前序遍历右子树;

②中序,按中序遍历左子树→访问根→按中序遍历右子树;

③后序,按后序遍历左子树→按后序遍历右子树→访问根。所以对该二叉树的中序遍历结果为ABDGEHCF。

6.有下列程序,其中%u表示按无符号整数输出。

main()

{ unsigned int x=0xFFFF;/*x的初值为十六进制数*/

printf(\(B)

A. 一1

B. 65535

C. 32767

D. 0xFFFF

解析:“%u”格式符表示以十进制形式输出无符号整形变量。本题中无符号整形变量x=0xFFFF表示的是十六进制无符号整型变量的最大值65535,所以最后输出的结果为65535。

7.设有定义:char *c;,以下选项中能够使字符型指针c正确指向一个字符串的是( )。(A)

A. char str[]=\

B. scanf(\

C. c=getchar():

D. *c=\

解析:B选项中scanf()函数是将c定义为一个字符数组的数组名,C选项中是将c定义为一个字符型变量,D项是在指针定义时为它赋值,否则是不合法的,所以BCD三项都不正确。A选项定义字符数组str,再将字符数组str的首地址赋给字符型指针c,正确。

8.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是( )。(B)

A. 提高耦合性降低内聚性有利于提高模块的独立性

B. 降低耦合性提高内聚性有利于提高模块的独立性

C. 耦合性是指一个模块内部各个元素间彼此结合的紧密程度

D. 内聚性是指模块间互相连接的紧密程度

解析:模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性,所以A错误,B正确。耦合性是模块间互相连接的紧密程度的度最而内聚性是指一个模块内部各个元素间彼此结合的紧密程度,所以C与D错误。

9.C语言规定,在一个C程序中,main()函数的位置( )。(D)

A. 必须在系统调用的库函数之后

B. 必须在程序的开始

C. 必须在程序的最后

D. 可以在任意位置

解析:每个C程序有且只有一个主函数(main),且程序必须从main()函数开始执行,而且main()函数可以放在程序中的任意位置。

10.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。(A)

A. 函数的形参和实参分别占用不同的存储单元

B. 形参只是形式上的存在,不占用具体存储单元

C. 同名的实参和形参占同一存储单元

D. 函数的实参和其对应的形参共占同一存储单元

解析:本题重点考察的是函数的形参和实参。在定义函数时函数名后面括弧中的变量名称为“形式参数”(简称形参),在主调函数中调用一个函数时,函数名后面括弧中的参数(可以是一个表达式)称为“实际参数”(简称实参)。C语言规定,实参变量对形参变量的数据传递是“值传递”,即单向传递,只由实参传给形参,而不能由形参传回来给实参。在内存中,实参单元与形参单元是不同的单元。因此A选项正确。

11.数据库系统的核心是( )。(D )

A. 数据模型

B. 软件开发

C. 数据库设计

D. 数据库管理系统

解析:数据库管理系统DBMS是数据库系统的核心。DBMS是负责数据库的建由、使用和维护的软件。DBMS建立在操作系统之上,实施对数据库的统一管理和控制。用户使用的各种数据库命令以及应用程序的执行,最终都必须通过DBMS。另外,DBMS还承担着数据库的安全保护工作,按照DBA所规定的要求,保证数据库的完整性和安全性。

12.若有以下程序段:

int r=8;

pfinff(\(C)

A. 16

B. 8

C. 4

D. 2

解析:C语言中“>>”是二进制的右移运算符,右移相当于将原数做除二操作,它将原数右移相应位数,并将移出的位信息舍去,在高位补0。本题中8的二进制为00001000,右移一位得到00000100,所以输出4。

13.设有定义:char s[10];int i=0;,以下不能将一行(不超过100个字符)带有空格的字符串正确读入的语句或语句组是( )。(B )

A. gets(s);

B. scanf(\

C. while((s[i++]=getchar0)!=’\

’);s[i]=’\\0’;

D. do{scanf(\

解析:本题考查标准输入输出函数和循环语句。gets(s)函数的作用是将输入的字符读入字符串s,直到遇到回车。而scanf()函数接收字符串时的结束标志为回车或者空格。因此选项B)不能,选项C)和选项D)中按字符逐个读入字符串s中,直到读入的字符是换行符为止,因此正确。

14.若有如下说明,且int类型占两个字节,则正确的叙述为( )。

struct st

{ int a;

int b[2];

} a;(A)

A. 结构体变量a与结构体成员a同名,定义是合法的

B. 程序只在执行到该结构体时才为结构体st分配存储单元

C. 程序运行时为结构体st分配8字节存储单元

D. 类型名struct st可以通过extern关键字提前引用

解析:本题主要考查结构体的用法:①结构体变量a与结构体成员a同名,定义合法;②在程序编译的时候结构的定义并不会使系统为该结构分配内存空间,只有在说明结构变量时才分配内存空间;③int a占2个字节,int b[2]占4个字节,共6个;④类型名“struct st”不可以通过extern关键字提前引用。

15.有以下不完整函数

int fun(char*p)

{ehar*t=p;

while(*t++);

return(______________);

}

该函数的功能是:计算p所指字符串占用内存单元的个数,作为函数值返回。return语句下划线处应填入的是( )。(A)

A. t-p

B. *t

C. *t-*p

D. t

解析:fun()函数参数是字符串的首地址p,函数首先将首地址p赋给t,然后通过while循环遍历指针t,直到t指向字符串结束标志符‘\0’,此时循环结束,t指向‘\0’,p指向首地址,所以p指向的字符串所占存储单元个数就是:t-p,本题答案为A。

16.符有以下稗序段:

int r=8:

printf(\(C)

A. 16

B. 8

C. 4

D. 2

解析:本题考查位运算,属于基础知识,题目中将整型变量8,二进制表达为00001000,右移一位为00000100,即4,选项C正确

17.设变量均已正确定义,若要通过

scanf(\(C)

A. 10□X<回车>

20□Y<回车>

B. 10□X20□Y<回车>

C. 10X<回车>

20Y<回车>

D. 10□X□20□Y<回车>

解析:输入数据的格式必须与scanf()的格式控制串完全匹配,如果A、B、D选项中在数字10后面均输入了空格,则会将空格赋给变量c1,而不是把X赋给c1,所以选择C选项。

18.有以下程序:

#include<stdio.h>

void fun(int*p,int*q)

{

p=p+1;*q=*q+1;

}

main()

{

int m=1,n=2,*r=&m;

fun(r,&n);

printf(\(A)

A. 1,3

B. 2,3

C. 1,4

D. 1,2

解析:语句p=p+1;只改变指针p的地址,与p的内容无关,所以m没有改变,而语句*q=*q+1;是改变该指针所指地址中的内容,所以n变为3,m不变。

19.若有定义和语句:

int a, b;

scanf(\(A)

A. 3 ,5

B. 3,5

C. 3,5,

D. 3,5,4

解析:考查数据的输入,printf(\

20.有以下程序:

#include

void fun(char**P)

{

++P:

printf(“%s\n”,*P);

}

main()

{

char*a[]={“Morning”,“Afternoon”,“Evening”,“Night”};

fun(a);

}

程序运行后的输出结果是( )。(A)

A. Afternoon

B. fiernoon

C. Morning

D. oming

解析:本题主函数中定义了一个指针数组a,可以将它看成一个以字符指针为元素的一维数组。和一般的一维数组名能赋给同类型指针变量一样,该字符指针数组也可以赋给指向字符指针的指针,所以数组名a可以用做函数fun()的实参。在fun()函数中,++p操作使形参p往后移动一个字符指针的位置,即指针a[1]的位置。故最后通过printf()函数输出的字符串为“Afternoon”。因此A选项正确。

21.有以下程序:

#include

main()

{

int a1,a2;char c1,c2;

scanf(\(A)

A. 12a34b

B. 12_a_34_b

C. 12,a,34,b

D. 12_a34_b

解析:根据scanf函数中的格式说明字符串,各个输入之间没有任何符号,所以键盘输入也应该没有符号。

22.有以下结构体说明、变量定义和赋值语句:

struet STD

{char name[10];

int age;

char sex;

}s[5],*ps;

ps=&s[0];

则以下scanf函数调用语句有错误的是( )。(D)

A. scanf(\

B. scanf(\

C. scanf(\

D. scanf(\

解析:本题考查结构体的相关知识,题目中需要输入一个变量,scanf要求参数为指针,而D选项中ps->age为一个变量,不是指针,所以错误。

23.下列叙述中正确的是( )。(D )

A. 一个逻辑数据结构只能有一种存储结构

B. 逻辑结构属于线性结构,存储结构属于非线性结构

C. 一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率

D. 一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率

解析:数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式,一种数据结构可以根据需要采用不同的存储结构,常用的存储结构有顺序和链式结构。采用不同的存储结构,其处理的效率是不同的。

24.C语言主要是借助以下哪个功能来实现程序模块化?( )(A)

A. 定义函数

B. 定义常量和外部变量

C. 三种基本结构语句

D. 丰富的数据类型

解析:C语言是由函数组成的,函数是C语言的基本单位。所以可以说C语言主要是借助定义函数来实现程序模块化的。

25.若有以下程序:

#include

main( )

{ int i,sum;

for(i=1;i<6; i++) sum+=i;

printf(\(A)

A. 随机值

B. 0

C. 15

D. 16

解析:本题重点考查for语句,变量没有初始化的情况下,默认值与编译器有关系,不同的编译器有不同的值。因此A选项正确。

26.已知字符‘A’的ASCII代码值是65,字符变量c1的值是‘A’,c2的值是‘D’。则执行语/ffJ printf(“%d,%d.t,c1,c2—2);的输出结果是( )。(D)

A. 65,68

B. A,68

C. A,B

D. 65,66

解析:打印时以%d整型格式打印输出,所以字符标量c1的值打印出来就是65,从c2—2的值打印出来就是68—2,即66。所以选择D。

27.若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是( )。

A

解析:在调用子函数时,应对其进行说明。A选项中,调用时,没有对子函数进行说明。B选项和C选项中,被调用函数在主调函数之前定义,不用说明;D选项中,在主函数中对被调用函数的返回值类型进行了说明。因此A选项正确。

28.以下关于long、int和short类型数据占用内存大小的叙述中正确的是( )。(D)

A. 均占4个字节

B. 根据数据的大小来决定所占内存的字节数

C. 由用户自己定义

D. 由C语言编译系统决定

解析:不同的编译系统或计算机系统对几类整型数所占用的字节数有不同的规定。long、int和short类型数据占用内存大小是由选择何种C编译系统决定的。

29.下列叙述中正确的是( )。(D)

A. 算法就是程序

B. 设计算法时只需要考虑数据结构的设计

C. 设计算法时只需要考虑结果的可靠性

D. 以上三种说法都不对

解析:算法是指解题方案的准确而完整的描述,算法不等于程序,也不等于计算方法,所以A错误。设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构。

30.有以下程序:

#include

#include

main( )

{int *a,*b,*c;

a=b=c=(in*)malloc(sizeof(int));

*a=1;*b=2,*c=3;

a=b;

pfintf(\(D)

A. 1,l,3

B. 2,2,3

C. 1,2,3

D. 3,3,3

解析:malloc函数动态分配一个整型的内存空间,然后把函数返回的地址用(int*)强制类型转换为整型指针,再把它赋给a、b、c,即让指针变量a、b、c都指向刚申请的内存空间。所以只有最后一个赋值语句“*c=3”的值保留在了该空间内,因为a、b、c三个指针变量均指向该空间,所以打印该空间内的数值为3。

31.函数fun的功能是在a所指的具有n个元素的数组中查找最大值并返回给调用函数,函数不完整。

int fun(int*a,int n)

{int*p,*s;

for(p=a,s=a;p-a<n;p++)

if(______________)s=p;

return*s:

}

在if语句下划线处应填入的选项是( )。(B)

A. p>s

B. *p>*s

C. a[p]>a[s]

D. p-a>p-s

解析:函数fun的功能是在形参a所指的具有n个元素的数组中查找最大值并返回。通过for循环比较,s始终指向最大值的那个元素。取指针的值,使用*p,因此比较使用*p和*s,需要找到最大值,当*s<*p时,修改指针s的指向,因此答案为B选项。

32.有以下程序:

#include<stdio.h>

void fun(char*c)

{

while(*c)

{

if(*c>=’a’&&*c<=’z’)

*c=*c-(’a’-’A’);

c++:

}

}

main()

{

char s[81];

gets(s);

fun(s);

puts(s);

}

当执行程序时从键盘上输入Hello Beijing<回车>,则程序运行后的输出结果是( )。(C)

A. if(i/8==0)printf(’’\n’’);

B. if(i/8==0)continue;

C. if(i%8==0)printf(’’\n’’);

D. if(i%8==0)continue;

解析:要按照每行8个输出数据的话,横线处语句的功能应该为:当i是8的倍数时(即i%8==0),输出一个换行符。因此C选项正确。

33.有以下程序:

#include

main( )

{ FILE *pf;

char *s1=\(B)

A. China

B. Chinang

C. ChinaBeijing

D. BeijingChina

解析:本题考查文件操作函数fwrite()和rewind()。题目中先是将s2字符串写入adc.dat中,然后将写指针回到文件开头,写入s1字符串,那么s1字符串就将前五个字符覆盖,所以最终结果为Chinang,选项B正确。

34.设已有定义:float x;,则以下对指针变量P进行定义且赋初值的语句中正确的是( )。(B)

A. int*p=(float)x;

B. float*p=&x;

C. float p=&x;

D. float*p=1024;

解析:指针是用来存放地址的变量,用(类型名*指针变量名)的形式定义。赋值时应将某个变量地址赋给指针变量,所以选择B。

35.有如下程序

#include <stdio.h>

void get_put()

{

char ch;

ch = getchar();

if (ch != ’\

’) get_put();

putchar(ch);

}

main()

{

get_put(); printf(\(B)

A. 1234

B. 4321

C. 4444

D. 1111

解析:在调用一个函数的过程中又出现直接或间接的调用该函数本身,称为函数的递归调用。本题程序的执行过程为:在输入1234<回车>的情况下,调用get_put()函数,getchar()读入1,在这次调用中的局部变量ch=’1’,if条件成立->调用get_put()函数,读入2,局部变量ch=’2’->调用get_put()函数,读入3,局部变量ch=’3’->调用get_put()函数,读入4,局部变量ch=’4’->调用get_put()函数,读入回车,if条件不成立,返回执行每次调用函数中if语句后的输出语句,即依次输出4321。B选项正确。

36.有如下程序

#include <stdio.h>

main()

{

int i, k;

int array[4][2] = {{1,2}, {4,9}, {6}};

for (i=0; i<2; i++)

for (k=0; k<4; k++)

{

printf(\(B)

A. 1,2,4,9,6,

B. 1,4,6,0,2,9,0,0,

C. 2,9,0,0,1,4,6,0,

D. 2,9,6,1,4,

解析:二维数组的初始化有两种方式,其中一种是分行初始化,方式为:数据类型数组名[行下标表达式][列下标表达式]={{第0行初值},{第1行初值表},…{最后1行初值表}};,如果初值表只对部分元素赋初值,没有被赋初值的元素将被自动赋值为0,故相当于array[4][2] = {{1,2},{4,9},{6,0},{0,0}}。执行两次for语句,实现按列依次输出数组中元素值为1,4,6,0,2,9,0,0,B选项正确。

37.有以下程序段

FILE *fp;

if( (fp=fopen(\(A)

A. 输出\

B. 输出\

C. 系统将按指定文件名新建文件

D. 系统将为写操作建立文本文件

解析:fopen函数以一定方式打开指定文件,返回一个指向文件的文件指针,如果不能实现打开指定文件的操作,则返回一个空指针NULL。如果指定文件不存在则创建一个文件名为指定文件名的新文件,然后打开它。在指定文件有错误或者指定文件不存在却不能创建新文件的情况下,打开文件操作错误,返回空指针。本题程序中,文件test.txt不存在,但无其他异常,表示可以建立新文件,命名为test.txt,C选项叙述正确,并以只写方式打开它,D选项叙述正确,返回指向文件的指针,if条件不成立,输出\

38.下列叙述中正确的是(D)

A. 有两个指针域的链表称为二叉链表

B. 循环链表是循环队列的链式存储结构

C. 带链的栈有栈顶指针和栈底指针,因此又称为双重链表

D. 结点中具有多个指针域的链表称为多重链表

解析:双向链表与二叉链表均是有两个指针域的链表,A选项错误。在单链表的第一个结点前增加一个表头结点,队头指针指向表头结点,最后一个结点的指针域的值由NULL改为指向表头结点,这样的链表称为循环链表。循环队列是队列的一种顺序存储结构。循环链表与循环队列是两种存储结构,B选项错误。双向链表结点有两个指针域,指向前一个结点的指针和指向后一个结点的指针,而带链的栈是单链表形式,C选项错误。故正确答案为D选项。

39.有两个关系R和T如下:

(A)

A. 投影

B. 交

C. 选择

D. 并

解析:用于查询的3个操作无法用传统的集合运算表示,引入的运算为投影运算、选择运算、笛卡尔积。常用的扩充运算有交、除、连接及自然连接等。投影,从关系模式中指定若干个属性组成新的关系,题目中从R中指定AB组成新的关系T,故A选项正确。选择,从关系中找出满足给定条件的元组的操作称为选择,即结果T应该包含R中全部属性,故C选项错误。假设,R与S经过某种关系得到T,则并:R∪S是将S中的记录追加到R后面;交:R∩S结果是既属于R又属于S的记录组成的集合。上述两种操作中,关系R与S以及T要求有相同的结构,故B、D选项错误。

40.有以下程序:

#include<stdio.h>

#define f(x)x*x*K

main()

int a=3,s,t:

s=f(a+1):

t=f((a+1)):

printf("%d,%d\n,s,t);

}

程序运行后的输出结果是( )。(A)

A. 10,64

B. 10.10

C. 64,10

D. 64.64

解析:C语言中带参数的宏可以理解为用参数直接替代定义式中的变量,而不经过任何修改。所以s=f(a+1)=a+1*a+1*a+1,t=f((a+1))=(a+1)*(a+1)*(a+1).所以有无括号的运算结果是不同的。

程序填空题

41.给定程序中,函数fun的功能是:有NxN矩阵,根据给定的m(m<=N)值,将每行元素中的值均右移m个位置,左边置为0。例如,N=3,m=2,有下列矩阵:

1 2 3

4 5 6

7 8 9

程序执行结果为:

0 0 1

0 0 4

0 0 7

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件火下的BLANKl.C中。

不得增行或删行,也不得更改程序的结构!

#inClUde

#define N 4

void fun(int (*t)[N], int m)

{ int i,j;

/**********found**********/

for(i=0; i<N; ____1____)

{ for(j=N-1-m;j>=0 ; j–)

/**********found**********/

t[i][j+____2____]=t[i][j];

/**********found**********/

for(j=0;j<____3____;j++)

t[i][j]=0 ;

}

}

main()

{ int t[][N]={21,12,13,24,25,16,

47,38,29,11,32,54,42,21,33,10},

i, j, m;

printf(\

(1)i++ (2)m (3)m

解析:第一空:题目要求对每行元素中的值均右移m个位置,故第一空处循环变量每次增1,共循环N次,完成对N行的移位操作,因此第一空处应为“i++”。

第二空:循环“fort[i=N-1-m;j>=0;i一)”是进行行元素中的值右移m个位置,即把t[i][j]元素放置在t[i][j+m]上,因此第二空应为“m”。

第三空:循环“for(j=0;j<__3__;j++)”是对空出来的位置补0,每行元素的前m位数据已经移动到后面,每行空处m个元素,因此第三空为“m”。

程序修改题

42.使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,假定整数数列中的数不重复,并存放在数组中。下列给定程序中函数fun的功能是:删除数列中值为X的元素,变量n中存放数列中元素的个数。

请改正程序中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

试题程序:

#include<stdio.h>

#define N20

fun(int*a,int n,int x)

{

int p=0,i;

a[n]=x;

while(x!=a[p])

p=p+1;

/*********found*********/

if(p==n)

return-1;

else

{

for(i=p;i<n-1;i++)

/*********found*********/

a[i+1]=a[i];

return n-1;

}

}

void main()

{

int w[N]={-3,0,1,5,7,99,10,15,30,90},x,n,i;

n=10;

printf(\

(1)if(p==n)return-1;

(2)a[i]=a[i+1];

解析:(1)需要确定if条件语句的条件表达式,发现变量p大写,C语言中变量是区别大小写的。

(2)删除数列中的元素,删除后,后面的元素依次前移一个位置,因此此处应为a[i]=a[i+1];。

程序设计题

43.使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。

例如,当a=45,b=12时,调用该函数后,c=1524。

注意:部分源程序给出如下。数据文件IN.DAT中的数据不得修改。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

试题程序:

#include<conio.h>

#include<stdio.h>

void fun(int a,int b,long*c)

{

}

main()

{

int a,b;

long C;

printf(\

void fun(int a,int b,long*c)

{

/*b%10获取b的个位,a/10获取a的十位,a%10获取a的个位,b/10获取b的十位*/

*c=a/10+(b%10)*10+(a%

10)*100+(b/10)*1000;

}

解析:本题主要的问题是如何取出a和b的个位数和十位数,取出后如何表示成c中相应的位数。由于a和b都是只有两位的整数,所以分别对它们除以10可得到它们的十位数,分别用10对它们求余可得到它们的个位数。得到后对应乘以1000、100、10、1即可得到c的千位数、百位数、十位数和个位数。注意使用c时要进行指针运算。

资源下载《国家二级(C语言)机试模拟试卷175附答案解析.doc》 文档下载价格为10下载币,请先
将本套试题Word文档或文章下载到电脑,方便收藏和打印
资源下载
《国家二级(C语言)机试模拟试卷175附答案解析.doc》
试题含答案和解析word文档下载价格:10 下载币
《国家二级(C语言)机试模拟试卷175附答案解析.doc》
试题含答案和解析word文档VIP优惠:免费
将本套试题Word文档或文章下载到电脑,方便收藏和打印
0

评论0

没有账号? 注册  忘记密码?