程序设计(C)第三次作业

合集下载

c语言计算机三级题目

c语言计算机三级题目

c语言计算机三级题目
C语言计算机三级题目通常涉及一些较为复杂的编程问题,包括但不限于数据结构、算法、文件操作等方面的内容。

这些题目旨在考察考生对C语言的熟练程度和对计算机基本原理的理解。

以下是一些可能出现的题目类型:
1. 数据结构和算法,可能涉及链表、树、图等数据结构的实现和相关算法的应用,如排序算法、查找算法等。

2. 文件操作,要求考生能够使用C语言对文件进行读写操作,包括文件的打开、关闭、读取、写入等操作。

3. 内存管理,可能涉及动态内存分配和释放,要求考生能够正确地使用malloc和free等函数。

4. 函数和指针,可能涉及函数的嵌套调用、指针的应用等,要求考生能够熟练地使用函数和指针来完成特定的任务。

5. 综合性问题,可能要求考生设计一个小型的C语言程序,涉及多个方面的知识,考察考生的综合应用能力。

总的来说,C语言计算机三级题目涵盖了C语言的各个方面,考察考生的编程能力、理解能力和解决问题的能力。

考生在备考时需要系统地复习C语言的基础知识,并多做一些相关的编程练习,以便在考试中取得更好的成绩。

(完整word版)C语言程序设计题库及答案,推荐文档

(完整word版)C语言程序设计题库及答案,推荐文档

第1次客观题作业一、单选题(共30题,每题3分)1 .下面表示正确的是__A___。

A.C语言中的逗号是一种运算符B.在C语言中,一行只能有一个语句C.C中的变量不区分大小写D.c中的关键字可以做为变量名2 .字符型常量在内存中存放的是__A____代码值。

A.ASCII B.二进制C.十进制D.八进制3 .以下不正确的C语言标识符是(C )。

A.AB1 B._ab3 C.4ab D.a2_b4 .以下运算符中优先级最低的运算符是_D____。

A.&& B.& C.|| D.=5 .在C语言中,要求运算数必须是整型的运算符是___A___。

A.% B./ C.< D.!6 . C语言程序的基本单位是__C_____。

A.程序行B.语句C.函数D.字符7 .将高级语言编写的程序翻译成目标程序的是___B____程序。

A.解释程序B.编译程序C.汇编程序D.源程序8 .以下选项中,与k=n++完全等价的表达式是__A___。

A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+19 .下列(A )不属于结构化程序设计的循环结构。

A.For B.While C.if-else D.do-while10 .以下叙述中错误的是__A___。

A.用户所定义的标识符允许使用关键字B.用户所定义的标识符应尽量做到“见名知意C.用户所定义的标识符必须以字母或下划线开头D.用户定义的标识符中,大、小写字母代表不同标识11 .若有输入语句scanf( %d%d%d,&x,&y,&z);则不能使x值为5,y值为6,z值为7的输入是__A____。

A.5,6 ,7 B.5回车换行 6 7 C.5 6 7 D.5,6,712 .若i,j已定义为int类型,则下程序段中内循环体的总的执行次数是( B )。

for (i=3;i>0;i--) for (j=0;j<=4;j++){...}A.12 B.15 C.16 D.2013 .下列选项中,合法的C语言关键字是_D___。

中石大C语言程序设计第次在线作业答案

中石大C语言程序设计第次在线作业答案

