学习平台登录

集团网站

博客

登录

注册

公众号

    微信扫一扫,免费咨询

    关注新学源公众号

    免费问咨询师

移动端

    微信扫一扫,手机浏览

    或在手机浏览器中输入

    m.xxyedu.com

咨询热线:4000-911-365
提问7*24小时在线解答

一、选择题(共30分,每小题2分)

试题 1

假定有struct BOOK{char title[40]; float price;}; struct BOOK book;”,则不正确的语句为(    )。

选择一项:

a.

struct BOOK *x=malloc(book);

回答正确

b.

struct BOOK x={"C++ Programming",27.0};

c.

struct BOOK *x=malloc(sizeof(struct BOOK));

d.

struct BOOK *x=&book;

反馈

正确答案是:struct BOOK *x=malloc(book);

试题 2

假定有struct BOOK{char title[40]; float price;} book;”,则正确的语句为(    )。

选择一项:

a.

struct BOOK x= &book;

b.

struct BOOK *x=&book;

回答正确

c.

struct BOOK x=calloc(BOOK);

d.

struct BOOK *x=BOOK;

反馈

正确答案是:struct BOOK *x=&book;

试题 3

在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是(    )。

选择一项:

a.

句点

b.

冒号

c.

分号

回答正确

d.

逗号

反馈

正确答案是:分号

试题 4

假定一个结构类型的定义为 struct A{int a,b; double c;};”,则该类型的长度为(    )。

选择一项:

a.

8

b.

10

c.

12

d.

16

反馈

正确答案是:16

试题 5

假定一个结构类型的定义为 struct D{int a; D* next;};”,则该类型的长度为(    )。

选择一项:

a.

4

b.

8

回答正确

c.

12

d.

16

反馈

正确答案是:8

试题 6

假定要访问一个结构指针变量x中的数据成员a,则表示方法为(    )。

选择一项:

a.

x.a

b.

x->a

回答正确

c.

x(a)

d.

 x{a}

反馈

正确答案是:x->a

试题 7

与结构成员访问表达式x.name等价的表达式为(    )。

选择一项:

a.

x->name

b.

&x->name

c.

(&x)->name

回答正确

d.

(*x)->name

反馈

正确答案是:(&x)->name

试题 8

假定一个链表中结点的结构类型为struct AA{int data, struct AA *next;};”,则next数据成员的类型为(    )。

选择一项:

a.

struct AA

b.

struct AA*

c.

AA

d.

int

反馈

正确答案是:struct AA*

试题 9

假定一个链表的表头指针为f,结点中包含有datanext域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为(    )。

选择一项:

a.

p->next=f

b.

p->next=ff=p

回答正确

c.

f=p->next

d.

f->next=pf=p

反馈

正确答案是:p->next=ff=p

试题 10

标准输入设备键盘的文件流标识符是(    )。

选择一项:

a.

stdin

回答正确

b.

stdout

c.

 stderr

d.

stdio

反馈

正确答案是:stdin

试题 11

表示文件结束符的符号常量为(    )。

选择一项:

a.

eof

b.

Eof

c.

EOF

回答正确

d.

feof

反馈

正确答案是:EOF

试题 12

C语言中打开一个数据文件的系统函数为(    )。

选择一项:

a.

fgetc()

b.

 fputc()

c.

fclose()

d.

fopen()

回答正确

反馈

正确答案是:fopen()

试题 13

从一个数据文件中读入以换行符结束的一行字符串的系统函数为(    )。

选择一项:

a.

gets()

b.

fgets()

回答正确

c.

getc()

d.

fgetc()

反馈

正确答案是:fgets()

试题 14

向一个二进制文件中写入信息的函数fwrite()带有的参数个数为(    )。

选择一项:

a.

1

b.

2

c.

3

d.

4

回答正确

反馈

正确答案是:4

试题 15

C语言中,为只写操作打开一个文本文件的方式为(    )。

选择一项:

a.

"a"

b.

"r+"

c.

"r"

d.

"w"

回答正确

反馈

正确答案是:"w"

二、判断题(共40分,每小题2分。叙述正确则回答“是”,否则回答“否”)

 

试题 16

在结构类型的定义中,其中的数据成员可以是本身类型的直接对象。

选择一项:

反馈

正确答案是“错”。

试题 17

在结构类型的定义中,允许出现结构类型不完整的超前定义。

选择一项:

反馈

正确答案是“对”。

试题 18

定义结构类型的变量时,不能够同时进行初始化。

选择一项:

反馈

正确答案是“错”。

试题 19

使用一个结构类型时,必须一起使用关键字struct和类型标识符。

选择一项:

反馈

正确答案是“对”。

试题 20

假定一个结构类型的定义为 struct A{int a,b; A* c;};”,则该类型的长度为12

选择一项:

反馈

正确答案是“对”。

试题 21

假定一个结构类型的定义为 struct B{int a[5]; char* b;};”,则该类型的长度为20

选择一项:

反馈

正确答案是“错”。

试题 22

执行calloc(n,8)函数调用时,将动态分配得到8*n个字节的存储空间。

选择一项:

反馈

正确答案是“对”。

试题 23

执行malloc(sizeof(struct BB))函数调用时,得到的动态存储空间能够保存具有struct BB结构类型的一个对象。

选择一项:

反馈

正确答案是“对”。

试题 24

假定要访问一个结构对象x中的由a指针成员所指向的对象,则表示方法为x.a

