C语言程序设计形考任务4
程序设计基础形考作业4

江苏开放大学形成性考核作业学号:姓名:课程代码:课程名称:程序设计基础(专)评阅教师:第 4 次任务共 4 次任务作业说明:1.做作业之前首先在封面填上自己的学号和姓名,做完作业后请写上作业完成时间。
2.学习完第四单元后必须完成本次作业,并请在规定时间内通过学习平台提交Word文档形式的电子作业,本次作业占形成性考核总成绩的20%。
作业内容:根据“歌唱比赛评分系统”实训,编写一个“学生成绩评分系统”的程序,要求运用数组和前面所学循环结构、输入输出、选择结构,能够进行多个学生多门成绩的录入,输出每个学生各门功课成绩以及计算每个学生的总成绩和平均成绩。
作业要求:(1)程序的源代码以及对源代码必要的行注释。
(后缀名为.c的源程序代码)(2)测试运行结果截图。
(3)以上内容请在本文档中完成,并将本文档提交至学习平台,作为本课程第四次作业。
作业回答区:#include <stdio.h>#define N 7#define M 10double ave (){int i,j,max,min;double s=0,t,ave,arroy[N];printf("输入%d个评委的分数:\n",N);for(i=0;i<N;i++)scanf("%lf",&arroy[i]);for (i=0;i<N-1;i++){if (arroy[i]>arroy[j]){ t=arroy[i];arroy[i]=arroy[j];arroy[j]=t;} }printf("max=%lf\n",arroy[N-1]);printf("min=%lf\n",arroy[0]);for (i=1;i<N-2;i++)s+=arroy[i];ave=s/(N-2);return ave;}void main(){int i,j;double k,a[M];for (i=0;i<M;i++){a[i]=ave ();}for (j=i+1;j<M;j++){if (a[i]<a[j]){k=a[i];a[i]=a[j];a[j]=k;}}for (i=0;i<M;i++)printf("第%d名:%lf ",i+1,a[i]); printf("\n");}这是我测试两名学生的结果:BBS论坛交流(独立在论坛计分)谈谈你对三种结构和结构化程序设计的理解(占形考10%)通过前面几次单元的学习,相信您对C语言的三种基本的程序已经掌握,了解结构化程序设计的思想谈谈您学完本阶段后,对C语言三种基本结构和结构化程序设计的理解。
电大C语言程序设计形成性考核册答案(1-4)

C语言程序设计形成性考核册参考答案作业1之邯郸勺丸创作一、选择题1. 在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(A)。
A.main B.MAIN C.name D.funtion2.C语言原程序文件的缺省扩展名为(A)。
A.cpp B.exe C.obj D.C3.由C语言目标文件连接而成的可执行的缺省扩展名为(B)。
A.cpp B.exe C.obj D.C4.程序运行中需要从键盘输入多于一个数据时,各数据之间应使用(D)符号作为分隔符。
A.空格或逗号 B.逗号或回车 C.回车或分号 D.空格或回车5.每个C语言程序的编译错误分为(B)类。
A.1 B.2 C.3 D.46.设x 和y 均为逻辑值,则x && y为真的条件是(A)。
A.它们均为真 B.其中一个为真 C.它们均为假 D.其中一个为假7.设有语句“int a=12;a+=a*a;”,则执行结束后,a 的值为(C)。
A.12 B.144 C.156 D.2888.x>0 && x<=10的相反表达式为(A)。
A.x<=0 || X>10 B.x<=0 && x>10 C.x<=0 ||x<=10 D.x>0 && x>109.字符串“a+b=12\n”的长度为(B)。
A.6 B.7 C.8 D.910.在下列符号常量定义中。
错误的定义语句格式为(C)。
A.const M1=10; B.const int M2=20; C.const M310 D.const char mark=’3’;11.带有随机函数的表达式rand()%20的值在(C)区间内,A.1~19 B.1~20 C.0~19 D.0~2012.当处理特定问题时的循环次数已知时,通常采取(A)循环来解决。
A.for B.while C.do-while D.switch 13.在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为(B)语句。
c语言程序设计形考任务4答案