第三次在线作业单选题共20道题收起1.2.5分在C语言中,当函数调用时;A、A. 实参和形参各占一个独立的存储单元B、B. 实参和形参共用存储单元C、C. 可以由用户指定实参和形参是否共用存储单元D、D. 由系统自动确定实参和形参是否共用存储单元我的答案:A 此题得分:2.5分2.2.5分以下函数调用语句中实参的个数为; excev1,v2,v3,v4,v5,v6;A、A. 3B、B. 4C、C. 5D、D. 6我的答案:A 此题得分:2.5分3.2.5分如果在一个函数的复合语句中定义了一个变量,则该变量;A、A. 只在该符合语句中有效,在该符合语句外无效B、B. 在该函数中任何位置都有效C、C. 在本程序的原文件范围内均有效D、D. 此定义方法错误,其变量为非法变量我的答案:A 此题得分:2.5分4.2.5分 C语言允许函数值类型缺省定义,此时该函数值隐含的类型是;A、A. float型B、B. int型C、C. long型D、D. double型我的答案:B 此题得分:2.5分5.2.5分 C语言规定,函数返回值的类型是由;A、A. return语句中的表达式类型所决定B、B. 调用该函数时的主调函数类型所决定C、C. 调用该函数时系统临时决定D、D. 在定义该函数时所指定的函数类型决定我的答案:D 此题得分:2.5分6.2.5分在C语言程序中,以下描述正确的是;A、A. 函数的定义可以嵌套,但函数的调用不可以嵌套B、B. 函数的定义不可以嵌套,但函数的调用可以嵌套C、C. 函数的定义和函数的调用均不可以嵌套D、D. 函数的定义和函数的调用均可以嵌套我的答案:B 此题得分:2.5分7.2.5分以下叙述中正确的是;A、A. 全局变量的作用域一定比局部变量的作用域范围大B、B. 静态static类别变量的生存期贯穿于整个程序的运行期间C、C. 函数的形参都属于全局变量D、D. 未在定义语句中赋初值的auto变量和static变量的初值都是随机值我的答案:B 此题得分:2.5分8.2.5分以下程序的运行结果是; include< stdio_h> void subint s,int y { static int t=3; y=st;t--; } main { int a={1,2,3,4},i,x=0; fori=0;i< 4;i++{ suba,x;printf"%d",x;} printf"\n"; }A、A.1234B、B.432lC、C.0000D、D.4444我的答案:C 此题得分:2.5分9.2.5分以下程序的运行结果是: main { int w=5; funw; } funint k { ifk> O funk-1; printf" %d" ,k; }A、A.5 4 3 2 lB、B.0 1 2 3 4 5C、C.1 2 3 4 5D、D.5 4 3 2 1 0我的答案:B 此题得分:2.5分10.2.5分当调用函数时,实参是一个数组名,则向函数传送的是A、A.数组的长度B、B.数组的首地址C、C.数组每一个元素的地址D、D.数组每个元素中的值我的答案:B 此题得分:2.5分11.2.5分在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是;A、A.地址传递B、B.单向值传递C、C.由实参传给形,再由形参传回实参D、D.传递方式由用户指定我的答案:B 此题得分:2.5分12.2.5分定义一个结构体变量时系统分配给它的内存是;A、A. 各成员所需要内存量的总和B、B. 结构体中第一个成员所需内存量C、C. 成员中占内存量最大者所需的容量D、D. 结构中最后一个成员所需内存量我的答案:A 此题得分:2.5分13.2.5分设有如下定义:struct sk {int a ;float b ;}data ,p ;若有p=& data ; ,则对data 中的a 域的正确引用是;A、A.p.data.aB、B.p.aC、C.p-> data.a我的答案:B 此题得分:2.5分14.2.5分当定义一个共用体变量时系统分配给它的内存是;A、A. 各成员所需要内存量的总和B、B. 共用体中第一个成员所需内存量C、C. 成员中占内存量最大者所需的容量D、D. 共用体中最后一个成员所需内存量我的答案:C 此题得分:2.5分15.2.5分设有如下枚举类型定义:enum language { Basic=3 ,Assembly ,Ada=100 ,COBOL ,Fortran} ;枚举量Fortran 的值;A、A. 4B、B. 7C、C. 102D、D. 103我的答案:C 此题得分:2.5分16.2.5分若x=5,y=5,则x& y的结果是;A、A. 0B、B. 2C、C. 3D、D. 5我的答案:D 此题得分:2.5分17.2.5分在位运算中,操作数每左移两位,则结果相当于;A、A. 操作数乘以2B、B. 操作数除以2C、C. 操作数除以4D、D. 操作数乘以4我的答案:D 此题得分:2.5分18.2.5分 C语言可以处理的文件类型是;A、A. 文本文件和数据文件B、B. 文本文件和二进制文件C、C. 数据文件和二进制文件D、D. 数据代码文件我的答案:B 此题得分:2.5分19.2.5分在执行fopen函数时,若执行不成功,则函数的返回值是;A、A.TRUEB、B.–1C、C.1D、D.NULL我的答案:D 此题得分:2.5分20.2.5分在C程序中,可把整型数以二进制形式存放到文件中的函数是;A、A.fprintf函数B、B.fread函数C、C.fwrite函数D、D.fputc函数我的答案:C 此题得分:2.5分判断题共20道题收起21.2.5分下面程序段运行时输出结果是:0,0 1,3 void main { int i; fori=0;i< 2;i++ add; } add { int x=0; static int y=0; printf" %d,%d " ,x,y; x++; y=y+3; }正确错误我的答案:错误此题得分:2.5分22.2.5分下面程序段运行时输出结果是:38.5 int x; void main { x=7; s; printf" %d\n" ,x; } void s { x=5x+x/2; }正确错误我的答案:错误此题得分:2.5分23.2.5分下面程序段运行时输出结果是2 int fint n { int s; ifn==1||n==2 s=1; else s=n-fn-1; return s; } void main { printf“%d”,f3;}正确错误我的答案:正确此题得分:2.5分24.2.5分下面程序段运行时输出结果是29 funint x,int y,int z {z=xx+yy;} main { int a=31; fun5,2,a; printf"%d",a; }正确错误我的答案:错误此题得分:2.5分25.2.5分编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述的结果;判断以下程序是否正确: include< stdio.h> include< string.h> void fltjchar str,int a { int ll,i; ll=strlenstr; for i=0;i< ll;i++ { if stri> =' a' & & stri< =' z' ||stri> =' A' & & stri< =' Z' a0++; else if stri> =' 0' & & stri< =' 9' a1++; else if stri==' ' a2++; else a3++; } } void main { static char str60; static int a4={0,0,0,0}; getsstr; fltjstr,a;printf" %s char:%d digit:%d space:%d other:%d" , str,a0,a1,a2,a3; }正确错误我的答案:正确此题得分:2.5分26.2.5分打印出1-100之间的全部素数要求编写两个函数,一个用于判断一个数是否是素数,另一个是main函数,在main函数中调用该函数实现打印1-100之间的全部素数;判断以下程序是否正确: include < stdio.h> int primeint m { int i; fori=2;i< m;i++ ifm%i==0 return 0; return 1; } void main { int i; fori=2;i< 100;i++ ifprimei printf" %d " ,i; }正确错误我的答案:正确此题得分:2.5分27.2.5分对10个数进行从小到大排序;要求排序在函数sort内完成,用起泡算法;main函数内进行数据输入、调用排序函数sort、并输出排序后的数据;判断以下程序是否正确:include < stdio.h> void sortint a,int n { int i,j,k; for i=0; i< n-1; i++ for j=0; j< n-1-i; j++ if aj> aj+1 { k=aj;aj=aj+1;aj+1=k; } } void main { int a10, i, j, k; printf" 请任意输入10个整数:\n" ; for i=0 ; i< 10 ; i++ scanf" %d" , & ai ; printf" \n" ; sorta,10; printf" 按由小到大的顺序输出10个整数是:\n" ; for i=0; i< 10; i++ printf“%d," ,ai; }正确错误我的答案:正确此题得分:2.5分28.2.5分fun函数用来统计各分数段的分数个数,其中所有分数存放在数组a中,各分数段的分数个数存放在数组b中,85-100分的个数存放到b0,60-84分的个数存放到b1,60以下的个数存放到b2;main函数中输入所有的分数值,调用fun函数,打印各分数段的分数个数;判断以下程序是否正确:includedefine N 20void funint a,int b,int n{ int i;for i=0;i if ai>=85 && ai<=100 b0++;else ifai>=60&&ai<=84 b1++;else ifai<60&&ai>=0 b2++;return;}void main{ int aN,b3,i;funa,b,N;fori=0;i<3;i++ printf“%d\n”,bi;}正确错误我的答案:正确此题得分:2.5分29.2.5分在定义函数时,函数名后面的括号中的变量名称为实参;正确错误我的答案:错误此题得分:2.5分30.2.5分在调用一个函数的过程中又出现直接或间接调用该函数本身,称为函数的递归调用;正确错误我的答案:正确此题得分:2.5分31.2.5分在函数内定义的变量是局部变量,在函数外定义的变量是外部变量;外部变量是全局变量;正确我的答案:正确此题得分:2.5分32.2.5分函数的参数不仅可以是整型、字符型、浮点型等数据,还可以是指针类型;它的作用是将一个变量的地址传送到另一个函数中;正确错误我的答案:正确此题得分:2.5分33.2.5分结构体的成员不能是结构体变量;正确错误我的答案:错误此题得分:2.5分34.2.5分一个结构体变量的指针就是该变量所占内存段的起始地址;正确错误我的答案:正确此题得分:2.5分35.2.5分“按位或”运算指两个运算数相应的二进制位中只要有一个为1,则该位结果值为1,比如0|0=0,1|0=1;正确错误我的答案:正确此题得分:2.5分36.2.5分异或运算指两个运算数相应的二进制位相同则结果为0,相异则结果为1,比如0∧1=1,0∧0=0;正确错误我的答案:正确此题得分:2.5分37.2.5分若fp是指某文件的指针,且已读到文件的末尾,则表达式feoffp的返回值是NULL错误我的答案:错误此题得分:2.5分38.2.5分 C语言库函数fgetsstr,n,fp的功能是从文件fp中读取n个字符串存入str指向的内存;正确错误我的答案:错误此题得分:2.5分39.2.5分函数rewind的作用是使位置指针自动移至下一个字符位置;正确错误我的答案:错误此题得分:2.5分40.2.5分 C语言中以w+方式打开文件后,可执行的文件操作是可任意读写;正确错误我的答案:错误此题得分:2.5分。

聊城大学计算机学院面向对象的程序设计(c++)练习题(第三周)(构造函数和析构函数)

聊城大学计算机学院面向对象的程序设计(c++)练习题(第三周)(构造函数和析构函数)

聊城大学计算机学院面向对象的程序设计第三次作业一、单选题(本大题共17小题,每题3分,共51分):1、在下列函数原型中,可以作为类AA构造函数的是()。

A void AA(int);B int AA( );C AA(int) const;D AA(int);2、下列选项中,哪一项功能是对对象进行初始化()。

A 析构函数B 数据成员C 构造函数D 静态成员函数3、假定A为类名,执行A x;语句时将自动调用该类的()。

A 有参构造函数B 无参构造函数C 拷贝构造函数D 赋值构造函数4、下列关于构造函数的说法,错误的是()。

A 系统可以提供默认的构造函数B 构造函数可以有参数,所以可以有返回值C 构造函数可以重载D 构造函数可以设置默认参数5、有如下类定义:class Point{int x, y;public:Point__________:x_(0), y_(0){}Point(int x, int y = 0):x_(x), y_(y){}};若执行语句:Point a(2), b[3], *c[4];则Point类的构造函数被调用的次数是()。

A 2次B 3次C 4次D 5次6、在下面的类定义中class sample{public:sample(int val); //①~sample( ); //②private:int a=2.5; //③public:sample( ); //④};其中错误的语句是()。

A ①B ②C ③D ④7、假定一个类的构造函数为A(int i = 4, int j = 0) { a = i; b = j;}则执行A x(1)语句后,x.a和x.b的值分别为()。

A 1和0B 1和4C 4和0D 4和18、下列关于构造函数的描述中,错误的是()。

A 构造函数可以设置默认参数B 构造函数在定义类对象时自动执行C 构造函数可以是内联函数D 构造函数不可重载9、下列选项中,哪一项不是构造函数的特征()。

C语言程序设计(第三版)习试题(库)答案解析

C语言程序设计(第三版)习试题(库)答案解析

C语言程序设计(第三版)习试题(库)答案解析C语言程序设计(第三版)习题库1、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。

用scanf输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。

请编程序。

#include main(){float r,h,C1,Sa,Sb,Va,Vb;scanf(__”%f”__,&r);scanf(”%d”,__&h_);;C1=2*3.14*r;Sa=3.14*r*r;Sb=4*Sa;Va=4*3.14*r*r*r/3;Vb=Sa*h;printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f”,Cl,Sa ,Sb,Va,Vb);}2、输入一个华氏温度,要求输出摄氏温度。

公式为c=5(F-32)/9输出要求有文字说明,取位2小数。

#includemain(){float F,c;scanf("%f",&F);____c=5*(F-32)/9______;printf("c=%.2f",c);}3、有一函数:??≥-<≤-<=10113101121x x x x x x y 写一程序,输入x 值,输出y 值。

#includemain(){int x,y;printf("输入x :");scanf("%d",&x);if(x<1) { /* x<1 */y=x;printf("x=%3d, y=x=%d\n",x,y);} else if (____x<10_______){ /* 1≤x-10 */_____y=2*x-1_______;printf("x=%3d, y=2*x-1=%d\n",x,y);} else{ /* x ≥10 */y=3*x-11;printf("x=%3d, y=3*x-11=%d\n",x# include "stdio.h" main(){int x,y;scanf("%d",&x);{ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;}printf("%d",y);}# include "stdio.h" main(){int x,y;scanf("%d",&x);if(x<1){ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;}printf("%d\n",y);}# include "stdio.h" main(){scanf("%d",&x);if(x<1){ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;}printf("%d",y);}scanf("%d",&x);if(x<1){ y=x;}else if(x>=1 && x<10){ y=2*x-1;}else{ y=3*x-11;} # include "stdio.h" main() {int x,y;scanf("%d",&x);if(x<1)y=x;else if(x>=1 && x<10)y=2*x-1;elsey=3*x-11;printf("%d",y);},y);}}4、给定一个不多于5位的正整数,要求:①求它是几位数;②按逆序打印出各位数字。

C程序作业答案

C程序作业答案

计算机应用专业“C++语言程序设计〞课程作业第一次作业一、填空题1.C++语言中的每条根本语句以;作为完毕符,每条复合语句以}作为完毕符。

2.用于输出表达式值的标准输出流对象是cout,用于从键盘上为变量输入值的标准入流对象是cin 。

3.当不需要函数返回任何值时,那么应把该函数类型定义为void 。

4.执行“cout<<143<<’+’<<18<<’=’<<143+18<<endl;〞语句后得到的输出结果为143+18=161。

5.执行“cout<<“ning〞<<“chen〞<<38<<endl;〞语句后得到的输出结果为ningchen38 。

6.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为main。

7.C++源程序文件的缺省扩展名为cpp ,由C++源程序文件编译而成的目标文件的缺省扩展名为obj,由C++目标文件连接而成的可执行文件的缺省扩展名为exe。

8.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用空格或逗号符号作为分隔符。

9.十进制数25表示成符号C++语言规那么的八进制和十六进制数分别为31和19符号。

10.在C++语言中,用转义字符序列\n或操纵符endl表示输出一个换行符。

11.执行“cout<<char〔’b’+2〕<<endl;〞语句后得到的输出结果为d。

12.执行“cout<<char〔’K’-3〕<<endl;〞语句后得到的输出结果为H。

13.’A’~’Z’的ASCII码为65~90,当执行“int x=’H’+5;〞语句后x的值为77 。

14.’A’~’Z’的ASCII码为65~90,当执行“char ch=16*5+2;cout<<ch<<endl;语句序列后,得到的输出结果为R。

(0837)《面向对象程序设计》网上作业题及答案

(0837)《面向对象程序设计》网上作业题及答案

(0837)《面向对象程序设计》网上作业题及答案1:第一次作业2:第二次作业3:第三次作业4:第四次作业5:第五次作业6:第六次作业1:[论述题]编写一个简单的乘法器,界面如下图所示,在第一个文本框中输入第一个乘数;在第二个文本框中输入第二个乘数;当单击"=”按钮时,在第三个文本框中输出其乘积。

参考答案:问题(1):Java程序分为Java应用程序(或Java application)和Java小应用程序(或Java applet);这段程序是Java小应用程序。

问题(2):界面上包含一个标签(JLabel),一个按钮(JButton)和一个文本框(JTextField);点击按钮后,文本框内显示“好好学习,天天向上”。

问题(3):ActionListener是动作事件监听器接口;方法actionPerformed()是ActionListener中的方法;其功能是处理applet界面里发生的动作事件。

2:[论述题]请设计一个软件包。

要求该软件包至少拥有正方形类、圆类。

要求每个类都具有构造方法、计算该图形的周长的成员方法和计算该图形的面积的成员方法。

然后编写一个测试程序,分别创建这些类的实例对象,并输出这些实例对象的周长和面积。

在创建这些实例对象时,构造方法的调用参数值分别是:正方形:左上定点的坐标为(5,10),边长为15。

圆形:圆心的坐标为(0,0),圆心为15。

参考答案:问题(1):Test3是SuperTest的子类(或SuperTest是Test3的父类,或继承关系)。

问题(2):super指对象的父类(或超类);this指使用它的对象本身(或对对象自己的引用)。

问题(3):程序的输出是:Hi, I am OliveNice to meet you!Age is 7My age is 7My parent's age is 353:[论述题]编写一个程序,要求随机生成61个学生的成绩(从0到100的整数),在将成绩排序(由高到低)后保存到文件"score.txt”中。

国家开放大学电大《C语言程序设计》网络课形考任务3作业及答案

国家开放大学电大《C语言程序设计》网络课形考任务3作业及答案

国家开放大学电大《C语言程序设计》网络课形考任务3作业及答案形考任务3一、选择题(共30分,每小题2分)题目1在下面的函数声明语句中,存在着语法错误的是( )。

选择一项:c.AA(int a; int b)题目2在下面的保留字中,不能作为函数的返回值类型的是( )。

选择一项:c. enum题目3假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为( )。

选择一项:c. 4题目4假定a为一个数组名,在下面的表达式中,存在语法错误的是( )。

选择一项:b.*a++题目5用calloc函数创建具有10个整型元素的一维数组的正确语句是( )。

选择一项:c.int*p=calloc(10,4);题目6假定变量m定义为“int m=7;”,则下面正确的语句为( )。

选择一项:b.int*p=&m;题目7假定k是一个double类型的变量,则定义变量p的正确语句为( )。

选择一项:d.char题目8选择一项:d.x=*pa+3;题目9假定有语句为“int b[10];int *pb;”,则下面不正确的赋值语句为( )。

选择一项:d.pb=b[5];题目10已知“int *p=malloc(100);”,要释放p所指向的动态内存,正确的语句为( )。

选择一项:a.free(p);题目11在程序的一个文件中定义的函数,若要在另一个文件中调用,则必须在这另一个文件中给出该函数的( )。

选择一项:a. 原型语句题目12假定一个函数定义为“static int f1(int x,int y){return x+y;}”,该函数名称为()。

选择一项:c. f1题目13假定一个函数的原型语句为“int ff(int*x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是( )。

选择一项:b.ff(a[0])题目14假定一个函数的数组参数说明为char a[],与之等价的指针参数说明为( ) 。

程序设计(C)作业三(有答案)

程序设计(C)作业三(有答案)

程序设计(C)作业三(有答案)第3次作业答案(红字为答案)1. 下列叙述中错误的是()A. 对于double 类型数组,不可直接用数组名对数组进行整体输入或输出B. 数组名代表数组所占存储区的首地址,其值不可变C. 在程序执行过程中,当数组元素下标超出定义的下标范围时,系统将给出“下标”越界的错误提示D. 可以通过赋初值的方式确定数组元素个数提示:请从数组下标的合法取值范围来考虑。

2. 已有定义char a[] = “xyz”,b[]={ ‘x’, ‘y’, ‘z’} ,以下叙述正确的是()A. 数组a 和 b 的长度相同B. 数组 a 的长度小于数组 b 的长度C. 数组a 的长度大于数组 b 的长度D. 上述说法均不正确提示:此题考察字符数组长度和字符串长度之间的关系。

3. 以下能正确定义一维数组的选项是()A. int num[];B. #define N 100 int num[N]C. int num[0..100];D. int N = 100; int num[N];提示:此题考察一维数组的维数界定问题。

4. 下列程序的输出结果是()#includevoid main(){char a[] = {‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f ’, ‘g’, ‘h’, ‘\0 ’}; int i, j;i = sizeof(a); j = strlen(a);printf( “%d, %d\n”, i,j); }A. 9,9B. 8, 9C. 1, 8D. 9,8提示:此题考察字符数组长度和字符串长度之间的关系。

5. 以下不能正确定义二维数组的选项是()A. int a[2][] = {{1, 2}, {3, 4}};B. int a[][2] = {1, 2, 3, 4};C. int a[2][2] = {{1}, {2}};D. int a[2][2] = {{1}, 2, 3};提示:此题考察二维数组初始化的规定。

《程序设计(C语言)》第3阶段在线作业

《程序设计(C语言)》第3阶段在线作业

一、单项选择题答题要求 :每题只有一个正确的选项。

1(5.0 分)5.0下列描述中不正确的是( ) A) 字符型数组中可以存放字符串  B) 可以对字符型数组进行整体输入、输出   C) 可以对整型数组进行整体输入、输出   D) 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值 参考答案: C收起解析 解析:无2(5.0 分)5.0已有定义:int x=3,y=4,z=5;则表达式!(x y) z-1&&y z/2 的值是( ) A) 6  B) 0   C) 2   D) 1 参考答案: D收起解析解析:无3(5.0 分)5.0已定义 c 为字符型变量,则下列语句中正确的赋值语句是( ) A) c='66';  B) c="66" c=66; C) D) c="B"参考答案: C收起解析解析:无4(5.0 分)5.0下面有关 for 循环的正确描述是( ) A) for 循环只能用于循环次数已经确定的情况  B) for 循环是先执行循环体语句,后判断表达式   C) 在 for 循环中,不能用 break 语句跳出循环体   D) for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 参考答案: D收起解析解析:无5(5.0 分)5.0下列循环语句中,不能够正常结束的是( ) A) int i=0;for(;i<100;i );  B) int i=0;for(;;){if(i >100)break;}   C) int i=0,j=0;while(i<=j)j ;   D) int i=0,j=0;do{i =j;i ;j ;}while(i<j); <="" div="" style="box-sizi ng: border-box;"> 参考答案: D收起解析解析:无6(5.0 分)5.0下列说法正确的是( ) A) main 函数必须放在 C 程序的开头  B) main 函数必须放在 C 程序的最后   C) main 函数可以放在 C 程序的中间部分,但在执行 C 程序时是从程序开头执 行的   D) main 函数可以放在 C 程序的中间部分,但在执行 C 程序时是从 main 函数 开始的 参考答案: D收起解析解析:无7(5.0 分)5.0已知 char b[5],*p=b; ,则正确的赋值语句是( ) A) b=“abcd”; B) *b=“abcd”;  C) p=“abcd”;   D) *p=“abcd”; 参考答案: C收起解析解析:无8(5.0 分)5.0已定义以下函数 fun(int *p) { return *p; } 该函数的返回值是( ) A) 不确定的值  B) 形参 p 中存放的值   C) 形参 p 所指存储单元中的值   D) 形参 p 的地址值 参考答案: D收起解析解析:无9(5.0 分)0已定义 c 为字符型变量,则下列语句中正确的是( ) A) c='97'; B) c="97";c="a"; C)c=97; D)参考答案: D收起解析解析:无10(5.0 分)5.0以下不合法的赋值语句是( ) A) x=(1,y=2);++x; B) C) x=y=15; D) y=int(x);参考答案: B收起解析解析:无11(5.0 分)5.0下述语句的输出为( ) int m=-1; printf(“%d,%u,%o”,m,m,m); A) -1,-1,-11  B) -1,32767,-177777  C) -1,32768,177777   D) -1,65535,177777 参考答案: D收起解析解析:无12(5.0 分)5.0已知 char ch=‘A’,且表达式:ch=(ch>=‘A’&&ch<=‘Z’)?(ch 32):ch, 该表达式的值是( ) A) A  B) a   C) z   D) Z 参考答案: B收起解析 解析:无13(5.0 分)5.0下列数组定义及赋值不正确的是( ) A) int a[10]={0,1,2,3,4,5,6,7,8,9};  B) int a[ ]={0,1,2,3,4,5,6,7,8,9};   C) int a[2][5]= {0,1,2,3,4,5,6,7,8,9};   D) int a[2][ ]= {0,1,2,3,4,5,6,7,8,9}; 参考答案: D收起解析 解析:无14(5.0 分)5.0已知 char ch='A'; 且表达式 ch=(ch>='A' && ch<='Z') ?(ch 32) ::ch 的值是( )A a Z 出错 A)  B)  C)  D)参考答案: B收起解析解析:无15(5.0 分)5.0以下程序中,while 循环的循环次数是( ) A) 1  B) 10  C) 6   D) 死循环,不能确定次数 参考答案: D收起解析解析:无16(5.0 分)5.0已知:int a[ ][3]={1,2,3,4,5,6,7,8,9,0}; 则数组 a 的第一维的大小是 () A) 2  B) 3   C) 4   D) 无法确定; 参考答案: C收起解析解析:无17(5.0 分)5.0下面不是 C 语言基本数据类型的是( ) A) 指针类型整型 B) C) 无符号长整型  D) 单精度型参考答案: A收起解析解析:无18(5.0 分)5.0已知小写字母的 ASCII 码为 97,对于 int a=99, b='b'; printf(“%c,%d”, a , b);的结果是( )99, b A)c, 98 B) C) 99, 98c, b D)参考答案: B收起解析解析:无19(5.0 分)5.0以下不能正确定义二维数组的选项是( ) A) int a[2][2]={{1},{2}} B) int a[][2]={l,2,3,4}  C) int a[2][2]={{l},2,3}   D) int a[2][]={{1,2},{3,4}} 参考答案: D收起解析解析:无20(5.0 分)5.0已知 int a=4,b=5; ,这执行表达式 a=a>b 后,变量 a 的值为( ) A) 0  B) 1   C) 4   D) 5 参考答案: A收起解析 解析:无。