选择一项:

反馈

正确答案是“错”。

试题 25

假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为p->b

选择一项:

反馈

正确答案是“错”。

试题 26

与结构成员访问表达式(*fp).score等价的表达式是fp->score

选择一项:

反馈

正确答案是“对”。

试题 27

C语言中,对二进制文件的所有不同打开方式共有6种。

选择一项:

反馈

正确答案是“对”。

试题 28

C语言中的标准输入和输出设备文件都属于字符文件。

选择一项:

反馈

正确答案是“对”。

试题 29

在一个磁盘数据文件的文件名中,文件主名和扩展名都是必须的,不可省略。

选择一项:

反馈

正确答案是“错”。

试题 30

在数据文件打开方式字符串中,字符rwa具有确定的含义,分别代表读、写和追加方式。

选择一项:

反馈

正确答案是“对”。

试题 31

一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。

选择一项:

反馈

正确答案是“对”。

试题 32

C语言系统中提供一个用来描述文件属性的类型标识符为FILE

选择一项:

反馈

正确答案是“对”。

试题 33

每次只能向文本文件中写入一个字符,不能一次写入一个字符串。

选择一项:

反馈

正确答案是“错”。

试题 34

对二进制文件进行读和写操作将使用相同的系统函数。

选择一项:

反馈

正确答案是“错”。

试题 35

C语言中,系统函数fseek()用来移动数据文件中的文件位置指针。

选择一项:

反馈

正确答案是“对”。

三、写出下列每个程序运行后的输出结果(共15分,每小题5分)

试题 36

#include<stdio.h>

       struct Worker {

           char name[15];  //姓名

           int age;        //年龄

           float pay;      //工资

       };

       void main() {

           struct Worker x={"wanghua",52,4300};

           struct Worker y, *p;

           y=x; p=&x;

           printf("%s  %d  %6.2f\n",x.name,y.age,p->pay);

       }

wanghua  52  4300

反馈

wanghua   52   4300

试题 37

#include<stdio.h>

       #include<string.h>

       struct Worker {

           char name[15];  //姓名

           int age;        //年龄

           float pay;      //工资

       };

       void main() {

           struct Worker x;

           char *t="liouting";

           int d=38; float f=3493;

           strcpy(x.name,t);

           x.age=d; x.pay=f;

           printf("%s  %d  %6.0f\n",x.name,x.age,x.pay);

       }

liouting  39  2493

反馈

liouting   39   2493

试题 38

#include<stdio.h>

       struct Worker {char name[15]; int age; float pay;};

       int Less(struct Worker r1, struct Worker r2) {

           if(r1.age<r2.age) return 1; else return 0;

       }

       void main() {

           struct Worker a[4]={{"abc",25,2420},{"def",58,4638},

                        {"ghi",49,4260},{"jkl",36,3750}};

           struct Worker x=a[0];

           int i;

           for(i=1; i<4; i++)

               if(Less(x,a[i])) x=a[i];

           printf("%s  %d  %6.0f\n",x.name,x.age,x.pay);

       }

def  58  4638

反馈

def   58   4638

四、写出下列每个函数的功能(共15分,每小题5分)

试题 39

void QA(struct Worker a[], int n) {

           int i;

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

               scanf("%s %d %f",&a[i].name,&a[i].age,&a[i].pay);

       }

    假定结构类型struct Worker 的定义如下:

       struct Worker { char name[15]; int age; float pay;};

从键盘输入nworker类型的记录到一组数组a中。

反馈

从键盘输入nWorker类型的记录到一维数组a中。

试题 40

int Count(struct IntNode *f)

        {      //f为指向一个单链表的表头指针

            int c=0;

            while(f) {

                c++;

                f=f->next;

            }

            return c;

        }

    假定struct IntNode的类型定义为:

        struct IntNode {int data; IntNode* next;};

Count函数可以统计单链表的结点个数,其表头指针为f

反馈

统计出以表头指针为f的链表中结点的个数。

试题 41

void xw1(char* fname) {

           FILE* fout=fopen(fname,"w");

           char a[20];

           printf("每个字符串长度小于20,字符串end作为结束标志\n");

           while(1) {

               scanf("%s",a);

               if(strcmp(a,"end")==0) break;

               fputs(a,fout);

               fputc('\n',fout);

           }

           fclose(fout);

       }

xw1函数可以输入若干字符串保存到fname所指定的文件中,直至遇到字符串end

反馈

把从键盘上输入的若干个字符串保存到由fname参数所指定的文本文件中。



同学们请记住本站网址,方便查看更多资料:https://www.xxyedu.com/
点赞(4) 打赏

相关推荐

2022-12-10习近平新时代中国特色主义思想专题二测验答案
2022-12-10习近平新时代中国特色主义思想专题一测验答案
2022-12-03专升本2022秋中国近现代史纲要专题测验七
2022-12-03专升本2022秋中国近现代史纲要专题测验六
2022-12-03专升本2022秋中国近现代史纲要专题测验五
2022-12-03专升本2022秋中国近现代史纲要专题测验四
2022-12-03专升本2022秋中国近现代史纲要专题测验三
2022-12-03专升本2022秋中国近现代史纲要专题测验二
2022-12-03专升本2022秋中国近现代史纲要专题测验一
2022-12-02专升本《金融基础》会计学2022秋真题

评论列表 共有 0 条评论

暂无评论
立即
提问
发表
评论
返回
顶部