一、选择题(共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;反馈Your answer is correct.题目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;反馈Your answer is correct.题目3标记题目在结构类型的定义中.不同数据成员的定义项之间采用的分隔符是()。
选择一项:a. 句点b. 冒号c. 分号回答正确d. 逗号反馈Your answer is correct.题目4标记题目假定一个结构类型的定义为“struct A{int a,b; double c;};”.则该类型的长度为()。
选择一项:a. 8b. 10c. 12d. 16反馈Your answer is correct.题目5标记题目假定一个结构类型的定义为“struct D{int a; D* next;};”.则该类型的长度为()。
选择一项:a. 4b. 8回答正确c. 12d. 16反馈Your answer is correct.题目6标记题目假定要访问一个结构指针变量x中的数据成员a.则表示方法为()。
程序设计基础形考任务4

1,逻辑运算;算术运算;数据比较;数据传送2,顺序结构;选择结构;循环结构3,正确性;运行效率4,时间;空间5,自顶向下;逐步求精6,定义;开发;使用与维护7,可行性研究;需求分析8,设计;实现;集成9,正确;可用10,瀑布;渐进式下列叙述中正确的是___C__。
A. 设计算法时只需要考虑结果的可靠性B. 设计算法时只需要考虑数据结构的设计C. 以上三种说法都不对D. 算法就是程序下列叙述中正确的是__B___。
A. 一个算法的空间复杂度大,则其时间复杂度必定小B. 以上三种说法都不对C. 一个算法的时间复杂度大,则其空间复杂度必定小D. 一个算法的空间复杂度大,则其时间复杂度也必定大题目4一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是(D )。
A. 有零个或多个输入B. 可行性C. 有零个或多个输出D. 有穷性题目5下面叙述正确的是(D )。
A. 算法的时间复杂度与空间复杂度一定相关B. 数据的逻辑结构与存储结构是一一对应的C. 算法的效率只与问题的规模有关,而与数据的存储结构无关D. 算法的时间复杂度是指执行算法所需要的计算工作量题目6那一项不属于算法的四种基本的功能操作( D ) 。
A. 数据比较B. 算术运算C. 逻辑运算D. 循环结构题目7在求解规模较大的问题时,可以把它分解成若干个规模较小的子问题,求出各个子问题的解之后,再把这些解合成原问题的解,这种方法是(B )。
A. 递归法B. 分治法C. 穷举法D. 回溯法题目8当一个算法输入不合法的数据时,应当能够作适当处理,不致于引起严重后果,这属于算法的( D ) 。
A. 可读性B. 正确性C. 高效性D. 健壮性题目9软件开发模型着重研究的是___A___。
A. 软件开发全部过程、活动和任务的结构框架B. 程序设计的方法和编程技巧C. 软件系统的基本架构和常见的软件系统模型D. 软件系统的模型和对应不同模型的开发方法题目10早期进行程序开发过程中存在不少问题,在下列问题中有一个并不是早期程序员常见的问题,它是___D___。
[「最新」2021年春期国开电大《C语言程序设计》网上形考(任务1至4)答案]
![[「最新」2021年春期国开电大《C语言程序设计》网上形考(任务1至4)答案]](https://img.taocdn.com/s3/m/019ed73c6f1aff00bfd51e76.png)
[「最新」2021年春期国开电大《C语言程序设计》网上形考(任务1至4)答案][最新]2021年春期国开电大《C语言程序设计》网上形考(任务1至4)答案说明:资料整理于2021年6月25日。
形考任务1 试题及答案一、选择题(共40分,每小题2分) 题目1 在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。
A.mainB.MAIND.function 正确答案是:main 题目2 C 语言源程序文件的缺省扩展名为()。
A.cppB.exeC.objD.c 正确答案是:c 题目3 由C语言目标文件连接而成的可执行文件的缺省扩展名为()。
A.cppB.exeC.objD.c 正确答案是:exe 题目4 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用的分隔符为()。
A.空格或逗号B.逗号或回车C.逗号或分号D.空格或回车正确答案是:空格或回车题目5 每个C语言程序文件的编译错误被分为()。
A.1类B.2类C.3类D.4类正确答案是:2类题目6 不符合C 语言规定的复合语句是()。
A.{}B.{;}C.{x=0;}D.{y=10} 正确答案是:{y=10} 题目7 C语言程序中的基本功能模块为()。
A.表达式B.标识符C.语句D.函数正确答案是:函数题目8 A.表达式 B.语句C.参数表 D.函数体正确答案是:参数表题目9 在一个程序文件中,若要使用#include命令包含一个用户定义的头文件,则此头文件所使用的起止定界符为一对()。
A.尖括号B.双引号C.单引号D.花括号正确答案是:双引号题目10 在C语言程序中,多行注释语句使用的开始标记符为()。
A.//B./*C.*/D.** 正确答案是:/* 题目11 在printf()函数调用的格式字符串中,若使用格式符为“%c”,则对应输出的数据类型为()。
A.charB.intC.floatD.double 正确答案是:char 题目12 在printf()函数调用的格式字符串中,若使用格式符为“%5d”,则规定对应输出的数据占用的字符位置个数为()。
国开作业《C语言程序设计-形考任务》 (4)

题目:假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为( )。
选项A:1选项B:2选项C:4选项D:8答案:4题目:假定a为一个数组名,在下面的表达式中,存在语法错误的是( )。
选项A:a[i]选项B:*a++选项C:*a选项D:*(a+1)答案:*a++题目:用calloc函数创建具有10个整型元素的一维数组的正确语句是()。
选项A:int *p=calloc(10,2);选项B:int *p=calloc(10);选项C:int *p=calloc(10,4);选项D:int *p=malloc(10)答案:int *p=calloc(10,4);题目:假定变量m定义为“int m=7;”,则下面正确的语句为()。
选项A:int p=m;选项B:int *p=m;选项C:int p=*m;选项D:int *p=m;答案:int *p=m;题目:假定k是一个double类型的变量,则定义变量p的正确语句为()。
选项A:double p=k;选项B:int *p=k;选项C:double p=*k;选项D:char *p="Thank you!";答案:char *p="Thank you!";题目:在下面的函数声明语句中,存在着语法错误的是()。
选项A:AA(int a, int b)选项B:AA(int, int)选项C:AA(int a; int b)选项D:AA(int a, int)答案:AA(int a; int b)题目:在下面的保留字中,不能作为函数的返回值类型的是()。
选项A:void选项B:int选项C:enum选项D:long答案:enum题目:若有语句为“int a[10], x, *pa=a;”,要把数组a中下标为3的元素值赋给x,则不正确的语句为()。
选项A:x=pa[3];选项B:x=*(a+3);选项C:x=a[3];选项D:x=*pa+3;答案:x=*pa+3;题目:假定有语句为“int b[10]; int *pb;”,则下面不正确的赋值语句为()。
C语言程序设计形考任务4复习进程

C语言程序设计形考任务4一、选择题(共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. 8b. 10c. 12d. 16正确答案是:16题目5假定一个结构类型的定义为“struct D{int a; D* next;};”,则该类型的长度为()。
选择一项:a. 4b. 8c. 12d. 16正确答案是:8题目6假定要访问一个结构指针变量x中的数据成员a,则表示方法为()。
选择一项:a. x.ab. x->ac. x(a)d. x{a}正确答案是:x->a题目7与结构成员访问表达式等价的表达式为()。
c语言程序设计形考任务4答案培训讲学

c语言程序设计形考任务4答案一、选择题(共30分,每小题2分)题目1正确获得2.00分中的2.00分标记题目题干假定有“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;反馈Your answer is correct.题目2正确获得2.00分中的2.00分标记题目题干假定有“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;反馈Your answer is correct.题目3正确获得2.00分中的2.00分标记题目题干在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是()。
选择一项:a. 句点b. 冒号c. 分号回答正确d. 逗号反馈Your answer is correct.题目4正确获得2.00分中的2.00分标记题目题干假定一个结构类型的定义为“struct A{int a,b; double c;};”,则该类型的长度为()。
选择一项:a. 8b. 10c. 12d. 16反馈Your answer is correct.题目5正确获得2.00分中的2.00分标记题目题干假定一个结构类型的定义为“struct D{int a; D* next;};”,则该类型的长度为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题(共30分,每小题2分) 题目1假定有“ struct BOOK{chartitle[40]; float price;}; struct 则不正确的语句为( )。
选择一项:a. struct BOOK *x=malloc(book);b. struct BOOK x={"C++ Programmi ng",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{i nt a,b; double c;};长度为( )。
BOOKbook; ”,,贝M确的语,则该类型的选择一项:a. 8b. 10c. 12d. 16正确答案是:16题目5假定一个结构类型的定义为“ struct D{i nt a; D* n ext;}; ”,则该类型的长度为()。
选择一项:a. 4b. 8c. 12刁d. 16正确答案是:8题目6假定要访问一个结构指针变量x中的数据成员a,则表示方法为()。
选择一项:a. x.ab. x->ac. x(a)d. x{a}正确答案是:x->a题目7与结构成员访问表达式等价的表达式为()。
选择一项:a. x->n ameb. &x->n amec. (&x)->n amed. (*x)->n ame正确答案是:(&x)-> name假定一个链表中结点的结构类型为“struct AA{int data, struct AA*next;};则next数据成员的类型为()。
选择一项:a. struct AAb. struct AA*c. AAJ|d. int正确答案是:struct AA*题目9假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为()。
选择一项:a. p->n ext=fb. p->next=f 和f=pc. f=p->n extd. f->next=p 和f=p 正确答案是:p->next=f和f=p题目10标准输入设备键盘的文件流标识符是(选择一项:a. stdi nb. stdoutc. stderrd. stdio正确答案是:stdin题目11表示文件结束符的符号常量为()选择一项:a. eofb. Eofc. EOFJ I d. feof正确答案是:EOFC语言中打开一个数据文件的系统函数为( )。
选择一项:a. fgetc()b. fputc()c. fclose()d. fope n()正确答案是:fope n()题目13从一个数据文件中读入以换行符结束的一行字符串的系统函数为( )选择一项:a. gets()b. fgets()c. getc()d. fgetc()正确答案是:fgets()题目14向一个二进制文件中写入信息的函数fwrite()带有的参数个数为( )选择一项:a. 1b. 2c. 3d. 4正确答案是:4题目15在C语言中,为只写操作打开一个文本文件的方式为( )。
选择一项:a. "a"b. "r+"c. "r"d. "w"正确答案是:"w"二、判断题(共40分,每小题2分。
叙述正确则回答“是”,否则回答“否”)题目16在结构类型的定义中,其中的数据成员可以是本身类型的直接对象。
选择一项:对错正确的答案是“错”。
题目17在结构类型的定义中,允许出现结构类型不完整的超前定义。
选择一项:对错正确的答案是“对”。
题目18定义结构类型的变量时,不能够同时进行初始化。
选择一项:对错正确的答案是“错”。
题目19使用一个结构类型时,必须一起使用关键字struct和类型标识符。
选择一项:对错正确的答案是“对”。
题目20假定一个结构类型的定义为“ struct A{i nt a,b; A* c;}; ”,则该类型的长度为12。
选择一项:对错正确的答案是“对”。
题目21假定一个结构类型的定义为“ struct B{i nt 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种。
选择一项:对错正确的答案是“对”。
题目28C语言中的标准输入和输出设备文件都属于字符文件。
选择一项:对错正确的答案是“对”在一个磁盘数据文件的文件名中,文件主名和扩展名都是必须的,不可省略。
选择一项:对错正确的答案是“错”。
题目30在数据文件打开方式字符串中,字符r、w和a具有确定的含义,分别代表读、写和追加方式。
选择一项:对错正确的答案是“对”。
题目31一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。
选择一项:对错正确的答案是“对”。
题目32C语言系统中提供一个用来描述文件属性的类型标识符为FILE o选择一项:对错正确的答案是“对”。
题目33每次只能向文本文件中写入一个字符,不能一次写入一个字符串。
选择一项:对错正确的答案是“错”。
对二进制文件进行读和写操作将使用相同的系统函数。
选择一项:对错正确的答案是“错”。
题目35在C语言中,系统函数fseek()用来移动数据文件中的文件位置指针。
选择一项:对错正确的答案是“对”。
三、写出下列每个程序运行后的输出结果(共15分,每小题5分) 题目36#i nclude<stdio.h>struct Worker {char name[15]; // 姓名int age; // 年龄float pay; // 工资};void mai n() {struct Worker x={"wa nghua",52,4300};struct Worker y, *p;y=x; p=&x;printf("%s %d %6.2f\n",,y.age,p->pay);}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(,t);x.age=d; x.pay=f;printf("%s %d %6.0f\n",,x.age,x.pay);}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) return1; else return 0;}void main() {struct Workera[4]={{"abc",25,2420},{"def",58,4638},{"ghi",49,4260},{"jkl" ,36,37 50}};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.age,x.pay);}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;};从键盘输入n 个Worker 类型的记录到一维数组a 中题目40int Count(struct IntNode *f){ //f 为指向一个单链表的表头指针int c=0;while(f) {c++;f=f->next;}return c;}假定struct IntNode 的类型定义为:struct IntNode {int data; IntNode* next;};统计出以表头指针为f 的链表中结点的个数。