C 第三次实验 专业实践报告

C  第三次实验 专业实践报告

实验报告课程名称程序设计基础实验项目_实验仪器 vc6.0系别___ 光电专业测控技术与仪器班级/学号_学生姓名实验日期 ______成绩__ _指导教师北京信息科技大学计算机学院专业实践报告实验课程名称:程序设计基础专业测控班级:学号:姓名成绩:实验名称实验地点实验时间1.实验目的:2.实验内容:链表操作:#define NULL 0#define LEN sizeof(struct student)#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <malloc.h>struct student{ long num;int score;struct student *next;};//创建节点struct student *creat(){struct student *head,*p1,*p2;p1=(struct student *)malloc(LEN);printf("\n输入学生学号成绩:");scanf("%d,%d",&p1->num,&p1->score);head=p1;p2=p1;/*while(p1->num!=0){ p2=p1;p1=(struct student *)malloc(LEN);printf("\n输入当前学生学号成绩:");scanf("%ld%d",&p1->num,&p1->score);p2->next=p1;}free(p1); */p2->next=NULL;return(head);}//插入节点struct student *insert(struct student *head) {struct student *p0,*p1,*p2,*pstu;printf("\n输入要插入学生学号与成绩:");pstu=(struct student *)malloc(LEN);scanf("%d,%d",&pstu->num,&pstu->score); p1=head;p0=pstu;if (head==NULL){ head=p0;p0->next=NULL;return(head);}elsewhile(p0->num>p1->num&&p1->next!=NULL) { p2=p1; p1=p1->next; }if(p0->num<=p1->num){ if (head==p1)head=p0;elsep2->next=p0;p0->next=p1;}else{ p1->next=p0;p0->next=NULL;}return(head);}//删除节点struct student *del(struct student *head) {struct student *p1,*p2;long num;p1=head;printf("\n输入要删除学生学号:");scanf("%d",&num);while(num!=p1->num&&p1->next!=NULL) {p2=p1;p1=p1->next;if (num==p1->num){if (p1==head)head=p1->next;elsep2->next=p1->next;printf("\n删除成功!");free(p1);break;}else{printf("\n没有该结点!"); break;}}return(head);}void print(struct student *head){struct student *p;printf("\n现在链表中的结点:");if(head==NULL){printf("空链\n");return;}p=head;while(p!=NULL){ printf("\n%ld\t%5d",p->num,p->score); p=p->next;}}void main(){struct student *head;char ch;while (1){printf("\nChain_list operation Menu\n");printf("\tC - Create list\n");printf("\tO - Output list\n");printf("\tI - Insert a node into list\n");printf("\tD - Delete a node form list\n");printf("\tX - Exit the program\n");printf("\nPress one of the above keys: ");ch=getchar();switch (ch){case 'C': head=creat(); break;//case 'O': print(head); break;//case 'I': head=insert(head); break;// case 'D': head=del(head);break; //case 'X': exit(0);}}}3.实验要求:4.实验准备:5.实验过程:6.实验总结:。

