《高级语言程序设计》第17章在线测试
- 格式:docx
- 大小:67.65 KB
- 文档页数:2
一、选择题1.以下叙述正确的是():A) 在C程序中,main函数必须位于程序的最前面B) C程序的每行只能写一条语句C) C语言使用库函数实现输入输出操作D) 注释中的拼写错误会影响编译结果2、以下说法中正确的是()A) C语言程序总是从第一个的函数开始执行B) C语言程序总是从main()函数开始执行C)在C语言程序中,要调用的函数必须在main()函数中定义D) C语言程序中的main()函数必须放在程序的开始部分3、下列选项种说法正确的是()A) 函数由声明部分和执行部分两部分组成B)语言中main函数一定在程序的开始部分C)C语言程序总是从第一个定义的函数开始执行D)C程序的每行中只能写一条语句4、设有说明:int a; float b; char c; double d; 则表达式1.3*a+2*b*c+d*(int)2.6 值的类型为()。
A) double B) char C) float D) int5、 C语言的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字和下划线中任一种字符6、以下不正确的C语言标识符是()。
A) ABC B) abc C) a_bc D) void7、下列运算符中优先级最高的是()A) < B)+ C)&& D)!=8、以下选项中属于C语言中合法关键字的是()A)Float B)abc C)int D)CASE9、若x、i、j和k都是int型变量,计算下面表达式后,x的值为()x=(i=4,j=16,k=32)A)4 B)16 C)32 D)5210、在C语言中,要求数据必须是整型的运算符是()A)/ B)+ + C)!= D) %11、若整型变量x的值为8,则下列表达式中值为1的表达式是A)x+=x-=x B) x%=x-1 C) x%=x%=3 D) x/=x+x12、若w=1,x=2,y=3,z=4,则条件表达式“w > x?w : y<z?y : z”的值是()A)4 B)3 C)2 D)113、有以下程序,程序运行后的输出结果是。
华师《高级语言程序设计》在线作业一、单选题(共10道试题,共30分。
)V1.若有下面的说明和定义:structtest{intm1;charm2;floatm3;unionuu{charu1[5];intu2[2];}ua;}myaa;则sizeof(structtest)的值是()A.12B.16C.14D.92.在循环中使用break语句的功能是()A.使程序的执行跳出break所在的那一重循环B.使程序执行结束C.跳出包含此break语句的所有循环D.终止本次循环,继续下次循环3.下列数据中,为字符串常量的是()A.‘A’B.“house”C.Howdoyoudo.D.’$abc’4.有如下程序intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);printf("%d\n",r);}该程序的输出结果是()A.12B.13C.14D.155.下列程序main(){intx,y,z;x=y=2;z=3;y=z++-1;printf(“%d\t%d\t”,x,y);y=++x-1;printf(“%d\t %d\n”,x,y);y=z---1;printf(“%d\t%d\t”,z,y);y=--z-1;printf(“%d\t%d\n”,z,y);}运行后输出的数据为()。
A.31422413B.31332422C.22323321D.213213126.下列语句执行后的结果是()。
y=5;p=&y;x=*p++;A.x=5,y=5B.x=5,y=6C.x=6,y=5D.x=6,y=67.下列程序main(){inti,j;char*a,c;a=”computer”;printf(“%s”,a);for(i=0,j=7;i<j;i++,j--){c=a[i];*(a+i)=*(a+j);a[j]=c ;}printf(“->%s\n”,a);c=a[j-1,i=2+j];printf(“a[%d]=%c\n”,i,c);}运行后输出的数据为()puter->computera[3]=uputer->retupmoca[5]=mputer->retupmoca[4]=pputer->retupmoca[2]=t8.语句while(!E){……}中的条件!E等价于()A.E==0B.E!=1C.E!=0D.~E9.若要打开:A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是()A.fopen("A:\\user\\abc.txt","r")B.fopen("A:\\user\\abc.txt","r+")C.fopen("A:\\user\\abc.txt","rb")D.fopen("A:\\userl\\abc.txt","w")10.以下程序的运行情况是()。
东大17秋学期《高级语言程序设计基础》在线作业217秋学期《高级语言程序设计基础》在线作业2一、单选题(共20道试题,共100分)1.执行fopen函数时,如果发生错误,函数的返回值是()。
A.随机值B.1C.NULLD.EOF答案:C2.如果想要用XXX打开一个新的二进制文件,使其既能读又能写,应该选用的文件方式字符串是()。
A."wb+"B."r+"C."rb+"D."ab+"答案:A3.函数rewind(fp)的作用是:将文件位置指针()。
A.重新返回文件的开头B.返回到前一个字符的位置C.指向文件的末尾D.自动移至下一个字符的位置答案:A4.C语言程序从main()函数开始执行,因此这个函数可以写在()。
A.程序文件的开始B.程序文件的最后C.它所调用的函数的前面D.程序文件的任何位置答案:D5.在C语言中,一维数组的定义方式为:类型说明符数组名()。
A.[常量表达式]B.[整型表达式]C.[整型常量或整型表达式]D.[整型常量]答案:A6.设有定义:int a=1.*p= float b=2.0.char c='A'。
以下不合法的运算是()。
A.p++;B.a--;C.b++;D.c--;答案:A7.以下是一维整型数组a的正确说明()。
A.int a(10);B.int n=10,a[n];C.int n。
scanf("%d",&n)。
int a[n];D.#define SIZE 10.int a[SIZE];答案:D8.以下哪个语句能对一维数组a进行正确初始化()。
A.int a[10]=(0,0,0,0,0);B.int a[10]={ };C.int a[]={0};D.int a[10]=(10*1);答案:C9.如果有以下说明:int a[3][4]={0};则下面正确的叙述是()。
《高级语言程序设计》一、判断题(错误的在后面写“F”,正确的写“T”,每题1分)1. 程序是描述算法的编程工具。
2. 化将函数模板与某个具体数据类型连用,就产生了模板函数,称这个过程为函数模板实例化。
3. C++语言中,用来为对象初始化的特殊成员函数称为构造函数;用于在对象撤销时执行一些清理任务的特殊成员函数称为析构函数。
4. 逐条翻译并执行的翻译程序称为编译程序5. 把所有类组织在一个树形结构中,这时所有类,不管它们之间的差别有多大,都有一个共同的相关类,这种结构被称为类树。
类群是由一些彼此密切相关的类和类族组成的。
6. 如果在定义一个类时,该类继承了多个基类的特征,那么这个继承关系称为多重继承。
7. 不同对象可以调用相同名称的函数,并可导致完全相同的行为的现象称为多态性。
8.形式参数表是用括号分隔的变量说明列表,变量称为函数的形式参数,有时也简称为形参。
9..在C++语言中,只要在声明函数原型时形式参数的个数或者对应的类型不同,两个或更多的函数就可以共用同一个名字。
这种在同一作用域中允许多个函数使用同一函数名的措施被称为重载。
9.C++的作用域分辨:可以迫使编译器“看到”当前作用域的外层部分,存取那些被隐藏的名字。
这是由作用域分辨操作符实现的,这一过程叫做作用域分辨。
11.说明函数原型时不需要指明每个函数参数的名字,只需要说明每个参数的类型和返回值类型就可以了。
12.所有的表达式都有值。
13.程序的编译是以文件为单位的,因此将程序分到多个文件中可以减少每次对程序修改所带来的编译工作量。
14.类的静态数据成员需要在定义每个类的对象时进行初始化。
15.基类中被说明为protected和private的成员只能被其派生类的成员函数访问,不能被其它的函数访问。
16.当将一个类S定义为另一个类A的友元类时,类S的所有成员函数都可以直接访问类A的所有成员。
17.当函数的返回值是数组类型的,传递的是数组第一个元素的地址。
高级语言程序设计自考题-17(总分100, 做题时间90分钟)一、单项选择题(在每小题列出的四个备选项中只有一个是符合题目要求的)1.C语言程序的基本单位是______• A.程序字段• B.语句• C.函数• D.字符SSS_SIMPLE_SINA B C D分值: 2答案:C[考点] C语言的基本知识[解析] C程序是由若干个函数构成的,它的基本单位是函数。
2.若定义int i,*p;指向i的赋值语句是______•**=&i;B.*p=*&i;• C.*p=i;• D.*p=&i;SSS_SIMPLE_SINA B C D分值: 2答案:A[考点] 指针的赋值[解析] p被定义为指向整型变量的指针,只能存储地址,&取地址运算符,&i代表i的地址,p=&i;是使P指向i的赋值语句。
3.下面程序main(){int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;print("%d\n",*(p+2));}的输出是______•**•**•****SSS_SIMPLE_SINA B C D分值: 2答案:B[考点] 指针的移动[解析] 数组名a指向数组的首地址,a+2指针移动指向了“3”,所以输出的是3。
4.下面程序的输出是______void apple(int *x){printf("%d\n",++*x);}main(){int a=25;apple(&a);}•**•**•****SSS_SIMPLE_SINA B C D分值: 2答案:D[考点] 函数的地址传递[解析] 主函数中把a的地址&a作为实参传递给apple函数,*x的值为25,自加1就是26,所以答案为D。
5.在C语言中,下列说法不正确的是______• A.调用函数时,只能把实参的值传送给形参• B.在函数中,最好使用全局外部变量• C.形式参数只是局限于所在函数• D.被说明为static存储类型的外部变量是全局变量SSS_SIMPLE_SINA B C D分值: 2答案:B[考点] 全局外部变量[解析] 全局外部变量破坏了模块的独立性,过多使用全局外部变量会使程序很容易误用变量,出现混乱。
高级语言程序设计期终考试试卷及答案(C)一、填空题(每空1分,共15分)1. 字符常量是用单引号括起来的字符序列2. 结构化程序的3种基本结构是顺序结构,循环结构,选择结构3. C程序的语句是以;作为语句的结束符4. int a; 则a能表示的数据的范围是-32768——327675. float a=8.3; int b=3; 表达式a+b/2的值是9.36. 流程图及N—S图都是一种程序框图的工具7. char c= 'A' ; 要想输出c的ASCII码,输出控制是printf("%d", c );8. 要定义一个能容纳10字符的字符串的一维数组a,定义格式是a[11]9. 定义一个带参的宏AREA,求圆的面积,定义是float AREA(float r)10.int a[4][5]; 则排列在数组中的第9个元素是a[1][3]11. struct s {int a; float b;}; 则sizeof(struct s)的值是612.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为 auto13.要计算0.5sin(x)+cos(x)的值,需要的头文件是math.h14.将一文件以二进制打开进行只读操作,格式是fp=fopen("a.dat", " rb");15. enum day {Mon,Tue,Wed,Thu,Fri,Sta,Sun}; 则Tue的实际值是 1二、选择题(每小题2分,共24分)1. 有以下程序, 执行后输出结果是(C)main( ){int x=102,y=012;printf(“%2d,%2d\n”,x,y);}A) 10,01 B) 02,12 C) 102,10 D) 02,102. 以下叙述正确的是( C )A) 在C程序中,main函数必须位于程序的最前面B) C程序的每行中只能写一条语句C) C语言本身没有输入输出语句D) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误3. 若有说明语句: char c = '\86'; 则变量c ( A )A) 包含1个字符B) 包含2个字符C) 包含3个字符D) 说明不合法4. 在C语言程序中正确的描述是( B )A) 函数的定义可以嵌套,但函数的调用不可以嵌套B) 函数的定义不可以嵌套,但函数的调用可以嵌套C ) 函数的定义和函数的调用均不可以嵌套D) 函数的定义和函数的调用均可以嵌套5. 以下程序段中,不能正确赋字符串的是(C )A) char s[10] = "computer"; B) char t[]="computer", *s=t;C) char s[10]; s="computer"; D) char s[10]; strcpy(s, "computer");6. 执行printf("%x",100);后的输出结果是(D)。
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线……………………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线……………………装订线………………装订线内不要答题,不要填写信息………………装订线…………武汉理工大学考试试题答案(A卷)2017 ~2018 学年1 学期高级语言程序设计课程二、程序阅读题(本大题共 6 小题,每小题4分,共24 分)1.332.73.924.215.46.14三、程序填空题(本大题共2小题,每空3分,共18 分)1.(1)j==i (2)k!=i && k!=j (3)100*i+10*j+k2.(1)month (2)table[i] (3)year%4==0 && year%100!=0 || year%400==0 四、程序编写题(本大题共 3 小题,每小题10 分,共30 分)1.#include <iostream>using namespace std;int main(){ int i,a,b,t,two=0,five=0;cin>>a>>b;for (i=a;i<=b;i++){ t=i;while (t%2==0){ two++; t=t/2; }while (t%5==0){ five++; t=t/5; }}cout<<(two>five?five:two)<<endl;return 0;}2.int fun(int x){int sum = 0;while (x != 0){sum = sum * 10 + (x% 10);x =x / 10;}return sum;}3.double average(LinkList head) {int n=0,s=0;LinkList p;if (head==NULL) return 0;p=head;while (p->next){s=s+p->data;n++;p=p->next;}return 1.0*s/n;}。
高级语言程序设计(嵌入式C)智慧树知到课后章节答案2023年下天水师范学院天水师范学院第一章测试1."程序=算法+数据结构"是()提出的。
A:尼古拉斯•沃斯 B:图灵 C:帕斯卡D:冯•诺依曼答案:尼古拉斯•沃斯2.下列内容,()不属于编程语言。
A:C B:Java C:Python D:Hello答案:Hello3.编程的关键在于选择恰当的数据结构,设计出解决问题的数学表达。
()A:对 B:错答案:对4.下列内容,()不属于算法描述方法。
A:自然语言 B:流程图 C:调查研究法 D:N-S图答案:调查研究法5.自然语言就是人们日常用的语言,或者个人所能理解的符号体系。
()A:对 B:错答案:对6.下列步骤,()不属于四步法。
A:选定编程语言 B:编写程序代码C:算法设计 D:规划程序答案:选定编程语言7.在无代码编程阶段,重点需要考虑程序算法要表达的内容,并用自然语言、流程图或N-S图描述出来。
()A:对 B:错答案:对8.双分支选择结构是通过()来区分两条分支A:赋值表达式B:逗号表达式C:条件表达式D:算术表达式答案:条件表达式9.所谓混合结构的无代码编程,就是将( )、选择、循环结构的无代码编程以某种组合的方式串起来。
A:顺序B:综合C:反复答案:顺序10.循环结构嵌套选择结构可以用于筛选符合条件的数据。
()A:对 B:错答案:对第二章测试1.有如下程序#include <stdio.h>void main( ){ float x=5.0,y;if(x<0.0) y=0.0;else if (x<10.0) y=1.0/x;else y=1.0;printf("%f\n",y);}该程序的输出结果是_( )A:0.50000B:0.000000 C:1.000000D:0.200000答案:0.2000002.有如下程序:#include <stdio.h>void main( ){ int a=2,b=-1,c=2;if (a<b)if (b<0) c=0;printf("%d\n",c);}该程序的输出结果是( )A:1 B:2 C:3D:0答案:23.下列程序执行后的输出结果是void main( ){ int x,y=1,z;if ((z=y)<0) x=4;else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);} ( )A:出错信息B:5,0 C:6,1 D:4,1答案:6,14.有如下程序#include <stdio.h>void main( ){ int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是( )A:a=2,b=1 B:a=1,b=0 C:a=2,b=2D:a=1,b=1答案:a=2,b=15.下面程序的输出结果是#include <stdio.h>void main( ){ int a=-1,b=1,k;if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);elseprintf("%d %d\n",b,a);} ( )A:0 0B:0 1 C:-1 1 D:1 0答案:1 06.以下程序的输出结果是main( ){ int a=100;if (a>100) printf("%d\n",a>100);else printf("%d\n",a<=100);} ( )A:100 B:1C:0 D:a<=100答案:17.若执行下面的程序从键盘上输入9,则输出结果是.#include <stdio.h>void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);else printf("%d\n",n--);} ( )A:10 B:9 C:8D:11答案:108.以下程序输出结果是#include <stdio.h>void main( ){ int m=4;if (++m>5) printf("%d\n",m--);else printf("%d\n",--m);} ( )A:7 B:4C:5 D:6答案:49.有以下程序#include <stdio.h>void main( ){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是 ( )A:2,1 B:2,-1C:4,3 D:3,2答案:2,110.运行下面程序时,若从键盘输入数据为"123",则输出结果是#include "stdio.h"void main(){ int num,i,j,k,place;scanf("%d",&num);if (num>99)place=3;else if(num>9)place=2;elseplace=1;i=num/100;j=(num-i*100)/10;k=(num-i*100-j*10);switch (place){ case 3: printf("%d%d%d\n",k,j,i);break;case 2: printf("%d%d\n",k,j);break;case 1: printf("%d\n",k);}} ( )A:321 B:3,2,1C:1,2,3 D:123答案:32111.执行下列程序后的输出结果是#include <stdio.h>void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);} ( )A:3 B:4 C:1D:2答案:1第三章测试1.以程序编译层面划分程序的组成结构可分为:程序预编译块;主函数块;子函数块。
《高级语言程序设计》第17章在线测试
《高级语言程序设计》第17章在线测试剩余时间:59:52
答题须知:1、本卷满分20分。
2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。
3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。
第一题、单项选择题(每题1分,5道题共5分)
1、若已定义: int a[]={0,1,2,3,4,5,6,7,8,9}, *p=a, i; 其中 0 ≤ i ≤ 9, 则对a数组元素不正确的引用是:
A、a[p-a]
B、*(&a[i])
C、p[i]
D、a[10]
2、以下程序运行后,main(){char *s="abcde"; s+=2; printf("%d\n",s); },输出结果是:
A、cde
B、字符c的ASCII码值
C、字符c的地址
D、值不确定
3、若有int f(int a,int b);,则说明函数f( )。
A、是一个内部函数
B、能被同一源程序其他文件中的函数调用
C、是一个外部函数
D、只能在本文件中使用
4、声明一个函数为外部函数,应该在声明函数的函数类型的前面加( )。
A、auto
B、static
C、extern
D、register
5、在主函数中定义的变量( )。
A、只在主函数中有效
B、可以在整个文件中有效
C、可以在所有函数中有效
D、可以在被调用的函数中有效
第二题、多项选择题(每题2分,5道题共10分)
1、下列对宏定义的描述中,正确的描述是:
A、宏不存在类型问题,宏名无类型,参数也无类型
B、宏替换不占用运行时间
C、宏替换是先求出实参表达式的值,然后带入形参运算求值
D、宏替换只不过是字符替代而已
2、下列描述中,错误的描述是:
A、凡是C源程序中行首以#标示的控制行都是预处理指令
B、预处理是指完成宏替换和文件包含指定的文件调用
C、预处理指令只能位于程序首部
D、预处理就是完成c编译程序对C源程序第一遍扫描,为编译的词法分析和语法分析做准备
3、下列对宏定义的描述中,正确的描述是:
A、宏不存在类型问题,宏名无类型,参数也无类型
B、宏替换不占用运行时间
C、宏替换是先求出实参表达式的值,然后带入形参运算求值
D、宏替换只不过是字符替代而已
4、以下叙述中,正确的叙述是:
int x=5,*p
正确错误int a[10],*p
正确错误、可以利用全局变量从函数中得到多个返回值。
正确错误、可以利用实参从函数中得到多个返回值。
正确错误函数可以递归调用。
正确错误。