2017年电大电大年春《C语言程序设计》形成性考核册答案 下载本文

C语言程序设计形成性考核册

printf(\}

输出结果为: wanghua 52 23.50 wanghua 52 23.50

Press any key to continue

2. #include #include struct Worker{ char name[15]; //姓名 int age; //年龄 float pay; //工资 };

void main(){ struct Worker x; char *t=\ int d=38;float f=493; strcpy(x.name,t); x.age=d;x.pay=f; x.age++;x.pay*=2; printf(\}

输出结果为: louting 39 986.00

Press any key to continue

3. #include #include struct Worker{ char name[15]; //姓名 int age; //年龄 float pay; //工资 };

int Less(struct Worker r1,struct Worker r2){ if(r1.age

void main(){ struct Worker a[4]={{\ struct Worker x=a[0]; int i; for(i=1;i<4;i++)

共25页 - 21 -

C语言程序设计形成性考核册

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

输出结果为: def 58 638.00

Press any key to continue

四、写出下列每个函数的功能

1. void QA(struct Worker a[],int n){ int i; for(i=0;i

假定结构struct Worker的定义如下: #include #include #include struct Worker{ char name[15]; //姓名 int age; //年龄 float pay; //工资 };

函数功能为:

输入struct Worker 类型的对象a[n]的各个元素的值

2. struct StrNode *QB(int n){ StrNode * f,*p; if(n==0)return NULL; f=(StrNode*)malloc(sizeof(struct StrNode)); scanf(\ p=f; while(--n){ p=p->next=(StrNode*)malloc(sizeof(struct StrNode)); scanf(\ } p->next=NULL; return f; }

假定结构struct StrNode的定义如下: struct StrNode{ char name[5]; struct StrNode *next; };

共25页 - 22 -

C语言程序设计形成性考核册

函数功能为:

建立一个具有n个结点,每个结点的类型是StrNode的链表

3. struct IntNode* FindMax(struct IntNode *f) { struct IntNode *p=f; if(!f)return NULL; f=f->next; while(f){ if(f->data < p->data)p=f; f=f->next; } return p; }

假定结构struct StrNode的定义如下: struct IntNode{ int data; struct IntNode * next; };

函数功能为:

在一个具有n个结点,每个结点的类型是IntNode的链表中寻找data值最大的结点

4. int Count(struct IntNode *f) { int c=0;while(f){ c++; f=f->next; } return c; }

假定结构struct StrNode的定义如下: struct IntNode{ int data; struct IntNode * next; };

函数功能为:

计算一个结点的类型是IntNode的链表的结点数

5. struct IntNode* Input(int n) { struct IntNode *f,*p; f=(IntNode*)malloc(sizeof(struct IntNode)); if(n==0)return NULL; f->next=NULL;

共25页 - 23 -

C语言程序设计形成性考核册

printf(\从键盘输入 %d 个整数:\ while(n--){ scanf(\ p=f; f=(IntNode*)malloc(sizeof(struct IntNode)); f->next=p; } return f->next; }

假定结构struct StrNode的定义如下: struct IntNode{ int data; struct IntNode * next; };

函数功能为:

在类型为IntNode的链表后输入n个结点的数据

6. #include #include #include void JA(char* fname) { FILE* fout=fopen(fname,\ char a[20]; printf(\ while(1){ scanf(\ if(strcmp(a,\ fputs(a,fout); fputc('\\n',fout); } fclose(fout); }

void main() { char *p=\ JA(p); }

函数功能为:

在已经存在的d:\\xxk文件夹下(如不存在此文件夹程序运行会出错)打开xuxk1.txt文件,

最新资料,word文档,可以自由编辑!!

并向其中输入一系列长度小于20的字符串,直到输入字符串end结束。

共25页 - 24 -