【东北大学】21春学期《C语言及程序设计》在线平时作业3【答案】

【东北大学】21春学期《C语言及程序设计》在线平时作业3【答案】

21春学期《C语言及程序设计》在线平时作业3红字部分为答案!一、单选题1.若有以下定义:intm=7,n=12;则能得到值为3的表达式是()。

A.n%=(m%=5)B.n%=(m-m%5)C.n%=m-m%5D.(n%=m)-(m%=5)2.函数rewind(fp)的作用是:使文件位置指针()。

A.重新返回文件的开头B.返回到前一个字符的位置C.指向文件的末尾D.自动移至下一个字符的位置3.下面程序的运行结果是()。

charc[]="\t\v\\\0will\n";printf("%d",strlen(c));A.14B.3C.9D.字符串中有非法字符,输出值不能确定4.下列关于switch语句和break语句的结论中,只有()是正确的。

A.break语句是switch语句的一部分B.在switch语句中可以根据需要使用或不使用break语句C.在switch语句中必须使用break语句D."以上三个结论有两个是正确的"5.设I和x都是int类型,则对于for循环语句for(i=0,x=0;i<9;i++),下列哪句话正确()。

A.执行8次B.执行9次C.是无限循环D.循环体一次也不执行6.设int类型的数据长度为2个字节,则unsignedint类型数据的取值范围是()。

A.0~255B.0~65535C.-32768~+32767D.-256~+2557.下面的叙述,不正确的是()。

A.宏名无类型,其参数也无类型B.宏定义不是C语句,不必在行末加分号C.宏替换只是字符替换D.宏替换定义命令必须写在文件开头8.若有定义:intA[3][4];能表现数组元素A[1][1]的是()A.(A[1]+1)B.*(A[1][1])。

中国石油大学《程序设计(C语言)》2021年春季学期在线作业(三)附参考答案

中国石油大学《程序设计(C语言)》2021年春季学期在线作业(三)附参考答案
D.3,2,2
答案:A
A.3
B.4
C.0
D.2
答案:C
11.在一个C程序中( )
A.main函数必须出现在所有函数之前
B.main函数可以在任何地方出现
C.main函数必须出现在所有函数之后
D.main函数必须出现在固定位置
答案:B
12.下面有关for循环的正确描述是( )
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断表达式
C.while(‘\0’)
D.for(;’\0’;)
答案:B
7.已定义c为字符型变量,则下列语句中正确的赋值语句是( )
A.c='66';
B.c="66"
C.c=66;
D.c="B"
答案:C
8.以下非法的赋值语句是( )
A.n=(i=2, i);
B.j ;
C.(i 1);
D.x=j>0;
答案:C
9.以下选项中不能正确赋值的是( )
答案:A
15.在C语言中,下列字符常量中合法的是( )
A.′\084′
B.′\x43′
C.′ab′
D.”\0”
答案:B
16ห้องสมุดไป่ตู้执行int j,i=1; j=-i ; 后j的值是( )
A.-1
B.-2
C.1
D.2
答案:A
17.以下选项中可作为C语言合法整数的是( )
A.10110B
B.0386
C.x2a2
D.0Xffa
答案:D
18.以下选项中合法的用户标识是( )
A.long
B._2Test
C.3Dmax

汇编语言程序设计 第一二三阶段在线作业

汇编语言程序设计 第一二三阶段在线作业

第一次在线作业单选题 (共40道题)∙A、BX或CX∙B、CX或SI∙C、DX或SI∙D、SI或DI我的答案:D 此题得分:2.5分∙A、数据段中偏移量为3236H的字节∙B、附加段中偏移量为3234H的字节∙C、数据段中偏移量为3234H的字节∙D、附加段中偏移量为3236H的字节我的答案:A 此题得分:2.5分∙A、上一条指令的首地址∙B、下一条指令的首地址∙C、正在执行指令的首地址∙D、需计算有效地址后才能确定地址我的答案:B 此题得分:2.5分4.(2.5分)某系列微机对存储器的分段,如果每一个段最多的字存储单元(16位二进制)是32K,那∙A、20位∙B、16位∙C、15位∙D、12位我的答案:B 此题得分:2.5分∙A、AX,BX,CX,DX∙B、DS,ES,CS,SS∙C、SP,BP,IP,BX∙D、SI,DI,BP,BX我的答案:D 此题得分:2.5分6.(2.5分)要求将A,B两个字符的ASCⅡ码41H,42H顺序存放在连续两个字存储单元中,可选用∙A、DA1 D B ‘AB’∙B、DA1 DW ‘AB’∙C、DA1 B ABH∙D、DA1 W ABH我的答案:A 此题得分:2.5分∙A、DB 5H∙B、DW ABCDH∙C、DW ‘ABCD’∙D、DD ‘AB’我的答案:C 此题得分:2.5分∙A、通用寄存器∙B、堆栈∙C、程序计数器∙D、主存单元我的答案:D 此题得分:2.5分∙A、变址寻址∙B、寄存器寻址∙C、相对寻址∙D、寄存器间接寻址我的答案:D 此题得分:2.5分∙A、85B92H∙B、86192H∙C、BB690H∙D、12169H我的答案:A 此题得分:2.5分∙A、AX,BX,CX,DX∙B、BX,BP,SI,DI∙C、SP,IP,BP,DX∙D、CS,DS,ES,SS我的答案:B 此题得分:2.5分12.(2.5分)BUF DW 10H DUP(3 DUP(2,10H),3,5) 上述语句汇编后,为变量BUF分配的存∙A、80H∙B、100H∙C、124∙D、192我的答案:B 此题得分:2.5分∙A、物理地址∙B、偏移地址∙C、逻辑地址∙D、段地址我的答案:A 此题得分:2.5分∙A、字∙B、双字∙C、字节∙D、四字我的答案:C 此题得分:2.5分∙A、符号∙B、变量∙C、助记符∙D、标号我的答案:B 此题得分:2.5分∙A、DATA1 DW 1856H∙B、DATA1 DB 18H,56H∙C、DATA1 EQU 5618H∙D、DATA1 DB 18H,00H,56H,00H我的答案:B 此题得分:2.5分17.(2.5分)计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码,目前,微∙A、BCD码∙B、二进制码∙C、ASCII码∙D、十六进制码我的答案:C 此题得分:2.5分18.(2.5分)假设存储器中从7462H单元开始的四个相邻字节单元中的内容依次是32H,46H,52H,∙A、7462H∙B、7463H∙C、7464H∙D、7465H我的答案:C 此题得分:2.5分∙A、08090H∙B、08089H∙C、0808EH∙D、08450H我的答案:A 此题得分:2.5分∙A、16*SS+SP∙B、16*SS+BP∙C、16*DS+BP∙D、16*CS+BP我的答案:A 此题得分:2.5分∙A、16*SS+BP+DI∙B、16*ES+BP+DI∙C、16*DS+BP+DI∙D、16*CS+BP+DI我的答案:A 此题得分:2.5分22.(2.5分)一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一∙A、12C5BH∙B、12B6BH∙C、12C59H∙D、12BFEH我的答案:C 此题得分:2.5分∙A、2345H∙B、12345H∙C、12340H∙D、1234H我的答案:D 此题得分:2.5分∙A、变址寻址∙B、寄存器寻址∙C、相对寻址∙D、寄存器间接寻址我的答案:D 此题得分:2.5分∙A、DB 20 DUP(?)∙B、DW 20H DUP(?)∙C、DB 10H DUP(4 DUP(?))∙D、DD 08H DUP(?)我的答案:D 此题得分:2.5分∙A、BX∙B、BP∙C、SI∙D、DI我的答案:B 此题得分:2.5分∙A、ZF=1∙B、ZF=0∙C、SF=l∙D、SF=0我的答案:A 此题得分:2.5分∙A、304FH∙B、304EH∙C、3048H∙D、3049H我的答案:B 此题得分:2.5分∙A、185A2H∙B、00020H∙C、01004H∙D、0AB568H我的答案:B 此题得分:2.5分∙A、.64K个字∙B、32K个字节∙C、64K个字节∙D、.1兆个字节我的答案:C 此题得分:2.5分∙A、DIV 2∙B、DIV DX,2∙C、SAR DX,1∙D、SHL DX,1我的答案:C 此题得分:2.5分∙A、BX或CX∙B、CX或SI∙C、DX或SI∙D、SI或DI我的答案:D 此题得分:2.5分∙A、TEST AL,02H ∙B、OR AL,AL∙C、CMP AL,BL∙D、AND AL,BL我的答案:D 此题得分:2.5分∙A、CMP∙B、SUB∙C、AND∙D、MOV我的答案:D 此题得分:2.5分∙A、XCHG AX,DS∙B、XCHG BL,[BX]∙C、XCHG AL,OFH ∙D、XCHG[SI],[DI]我的答案:B 此题得分:2.5分∙A、ADD BH,01H ∙B、OR BH,01H∙C、XOR BH,01H ∙D、TEST BH,01H 我的答案:B 此题得分:2.5分∙A、NOT AL∙B、AND AL,0FH ∙C、XOR AL,0FH ∙D、OR AL,0FH我的答案:C 此题得分:2.5分∙A、SHR AX,1∙B、SHL AX,1∙C、ROL AX,1∙D、RCR AX,1我的答案:B 此题得分:2.5分39.(2.5分)ORG 0030HDA1 DB 0,‘0’,30HDW DA1数据为3000H字存储单元的偏移地址是:∙A、0030H∙B、0031H∙C、0032H∙D、0033H我的答案:A 此题得分:2.5分40.(2.5分)BUF DW 10H DUP(3 DUP(2,10H),3,5)上述语句汇编后,为变量BUF分配的存储单元字节数是:∙A、80H∙B、100H∙C、124∙D、192我的答案:B 此题得分:2.5分-------------------------------------------------分割-----------------------------------------------------第二次在线作业单选题 (共30道题)∙A、对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令∙B、对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令∙C、对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令∙D、对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令我的答案:C 此题得分:2.5分∙A、MOV AL,[BX+SI]∙B、JMP SHORT DONING∙C、DEC [BX]∙D、MUL CL我的答案:C 此题得分:2.5分∙A、外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内∙B、外循环初值应置外循环之内;内循环初值应置内循环之内∙C、内、外循环初值都应置外循环之外∙D、内、外循环初值都应置内循环之外,外循环之内我的答案:A 此题得分:2.5分∙A、ZF=0∙B、CF=0∙C、ZF=1∙D、CF=1我的答案:A 此题得分:2.5分∙A、ADD BUF1,BUF2∙B、JMP DWORD PTR DAT [BX]∙C、MOV AX,[BX+DI] NUM∙D、TEST AL,08H我的答案:A 此题得分:2.5分∙A、JMP NEXT∙B、JC NEXT∙C、INC BX∙D、SHL AX,1我的答案:D 此题得分:2.5分∙A、目标程序∙B、源程序∙C、可执行程序∙D、汇编程序我的答案:B 此题得分:2.5分∙A、XCHG AX,[BX][SI]∙B、MOV AX,[BX+SI]∙C、LEA AX,BX[SI]∙D、LEA AX,[BX][SI]我的答案:D 此题得分:2.5分∙A、1FFFH∙B、1998H∙C、2002H∙D、1FFEH我的答案:D 此题得分:2.5分∙A、把源操作数的符号位扩展到目的操作数中∙B、把AL中的符号位扩展到AH中∙C、把AH中的符号位扩展到AL中∙D、把AX中的符号位扩展到DX中我的答案:B 此题得分:2.5分∙A、CX=0,且ZF=0∙B、CX=0,或ZF=1∙C、CX≠0,且ZF=0∙D、CX≠0,或ZF=1我的答案:B 此题得分:2.5分∙A、MOV CS,AX∙B、MOV DS,AX∙C、MOV SS,AX∙D、MOV ES,AX我的答案:A 此题得分:2.5分∙A、MOV BX,VAR∙B、LDS BX,VAR∙C、LES BX,VAR∙D、LEA BX,VAR我的答案:D 此题得分:2.5分∙A、3211H∙B、320EH∙C、320FH∙D、3212H我的答案:B 此题得分:2.5分15.(2.5分)汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省∙A、名字项∙B、操作项∙C、操作数项∙D、注释项我的答案:B 此题得分:2.5分∙A、伪指令∙B、指令∙C、标号∙D、助记符我的答案:B 此题得分:2.5分∙A、1400H∙B、77F8H∙C、0000H∙D、0FFFFH我的答案:A 此题得分:2.5分∙A、XCHG AX,DS∙B、XCHG AX,[BX]∙C、XCHG AX,CSH∙D、XCHG[SI],[DX]我的答案:B 此题得分:2.5分19.(2.5分)设数据段有:DA1 DB XX ;是任一数据DA2 DB OFEH 下列两条指令:MOV DL,∙A、.0FFH或0FEH∙B、只能是0FEH∙C、只能是0FFH∙D、只能是01H我的答案:A 此题得分:2.5分20.(2.5分)ORG 100H NUM EQU 8042H DA1 DB 56H MOV BX,0FFSET DA1 上述程序段∙A、56H∙B、100H∙C、101H∙D、102H我的答案:B 此题得分:2.5分∙A、段内转移直接寻址∙B、段内转移间接寻址∙C、段间转移直接寻址∙D、段间转移间接寻址我的答案:C 此题得分:2.5分∙A、DIV 2∙B、DIV DX,2∙C、SAR DX,1∙D、SHL DX,1我的答案:C 此题得分:2.5分∙A、指令XOR AX,AX执行后,AX内容不变,但设置了标志位∙B、指令OR DX,1000H执行后,将DX最高位置1,其余各位置0∙C、指令AND AX,OFH执行后,分离出AL低四位∙D、NOT AX,执行后,将AX清0我的答案:C 此题得分:2.5分∙A、ROL CL,1 ROL CL,1∙B、MUL 4∙C、SHL CL,1 SHL CL,1∙D、MOV CL,2 SHL CL,CL我的答案:C 此题得分:2.5分∙A、MOV [DI],[SI]∙B、MOV [DX+DI],AL∙C、MOV WORD PTR [BX],0100H ∙D、MOV AL,BX我的答案:C 此题得分:2.5分∙A、ZF=1∙B、ZF=0∙C、SF=1∙D、SF=0我的答案:A 此题得分:2.5分∙A、MOV [BX+SI],BX∙B、MOV CL,[BP+DI]∙C、MOV CS,AX∙D、MOV DS,AX我的答案:C 此题得分:2.5分∙A、AL=57H,BL=24H∙B、AL=33H,BL=24H∙C、AL=57H,BL=33H∙D、AL=33H,BL=0我的答案:B 此题得分:2.5分∙A、0FFH∙B、80H∙C、00H∙D、0FEH我的答案:A 此题得分:2.5分30.(2.5分)已知BX=028AH,SI=0294H,(DS:051EH)=5432H。

C程序设计作业

C程序设计作业

第一章作业答案:一,59,14.4,28.e二1小题,592,15一、将数89、20.25、40.875用十六进制表示二、填空1.在C语言中,数值常量0x3b的十进制值是。

2.字母f的ASCII码为十进制数___________。

第三章作业一、选择题:1、下列变量名中, B 是非法的。

A) Tom B) 3n C) little_boy D) c102、若有以下类型说明char a; int b; float c; double d;则表达式a*b+d-c的结果类型是(A )A)float B)char C)int D)double3、若x为整型,则逗号表达式(x=4*5,x*5),x+25的结果及x的值分别是(C )正确答案是100,45A)45 20 B)125 20 C)125 45 D)100 1004、假设所有变量均为整型,则表达式(a=3,b=2,b++,a+b)的值是 C 。

A) 5 B) 8 C) 6 D)75、已知c2为字符型,则执行语句c2=’E’+’8’-‘A’后,c2的值为 C 。

A) 12 B) 11 C)不确定的值D) 106、设a为double变量,b为int型变量,c为字符型变量,则a+b+c为( C )型A) int B) float C) double D) char7、C语言中不可用作标识符的字符有( C )A下划线B %C数字D字母8、下面四个选项中,均是合法整型常量的是(D )A)160 B)- 0xcdf C)- 01 D)0x - 0xffff 01a 0668 2e59、设a为字符变量,b为int型变量,c为double型变量,则a*b+c为( C )型A. intB. floatC. doubleD. char10.若a是int型变量,则表达式(a=4*5,a*2),a+4的值为( C )A. 20B.22C. 24D. 44第四章作业一、选择题1、若x为int型变量,则执行以下语句后x= C 。

c++形考作业及答案

c++形考作业及答案

C++语言程序设计课程作业(1)解答2013年09月10日文章浏览次数:10责任教师联系方式:朱兰:zhul@资料来源:北京广播电视大学一、填空题1.; } 2. cout cin 3. void 4. 143+18=161 5. ningchen 186. main 7. cpp obj exe 8. 空格回车 9. 031 0x1910. ‘\n’ endl 11. d 12. H 13. 77 14. R 15. xc=216. 4 17. 1 2 4 18. 4 8 19. int double 20. const21. 初始化 22. 2 13 23. 12 21 24. (x*x+y*y)/(2-x*y)25.(x*y*y)/(3*a)+4*b-1 26. 6.25 4 27. a+=b 28. ++a29. y=y+1 30. (!x) 31. (x) 32. x+y<=z 33. x<=5 || x>=1034. a<=b && b!=5 35. false 或0 true 或1 36. 10 37. 2038. DataType 39. 它们均为真 40. 它们均为假二、写出下列程序运行后的输出结果1.good!pass!bad!well!2.8 2403.23.s=554.i,s=19,635.25 206.y=441 三、写出下列每个函数的功能1. 比较两个整数a和b的大小,若a>b则返回1,若a==b则返回0,若a<b则返回-1。

2. 求出a,b,c三个数中的最大值并返回。

3. 求出从键盘上输入的n个整数之和并返回。

4. 计算1+x/2+x2/3+...+x n/(n+1)的值并返回。

5. 判断x是否为一个质数,若是则返回1,否则返回0。

6. 求出从键盘上输入的一批常数的平均值,以-100作为结束输入的标志。

C++语言程序设计课程作业(2)解答2013年09月10日文章浏览次数:16责任教师联系方式:朱兰:zhul@资料来源:北京广播电视大学一、填空题1. 5 202. 24 963. 64 644. 数组类型5. 全局 06. 调用7. 引用值 8. 局部二、给出下列程序运行后的输出结果1. 4 2 42. worker apple3. 73 664. 7 35.5 3 2 2 26. 2 1 6 17. 2 0 248. 10 2040 7540 20三、写出下列每个函数的功能1.统计出数组a中大于等于值为k的元素个数并返回。

C语言程序设计习题答案(第三版)

C语言程序设计习题答案(第三版)

C语言程序设计(第三版)习题答案习题一一、名词解释(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)高级语言P2(5)汇编程序P3 (6)编译程序P4 (7)算法P5 (8)结构化程序设计方法P10二、简答题1. 设计程序时应遵循哪些基本原则?P4答:正确性、可靠性、简明性、有效性、可维护性、可移植性。

2. 算法具有哪些特点?答:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。

3. 算法的表示形式有哪几种?答:自然语言、伪代码、传统流程图、N-S流程图、计算机语言。

4. 结构化程序设计方法的三种基本结构是什么?答:顺序结构、选择结构和循环结构。

5. 传统流程图与N-S流程图最大的区别是什么?答:N-S流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。

三、用传统流程图或N-S流程图表示求解以下问题的算法。

1. 从键盘输入10个整数,求出其中的最小数并输出。

2. 求1+2+3+…+100的值。

3. 求10~50的所有素数之和。

4. 求下列分段函数的值。

四、请参照本章例题,编写一个简单的C 程序,输出以下三行信息。

**************************Yangtze University**************************#include <stdio.h>void main(){printf("**************************\n");printf(" Yangtze University\n");printf("**************************\n");}4X-1 (X ≤1) 5(X-1)+6 (1<X<5) 6-3X (X ≥5)习题二一、选择题1~10: B C D C D D B C A A11~20: D A C D B D B A C D二、填空题1.字母 L 或字母 l2. %c(或字符) 、 %d(或整数)3.在程序运行过程中,其值可以在一定的范围内变化的量4.'\0'5.小数形式、指数形式6.关键字、预定义标识符、用户标识符7.字母、数字、下划线、数字8. 189. 2 、 1 、 3010.双精度实数或double11.赋值、逗号、 20 、 20 、 20 、 412. 4 、 4习题三一、选择题1~10: B C C B C C C D C C注:第4题答案D为: 10 22↙33↙二、填空题1. printf 、 scanf2. h3."%5d"4.'\0'5. e 、 E6. 67. s 、 c8. *9. - 、 +10. i三、编程题1. 编写程序,从键盘输入一个以秒为单位的时间数,将其换算成几小时几分几秒,然后进行输出。

C语言程序设计-第三次作业的部分答案及分析

C语言程序设计-第三次作业的部分答案及分析

三、写出下列每个程序运行后的输出结果1. #include<stdio.h>void SB(char ch) {switch(ch) {case 'A': case 'a'://相当于if(ch==’A’||ch==’a’)printf("WW "); break;case 'B': case 'b':printf("GG "); break;case 'C': case 'c':printf("PP "); break;default:printf("BB "); break;}}void main() {char a1='b',a2='C',a3='f';SB(a1);SB(a2);SB(a3);SB('A');//4次调用SB,实际参数分别为b、C、f和Aprintf("\n");}GG PP BB WW2. #include<stdio.h>#include<stdlib.h>double SD(int a, int b, char op) {double x;switch(op) {case '+': x=a+b; break;case '-': x=a-b; break;case '*': x=a*b; break;case '/': if(b) x=(double)a/b;else exit(1);break;default: {printf("运算符错!\n");exit(1);}}return x;}void main() {int x=20,y=8;printf("%3.2lf ",SD(x,y,'-'));//以浮点形式输出x和y 的差printf("%3.2lf ",SD(x,y,'*'));//以浮点形式输出x和y 的积printf("%3.2lf\n",SD(x+y,y,'/')); //以浮点形式输出x+y和y 的商}//小数点后保留2位。

《C程序设计》作业参考答案(1-4章)

《C程序设计》作业参考答案(1-4章)

第1章C语言概述习题(P13):1.3 写出一个C程序的构成。

答:C程序由一个main函数和0个或多个自定义函数构成,每个函数的构成如下:函数类型函数名(函数参数列表){说明部分执行部分}1.4 C语言以函数为程序的基本单位,有什么好处?答:一个函数实现一个相对独立的功能,便于实现程序的模块化。

1.5 请参照本章例题,编写一个C程序,输出以下信息:*************************************************Very good!*************************************************答:参照例1.1编程如下# include <stdio.h>void main(){printf("********************************************\n");printf(" Very good!\n");printf("********************************************\n");}1.6 编写一个C程序,输入a、b、c 3个值,输出其中最大者。

答:参照例1.3编程如下法一:修改例1.3的主函数,自定义max函数不变。

# include <stdio.h>void main(){int max(int x,int y); /*函数声明*/int a,b,c,m; /*定义4个变量,m用于存放最大值*/scanf("%d%d%d",&a,&b,&c);/*从键盘上输入3个整数*/m=max(a,b); /*第一次调用max函数求出前两个数的最大值放在m中*/m=max(m,c); /*再调max函数求出m和第三个数的最大数*/printf("max is %d\n",m); /*输出结果*/}int max(int x,int y) /*定义求两个数的最大数的函数max */{int z;if(x>y) z=x;else z=y;return(z);}法二:修改例1.3的主函数和max函数,将max函数改为求3个数的最大数。

C++程序设计语言第三次作业题及答案.doc

C++程序设计语言第三次作业题及答案.doc

第3次作业一、填空题(本大题共20分,共5小题,每小题4分)1.类型兼容原则指的是:任何在需要_______ 对象的地方,都可以用 ________ 的对象去替代。

2.重新抛出异常的表达式为:_______ o3.STL中算法大致分为四类,分别是_________ 、 _____ 、______ 、______ o4.以下程序的执行结果是____________________ o#inelude <iostream>using namespace std;class A{int x;public:A(int x) {this->x二x;}A &operator--(){x--;return *this;}A operator--int){A a(x-=2);return a;}void show() { cout<< x;}};void main () {A a(3),b(3);(a--). show();(一一b)・ show();5.以下方阵类CSquare完成查找n行n列的二维int数组中两对角线上最大元素的值•请你填空完成此功能.# include class CSquare { int //arr 为矩阵首地址int num; //表示行数与列数_______ // CSquare(int *p, int n){______ // num = n;}______ //};int CSquare::FindMax() const { int max; int i 二0;int r, c, tmp;max = arr[0];for (; i < num ; i++){r = arr[i^num + i] ; //r为第i行对角线上的一个元素值_________ // c为第i行另一个对角线上的一个元素值if( r > c ) tmp 二r;else tmp = c;if ( max < tmp) max = tmp;}return max;}void main() { static int a[5][5]二{{20, -5, 21, 1& 156},{3, ~6, -& 26, ~3},{10, 7, 74, 200, 011, 94, 3, 239, 11-7, 23, 8& 2& 83}};CSquare s ((int*)a, 5);int max = s. FindMax(); cout<<,,max=/,<<=/z/z应输岀:max二〃239〃> 二、程序阅读题(本大题共40分,共5小题,每小题8分) 1.#include<stdio.h>int main(){int k=2, i=2, m;m二(k+二i*二k);printf (z,m=%d\ti=%d\n", m, i);return 0;}2.#inelude <iostream>using namespace std;int main(){int a[] = {l, 2, 3, 4, 5, 6, 7, 8, 9, 10}, s=0, i;for(i=0; i<10; i++)if(a[i]%2)s=s+a[i];cout〈〈〃s二〃〈〈s〈〈endl;;return 0;3.ttinclude <iostream>#include <cstring>using namespace std;void mycat(char *s, char *t, int p);int main(){char si [20]=/z abcdefg,z, s2[200]=〃12345〃;mycat (si, s2, 3);puts (si);return 0;)void mycat (char *s,char *t, int p){strcat (t, s+p);strepy (s+p, t);!4.ttincludc <iostrcam> using namespace std; int avere (int x, int y, int z); double aver (double x,double y, double z);int main(){int ai=l, bi二2, ci=3;double ad=l. 5, bd二5. 5, cd=7. 5;cout<<,z ai+bi+ci=,,<<aver (ai, bi, ci) <<endl; cout<<,,ad+bd+cd=/,<<avcr (ad, bd, cd) <<cndl;return 0;}int aver (int x, int y, int z){return x+y+z;idouble aver (double x, double y, double z){return x+y+z;}5.★include <iostream>using namespace std;int a, b, c, d;int main()void p(int a, int b);cout«a«,/, 〃<<b<<:,,«d«endl;p(a, b);cout«a«,/, 〃«b«〃,〃«c«〃,,,«d«endl ; return 0;)void p(int a, int b){static int c;a++, b++;c-二1, d+二1;if(a<3){p(a, b);cout<<a<<,z,,,<<b<<,,>,,<<c<</,,,,<<d<<cndl;三、程序设计题(本大题共40分,共8小题,每小题5分)1.编程序实现功能:从键盘上输入一个字符串和一个字符,统计该字符在字符串中出现的次数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

void fun(int x, int y, int * z)
{ * z = x – y;
}
void main()
{ int a, b, c;
fun(11, 5, &a);
fun(8, a, &b);
fun(a, b, &c);
printf(“%d, %d, %d\n”, a, b, c);
}
A. 2, 6, 4
B. 2,4,6
C. 6,4,2
D. 6, 2, 4
题目2 两个指针变量不能()
A. 指向同一地址
B. 相加
C. 比较
D. 相减
题目3 C 语句int *func(); 中,func 表示的是()
A. 返回值为指针的函数名称
B. 指向数组的指针
C. 指向整型变量的指针
D. 指向函数的指针
题目4 下列说法中不正确的是()
A. C 语言规定,不能在一个函数的内部再定义函数
B. 函数的类型可以是整型、实型、字符型,但不能是指针类型
C. 在没有声明函数返回值类型的情况下,默认函数返回值类型为int 型
D. 函数可以没有形参,但函数名后的括号不能省略
题目5 阅读下列程序段,其执行结果为()
#include <stdio.h>
void fun(int a)
{ int x = 5;
x += a++;
printf("%d,", x);
}
void main()
{ int a = 3, x = 1;
fun(a);
x += a++;
printf("%d\n", x);
}
A. 8,5
B. 8,4
C. 8,3
D. 8,2
题目6 下列说法中正确的是()
A. 如果形参与实参的类型不一致,则以实参类型为准
B. return 后面的值不能为表达式
C. 定义函数时,形参的类型说明可以放在函数体内
D. 如果函数值类型与return 后的返回值类型不一致,则以函数值类型为准
题目7 下列说法中错误的是()
A. 在一个函数的复合语句中定义的变量只在本函数范围内有效
B. 在不同的函数中可以使用相同名字的变量
C. 函数中的形参是局部变量
D. 在一个函数内定义的变量只在本函数范围内有效
void main()
{ static int array[][4] = {{1,3,5,7},{9,11,13,15},{17,19,21,23}};
int (* p)[4], i, j, sum[3];
p = array;
for(i = 0; i < 3; i++)
{ sum[i] = 0;
for(j = 0; j < 4; j++)
sum[i] += *(*(p + i) + j);
printf("%d,", sum[i]);
}
}
A. 80
B. 164880
C. 144
D. 16, 48, 80
题目9 若已定义的函数有返回值,则以下关于该函数调用的叙述错误的是()
A. 函数调用可以作为一个函数的实参
B. 函数调用可以作为独立语句存在
C. 函数调用可以出现在表达式中
D. 函数调用可以作为左值而被赋值
题目10 下列程序的输出结果是()
#include
void main()
{ char a[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', '\0' };
int i, j;
i = sizeof(a);
j = strlen(a);
printf("%d, %d\n", i, j);
}
A. 9,8
B. 9,9
C. 1,8
D. 8,9
题目11 已有定义char a[] = "xyz", b[]={ 'x', 'y', 'z' } , 以下叙述正确的是()
a. 上述说法均不正确
b. 数组a 的存储空间长度大于数组b 的存储空间长度
c. 数组a 的存储空间长度小于数组b 的存储空间长度
d. 数组a 和b 的存储空间长度相同
题目12 以下不能正确定义二维数组的选项是()
A. int a[2][] = {{1, 2}, {3, 4}};
B. int a[][2] = {1, 2, 3, 4};
C. int a[2][2] = {{1}, {2}};
D. int a[2][2] = {{1}, 2, 3};
题目13 下列叙述中错误的是()
a. 可以通过赋初值的方式确定数组元素个数
b. 在程序执行过程中,当数组元素下标超出定义的下标范围时,系统将给出“下标”越界的错误提示
c. 数组名代表数组所占存储区的首地址,其值不可变
d. 对于double 类型数组,不可直接用数组名对数组进行整体输入或输出
题目14 在C语言中,对变量的访问方式是()
A. 不能直接访问,能间接访问
B. 直接、间接均不能
C. 能直接访问,不能间接访问
D. 能直接访问,也能间接访问
题目15 C语言规定,若未对函数返回类型加以说明,则函数的隐含类型为()
A. void
B. double
C. char
D. int
题目16 给定下列程序,假定从键盘输入数据1、2,则执行结果为()
#include <stdio.h>
void swap(int * p1, int p2)
{ * p1 = * p1 + p2;
p2 = p2 + * p1;
}
void main()
{ int a, b, *p1;
scanf("%d, %d", &a, &b);
p1 = &a;
swap(p1, b);
printf("a = %d, b = %d\n", a, b);
}
A. a = 3, b = 5
B. 3, 2
C. a = 3, b = 2
D. 3,5
题目17 阅读下列程序段,其执行结果为()
#include
void main()
{ int a = 4, b = 6, c = 7;
double d;
double fun(int, int, int);
printf("d = %lf\n", fun(a, b, c));
}
double fun(int a, int b, int c)
{ return a % b * c;
}
A. 27
B. 28
C. 28.000000
D. 27.000000
题目18 一个变量的指针就是()
A. 变量的名称
B. 变量的地址
C. 变量的类型
D. 变量的值
题目19 以下能正确定义一维数组的选项是()
A. int num[];
B. int num[0..100];
C. int N = 100; int num[N];
D. #define N 100 int num[N];
题目20 C语句: int (* pa)[5]; 中,pa 表示的是一个()
A. 指针数组的名称
B. 指向整型变量的指针
C. 指向包含5个整型元素的一维数组的指针
D. 指向函数的指针。

相关文档
最新文档