东北林业大学 2008年C语言考试试卷及答案
全国计算机等级考试二级C语言 2008年4月真题卷参考答案及解析
全国计算机等级考试二级C语言 2008年4月真题卷答案及解析一、选择题(1)C解析:程序流程图是人们对解决问题的方法、思路或算法的一种描述。
其中,图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后次序。
带箭头的线段在数据流程图中表示数据流,而在程序流程图中表示控制流。
在所给出的选项中,在图元之间用带有箭头的线段表示图元关系。
在模块之间用带有箭头的线段表示调用关系。
构成程序流程图的基本图符及其含义是:→或↓表示控制流,□表示加工步骤,◇表示逻辑条件。
(2)A解析:结构化程序设计的原则包括:"自顶而下,逐步求精"的设计思想,"独立功能,单出口、单入口"的模块化设计等。
多态性是面向对象程序语言的特征。
(3)B解析:模块划分应遵循的准则包括模块之间的耦合和内聚。
一般来说,要求模块之间的耦合尽可能地低,即模块尽可能独立,要求模块的内聚程度尽可能地高,即高内聚、低耦合的原则。
(4)B解析:需求分析阶段的工作主要包括需求获取、需求分析、编写需求规格说明书和需求评审等四方面。
产生的主要文档为软件需求规格说明书,它可以为用户、分析人员和设计人员之间的交流提供方便,可以直接支持目标软件系统的确认,又可以作为控制软件开发进程的依据。
(5)A解析:算法具有6个特性。
①有穷性:一个算法必须总是(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有限时间内完成,即运行时间是有限的。
②确定性:算法中每一条指令必须有确切的含义,读者理解时不会产生歧义。
③可行性:一个算法是可行的,即算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现。
④输入:一个算法有零个或多个输入,这些输入取自于某个特定的对象的集合。
⑤输出:一个算法有一个或多个输出。
(6)D解析:在最坏情况下,快速排序、冒泡排序和直接插入排序需要的比较次数都是n(n-1)/2,堆排序需要比较的次数为nlog2n。
2008到2010年计算机二级C语言笔试真题和答案
2010/3月全国计算机二级C 语言一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题1分,共70分) (1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log 2n )D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log 2n )(2)算法的时间复杂度是指A)算法的执行时间 B)算法所处理的数据量C)算法程序中的语句或指令条数 D)算法在执行过程中所需要的基本运算次数(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是 A)编辑软件 B)操作系统 C)教务管理系统 D)浏览器(4)软件(程序)调试的任务是A)诊断和改正程序中的错误 B)尽可能多地发现程序中的错误C)发现并改正程序中的所有错误 D)确定程序中错误的性质(5)数据流程图(DFD图)是A)软件概要设计的工具 B)软件详细设计的工具C)结构化方法的需求分析工具 D)面向对象方法的需求分析工具(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于A)定义阶段 B)开发阶段 C)维护阶段 C)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言 B)数据管理语言 C)数据操纵语言 D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件 B)数据库 C)字段 D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的 A)需求分析阶段 B)逻辑设计阶段 C)概念设计阶段 D)物理设计阶段(10)有两个关系R和T如下:R T则由关系R得到关系T的操作是 A)选择 B)投影 C)交 D)并(11)以下叙述正确的是A)C语言程序是由过程和函数组成的 B)C语言函数可以嵌套调用,例如:fun (fun (x))C)C语言函数不可以单独编译 D)C语言中除了main 函数,其他函数不可作为单独文件形式存在 (12)以下关于C语言的叙述中正确的是A)C语言中的注释不可以夹在变量名或关键字的中间B)C语言中的变量可以在使用之前的任何位置进行定义C)在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致D)C语言的数值常量中夹带空格不影响常量值的正确表示(13)以下C语言用户标识符中,不合法的是A)_1 B)AaBc C)a_b D)a--b(14)若有定义:doublea=22;inti=0,k=18;,则不符合C语言规定的赋值语句是 A B Ca1 2 b2 2 c3 2 d 3 2 A B C c 3 2 d 3 2A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#include<stdio.h>main(){char a,b,c,d;scanf(“%c%c”,&a,&b);c=getchar();d=getchar;printf(“%c%c%c%c\n”,a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是一个字符)12<CR>34<CR>则输出结果是A)1234B)12C)12D)12334(16)以下关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==I)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是A)switch(a)B)switch(a==1)C)switch(a)D)switch(a==1){case1:a=b;break;{case0:a=b;break;{default:a++;break;{case1:a=b;break;default:a++;} case1:a++;} case1:a=b;} case0:a++;}(19)有如下嵌套的if语句(20)有以下程序if(a<b) #include<stdio.h>if(a<c) k=a; main()else k=c; {int i,j,m=1;if(b<c) k=b; for(i=1;i<3;i++)else k=c;以下选项中与上述if语句等价的语句是{for(j=3;j>0;j--)A)k=(a<b)?a:b;k=(b<c)?b:c; {if(i+j>3) break;B)k=(a<b)?((b<c)?a:b)((b>c)?b:c);m*=i*j;}}C)k=(a<b)?((a<c)?a:c)((b<c)?b:c);printf(“m=%d\n”,m);}程序运行后的输出结果是D)k=(a<b)?a:b;k=(a<c)?a:c;A)m=6B)m=2C)m=4D)m=5(21)有以下程序(22)有以下程序,其中k的初值为八进制数#include<stdio.h> #include<stdio.h>main() main(){int a=1,b=2; {int k=011;for(;a<8;a++) { b+=a;a+=2;} printf(“%d\n”,k++);}printf(“%d,%d\n”,a,b);}程序运行后的输出结果是程序运行后的输出结果是A)9,18B)8,11A)12B)11C)10D)9C)7,11D)10,14(23)下列语句组中,正确的是A)char *s;s="Olympic";B)char s[7];s="Olympic";C)char *s;s={"Olympic"};D)char s[7];s={"Olympic"};(24)以下关于return语句的叙述中正确的是A)一个自定义函数中必须有一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返同到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008 ;D)#define N 2008int num[N];int num[N];(26)有以下程序#include<stdio.h>void fun(char *c,int d){*c=*c+1;d=d+1;printf(“%c,%c”,*c,d);}}main(){char b=‘a’,a=‘A’;fun(&b,a);printf(“%c,%c\n”,b,a);}程序运行后的输出结果是A)b,B,b,AB)b,B,B,AC)a,B,B,aD)a,B,a,B(27)若有定义int(*pt)[3];,则下列说法正确的是A)定义了基类型为int的三个指针变量B)定义了基类型为int的具有三个元素的指针数组pt C)定义了一个名为*pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,以下能够代表数组元索a[3]的是A)(*s)[3] B)*(s+3)C)*s[3] D)*s+3(29)有以下程序(30)有以下程序#include<stdio.h> #include<stdio.h>main() main(){int a[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0; {int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=1;i<3;i++) s=s+a[b[i]]; for(i=1;i<3;i++)printf(“%d\n”,s);}程序运行后的输出结果是for(j=1;j<=1;j++) t+=b[i][b[j][i]];A)6B)10printf(“%d\n”,t);}程序运行后的输出结果是C)11D)15A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!",s2="\n123\\";printf("%d%d\n",strlen(s1),strlen(s2));则输出结果是A)55B)105C)107D)58(32)有以下程序(33)有以下程序#include<stdio.h> #include<stdio.h>#define N 8 int f(int t[],int n);void fun(int *x,int i) main(){*x=*x+i;} {int a[4]={1,2,3,4},s; main() s=f(a,4);printf(“%d\n”,s);}{int a[N]={1,2,3,4,5,6,7,8},i; int f(int t[],int n)fun(a,2); for(i=1;i<N/2;i++) {if (n>0)return t[n-1]+f(t,n-1);{printf(“%d”,a[i]);} else return 0;}printf(“\n”);}程序运行后的输山结果是程序运行后的输出结果是A)1313B)2234A)4B)10C)3234D)1234C)14D)6(34)有以下程序(35)有以下程序#include<stdio.h> #include<stdio.h>int fun( ) #define SUB(a) (a)-(a){static int x=1; main()x*=2;return x;} {int a=2,b=3,c=5,d;main() d=SUB(a+b)*c;{int i,s=1; printf(“%d\n”,d);}for(i=1;i<=2;i++) s=fun(); 程序运行后的输山结果是printf(“%d\n”,s);}程序运行后的输出结果是A)0B)-12A)0B)1C)-20D)10C)4D)8(36)设有定义:struct complex{int real,unreal;} data1={1,8},data2;则以下赋值语句中错误的是A)data2=data1;B)data2=(2,6);C)data2.real=data1.real;D)data2.real=data1.unreal;(37)有以下程序(38)有以下定义和语句#include<stdio.h> struct workers#include<string.h> {int num;char name[20];char c;struct A struct{int a;char b[10];double c;}; {int day;int month;int year;}s}void f(struct At); s truct workers w,*pw;main() pw=&w;能给w中year成员赋1980的语句是{struct Aa={1001,“ZhangDa”,1098.0};f(a); A)printf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);} B)w.year=1980;void f(struct At) C)pw->year=1980;{t.a=1002;strcpy(t.b,“ChangRong”);t.c=1202.0;}输出结果是D)w.s.year=1980;A)1001,ZhangDa,1098.0B)1002,ChangRong,1202.0C)1001,ChangRong,10980D)1002,ZhangDa,1202.0(39)有以下程序(40)有以下程序#include<stdio.h> #include<stdio.h>main() main(){int a=2,b=a,c=2; {FILE *fp;char str[10]; printf(“%d\n”,a/b&c); fp=open(“myfile.dat”,“w”);} fputs(“abc”,pf);close(pf);程序运行后的输出结果是fp=open(“myfile.dat”,“a+”);A)0B)1fprintf(pf,“%d”,28); rewind(pf);C)2D)3fscanf(pf,“%s”,str);puts(str);close(pf);}程序运行后的输出结果是A)abcB)28cC)abc28D)因类型不一致而出错二、填空题(每空2分,共30分)请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
二级C语言05年4月至08年4月笔试真题及答案(最新修订版)
二级C语言2005年4月考试试卷一、选择题 ((1)~(10)每小题 2 分 ,(11)~(50)每小题 1 分 , 共 60 分)下列各题 A)、B)、C)、D)四个选项中, 只有一个选项是正确的。
01) 数据的存储结构是指A)存储在外存中的数据 B)数据所占的存储空间量C)数据在计算机中的顺序存储方式 D)数据的逻辑结构在计算机中的表示答案:D02) 下列关于栈的描述中错误的是A)栈是先进后出的线性表 B)栈只能顺序存储 C)栈具有记忆作用D)对栈的插入与删除操作中, 不需要改变栈底指针答案:B03) 对于长度为n的线性表, 在最坏情况下, 下列各排序法所对应的比较次数中正确的是A)冒泡排序为 n/2 B)冒泡排序为 n C)快速排序为 n D)快速排序为 n(n-1)/2答案:D04) 对长度为n的线性表进行顺序查找, 在最坏情况下所需要的比较次数为A) B)n/2 C)n D)n+1答案:C05) 下列对于线性链表的描述中正确的是A)存储空间不一定是连续, 且各元素的存储顺序是任意的B)存储空间不一定是连续, 且前件元素一定存储在后件元素的前面C)存储空间必须连续, 且前件元素一定存储在后件元素的前面D)存储空间必须连续, 且各元素的存储顺序是任意的答案:A06) 下列对于软件测试的描述中正确的是A)软件测试的目的是证明程序是否正确 B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误 D)软件测试的目的是使程序符合结构化原则答案:C07) 为了使模块尽可能独立, 要求A)模块的内聚程度要尽量高, 且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高, 且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低, 且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低, 且各模块间的耦合程度要尽量强答案:B08) 下列描述中正确的是A)程序就是软件 B)软件开发不受计算机系统的限制C)软件既是逻辑实体, 又是物理实体 D)软件是程序、数据与相关文档的集合答案:D09) 数据独立性是数据库技术的重要特点之一。
2022年东北林业大学公共课《C语言》科目期末试卷B(有答案)
2022年东北林业大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
_______2、结构化程序由________、________ 、________ 3种基本结构组成。
3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、C语言中的标识符可分为关键字、_______和_______3类。
5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______6、请读程序段:int x=1;printf("%d\n",~x);上面程序段的输出结果是_______。
7、下面程序段的运行结果是_______。
x=2;do{printf("*");x--;)while(!x==0);8、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。
9、下面程序段的运行结果是_______。
int i=5;char c[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);10、函数process是一个可对两个整型数a和b进行计算的通用函数;函数max()可求这两个数中的较大者,函数min()可求它们中的较小者。
已有调用语句process(a,b,max);和process(a,b,min);。
请填空。
void process(_______){int result;result=(*fun)(x,y);printf("%d\n",result);}二、选择题11、以下不正确的叙述是( )。
A.在C程序中,逗号运算符的优先级最低B.在C程序中,APH和aph是两个不同的变量C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值12、以下表达式值为3的是( )A.16-13%10B.2+3/2C.14/3-2D.(2+6)/(12-9)13、C语言规定:在一个源程序中,main函数的位置( )A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后14、以下叙述不正确的是( )A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面15、以下对二维数组a的正确说明是()。
c语言考试题及答案
c语言考试题及答案**C语言考试题及答案**一、单项选择题(每题2分,共20分)1. C语言中,用于表示逻辑“与”的运算符是()。
A. &&B. ||C. !D. 以上都不是答案:A2. 下列哪个是C语言中的关键字?()A. intB. integerC. stringD. float答案:A3. C语言中,哪个函数用于计算并返回字符串的长度?()A. strlen()B. length()C. size()D. sizeof()答案:A4. 在C语言中,以下哪个选项是正确的数组声明?()A. int array[10];B. int array[];C. int array[10] = {1, 2, 3};D. 所有选项答案:D5. C语言中,以下哪个是正确的函数定义?()A. int add(int x, int y) { return x + y; }B. int add(int x; int y) { return x + y; }C. int add(int x, int y) { return x - y; }D. 以上都不是答案:A6. C语言中,以下哪个是正确的指针声明?()A. int *ptr;B. int *ptr[];C. int (*ptr)[];D. 所有选项答案:A7. C语言中,以下哪个是正确的结构体声明?()A. struct Point { int x, y; };B. struct { int x, y; } Point;C. struct Point { int x, y; } point;D. 所有选项答案:D8. C语言中,以下哪个是正确的枚举声明?()A. enum Color { Red, Green, Blue };B. enum { Red, Green, Blue };C. enum Color { Red = 1, Green = 2, Blue = 3 };D. 所有选项答案:D9. C语言中,以下哪个是正确的宏定义?()A. #define PI 3.14159B. #define PI = 3.14159C. #define PI 3.14159D. 以上都不是答案:A10. C语言中,以下哪个是正确的文件包含指令?()A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio.h>D. 以上都是答案:D二、填空题(每题2分,共20分)1. 在C语言中,使用____运算符可以实现两个整数的按位与操作。
2008第2次C语言等级考试
2008第2次C语言等级考试全国高等学校非计算机专业计算机等级考试二级C语言笔试试题(A卷)考试时间:2008年11月15日上午9:00——11:00考生必读:1.考生应严格遵守考场规则。
考生拿到试卷后应首先将自己的所在学校名称、考场地点、性命、准考证号填涂在答题纸和答题卡规定的位置上。
2. 考生得到监考人员指令后方可作答。
3.考生在答题前务必认真阅读题目要求,按要求作答。
客观题的答案(选择题和判断题)必须用2B铅笔填涂在答题卡的相应位置上;主观题的答案必须用蓝、黑色钢笔或圆珠笔填写在答题纸的相应位置上;且必须注明试卷类型(A 卷或B卷)。
否则答案无效。
4.注意字迹清楚,保持卷面整洁。
5. 考试时间为120分钟。
考试结束时,把试题册、答题卡、答题纸放在桌上,不得带走。
等监考人员收齐点清后,考生才可离开考场。
◆本试卷版权所有,任何单位或个人不得复制、出版和存留,违者必究◆重庆市教育委员会2008年11月二级C语言笔试试卷(A)(共100分)注意事项:1.一题答案填涂在答题卡上2.二、三、四、五题答案做在答题纸上一.单项选择题。
(每小题1分,共20分)1.假设有int x=11;,则表达式(x++*1/3)的值是( )(A) 3 (B)12 (C)11 (D)02.设有定义:char *s=”\t\”Name\\Address\”\n”;,那么strlen(s)等于( ) (A)15 (B)16 (C) 17 (D) 183.若有语句#define f(x,y) x+y及int a=2,b=3;,则执行p rintf(“%d”,f(a,b)*f(a,b))后输出的值为( )(A)36 (B)25 (C) 11 (D) 134.对于基类型相同的两个指针变量之间,不可进行的运算是( )(A)== (B)= (C) + (D) -5. 若程序中需要表示关系x≥y≥z,应使用C语言表达式为()(A)(x>=y)&&(y>=z) (B)(x>=y) AND (y>=z)(C)(x>=y>=z) (D) (x>=y)&(y>=z)6. 若有C语句int k=5;float x=1.2;,则表达式(int)(x+k) 的值是( )(A)5 (B)6.2 (C) 7 (D) 67. 设有定义:int x,*p;,能使指针变量p指向变量x的语句是()(A)*p=&x (B)p=&x (C)*p=x; (D) p=*&x8. 在执行语句if((x=y=2)>=x&&(x=5)) y*=x;后变量x,y的值应分别为()(A)2、2 (B)5、2 (C)5、10 (D) 执行时报错9. 以下程序的输出结果为()#includevoid main(){ int x,n;for(n=10,x=0;n=0;x++,n--);printf(〞%d\n〞,x);}(A)程序无限循环无输出(B)10 (C)1 (D)010. 下面程序的输出结果为()#includevoid main(){ int x=1,y=1,z;z=1||++x&&y--printf(〞\n%d,%d,%d〞,x,y,z);}(A)1,1,1(B)2,0,1 (C) 2,1,1 (D)2,0,0 11. 下面程序执行后输出为()#includevoid main(){ enum weekday{sun,mon=3,tue,wed,thu}; enum weekday day;day=wed;printf(〞%d\n〞,day);}(A)5(B)6 (C) 4 (D) 编译时出错12. 下面程序执行后输出为()#includevoid main(){ int a;printf(〞%d\n〞,(a=3*5,a*4,a+5));}(A)65(B)20 (C) 15 (D) 1013. 以下程序的输出结果是()。
2008年辽宁专升本考试真题-C语言部分
2008辽宁省专升本计算机试卷(C语言)第二部分计算机高级语言部分(C语言)四、填空题(每小题2分,共10分)41.在程序运行过程中,其值可以改变的量称为__________。
42.设int a=1,b=2,c=3,d=4,m=2,n=2;执行表达式(m=a>b)&&(n=c>d)后,n的值是__________。
43.C语言程序经过编译以后生成的文件的后缀为__________。
44.结构化程序设计的三种基本结构是顺序结构、选择结构和__________。
45.设x和y为double型,则计算表达式x=2,y=x+3/2的值为__________。
五、阅读程序题(每小题3分,共24分)46.下面程序的运行结果是____________________。
#include <stdio.h>main(){ int x=6;printf("%d\n",x+=x-=x*x);}47.下面程序的运行结果是____________________。
#include <stdio.h>main(){ int a=5,b=1,c=2;if(a==b+c)printf("***\n");elseprintf("$$$\n");}48.下面程序的运行结果是____________________。
#include <stdio.h>main(){ int i,s=0;int a[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)s+=a[i][i];printf("s=%d",s);}49.下面程序的运行结果是____________________。
#include <stdio.h>int fun(int p1){ static int tmp=2;tmp+=p1;return tmp+2;}main(){ int x=8,y;y=fun(x);printf("%d,",y);y=fun(x);printf("%d\n",y);}50.下面程序的运行结果是____________________。
2008年12月c语言试题及答案
全国高等学校(安徽考区)计算机水平考试试卷(二级C语言程序设计)1.计算机能直接执行由编写的源程序。
A)机器语言B)汇编语言C)C语言D)FORTRAN语言2.在计算机内存中,每个存储单元都有一个唯一的编号,该编号被称为__________。
A)标号B)记录号C)容量D)地址3.将十进制数93转换成八进制数为。
A)(107)8B)(127)8C)(135)8D)(140)84.Cache(高速缓存)能提高计算机的运行速度,主要原因是_________。
A)它扩展了内存的容量B)它缩短了CPU的存取时间C)它扩展了外存的容量D)它提高了计算机的主频5.下面关于控制面板的描述中,错误的是________。
A)控制面板可以管理硬件,但不可以管理软件B)控制面板可以添加、删除程序C)控制面板可以添加、删除硬件D)控制面板可以更改系统的时间和日期6.是多媒体计算机系统必备的设备。
A) 网卡B) 扫描仪C)声卡D) 打印机7.下列属于网络拓扑结构的是。
A)动态型B)静态型C)交叉型D)总线型8.若要浏览某个网页,则需要在浏览器的________中输入网址。
A)地址栏B)标题栏C)任务栏D)状态栏9.使用杀毒软件可以。
A)查出任何已感染的病毒B)查出并清除任何病毒C)清除部分病毒D)清除已感染的任何病毒10.计算机操作系统的主要功能是_____。
A)进行网络连接B)管理计算机资源,方便用户使用C)实现数据共享D)把高级语言的源程序代码转换为目标代码11.下列关于C语言程序书写规则说法中正确的是______。
A)不区分大小写字母B)一行只能写一条语句C)一条语句可分成几行书写D)每行必须有行号12.以下不能作为C语言常量的是 ______。
A)0582 B)2.5e-2 C)3e2 D)0xA513.以下不符合标识符规定的是______。
A)_sum B)sum C)3cd D)Void14.下列可以正确表示字符常量的是______。
2008年C++期末试卷-A卷试题及答案
院(系):专业:年级:学生姓名:学号:-------------------------------------------------密----------------------------------封-----------------------------线---------------------------------------------------------第 1 页(共 3 页)------------------------------------------------- 密 ---------------------------------- 封 ----------------------------- 线 ---------------------------------------------------------第 2 页共 3 页------------------------------------------------- 密 ---------------------------------- 封 ----------------------------- 线 ---------------------------------------------------------第 3 页(共 3 页)2007–2008学年第二学期期末考试试卷(A卷)课程名称: 面向对象程序设计课程编号:任课教师:一、单项选择题:(共20题,每小题2分,共40分)1. B 2. C 3. C 4. A 5. A 6. B 7. B 8. C 9. B 10. D 11. C 12. D 13. D 14. B 15. C 16. D 17. B 18. A 19. A 20. A二、填空题:(共10题,每小题1分,共10分)21.true ,false 1 ,0 22.内联函数,编译,执行时间23.this 24.new25.继承26.私有,私有,不可访问27.虚函数28.基类指针或引用三、程序改错题:(共2题,每题5分,共10分)29.【答】【答】错误处标号如下:①///************************************************* 程序文件名: p1_2.cpp **************************************************/#include <iostream>;④using std::endl;⑤void main( )⑥float num1, num2, num3; //定义三个数cin ⑦<< num1 << num2<<num3;cout >> ⑧“The average is:”⑨>> setw(30) ⑩>>(num1+num2+num3)/3>> endl;}①行注释符号//将块注释的头/*注释掉了,使得块注释的尾*/没有相应的头与之匹配;②关键字Using中包含了大写字母,应改为using;③using namespace std不是预处理指令,要以分号结尾;④#include <iostream> 是预处理指令,不能以分号结尾,而且要作为程序的开头行⑤使用了using namespace std,就不必单独使用std::endl;⑥void main() 后少了{;⑦cin应与提取操作符>>连用;⑧cout应与插入操作符<<连用;⑨“The average is:”为全角引号,应改为英文;⑩使用setw(30) 应包含头文件iomanip30.【答】①int a(0),b(0); //错误,数据成员的初始化必须通过构造函数实现改正:int a,b;②A x(2,3), y(4); //错误,对象y的初始化与已定义的构造函数参数表不匹配,可重载一个构造函数对对象y进行初始化。
2008年4月国家二级(C语言)笔试真题试卷(题后含答案及解析)
2008年4月国家二级(C语言)笔试真题试卷(题后含答案及解析) 题型有:1. 选择题 2. 填空题选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.程序流程图中带有箭头的线段表示的是()。
A.图元关系B.数据流C.控制流D.调用关系正确答案:C解析:程序流程图是一种传统的、应用广泛的软件过程设计工具,通常也称为程序框图。
其中,用带箭头的线段表示控制流,用矩形表示加工步骤,用菱形表示逻辑条件,2.结构化程序设计的基本原则不包括()。
A.多态性B.自顶向下C.模块化D.逐步求精正确答案:A解析:结构化程序设计方法的主要原则可以概括为:自顶向下,逐步求精,模块化和限制使用GOTO语句,其中不包括多态性。
3.软件设计中模块划分应遵循的准则是()。
A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合正确答案:B解析:耦合性和内聚性是模块独立性的两个定性标准,各模块的内聚性越强,则耦合性越弱。
软件设计应该遵循高内聚低耦合。
4.在软件开发中,需求分析阶段产生的主要文档是()。
A.可行性分析报告B.软件需求规格说明书C.概要设计说明书D.集成设计计划正确答案:B解析:需求分析的最终结果是生成软件需要规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便,可以直接支持目标确认,又可以作为控制软件开发进程的依据。
5.算法的有穷性是指()。
A.算法程序的运行时间是有限的B.算法程序所处理的数据量是有限的C.算法程序的长度是有限的D.算法只能被有限的用户使用正确答案:A解析:算法的有穷性,是指算法必须能在有限的时间内做完,即算法必须能在执行有限个步骤之后终止。
6.对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是()。
A.快速排序B.冒泡排序C.直接插入排序D.堆排序正确答案:D解析:各种排序方法中最坏情况下需要比较的次数分别为:冒泡排序n(n-1)/2,快速排序n(n-1)/2、简单插入排序n(n-1)/2、希尔排序O(n1.5),简单选择排序n(n-1)/2、堆排序O(nlog2n),7.下列关于栈的叙述正确的是()。
2008至2010年计算机国家二级C语言笔试真题及答案
本文由lonelygeese贡献 doc文档可能在WAP端浏览体验不佳。
建议您优先选择TXT,或下载源文件到本机查看。
2010年 月全国计算机二级 语言考试真题 2010年3月全国计算机二级C语言考试真题 一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题1分,共70分) 选择题((1 (( 10)、(21) )、(21 40)每题2 ,(11) 11 20)每题1 70分 (1)下列叙述中正确的是 A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n B)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2) C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n) D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n) (2)算法的时间复杂度是指 A)算法的执行时间 C)算法程序中的语句或指令条数 A)编辑软件 B)操作系统 B)算法所处理的数据量 D)算法在执行过程中所需要的基本运算次数 C)教务管理系统 D)浏览器 (3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是 软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是 )。
下面属于系统软 (4)软件(程序)调试的任务是 软件(程序) A)诊断和改正程序中的错误 C)发现并改正程序中的所有错误 (5)数据流程图(DFD图)是 数据流程图(DFD图 程图(DFD A)软件概要设计的工具 C)结构化方法的需求分析工具 A)定义阶段 B)开发阶段 B)软件详细设计的工具 D)面向对象方法的需求分析工具 C)维护阶段 C)上述三个阶段 D)数据控制语言 B)尽可能多地发现程序中的错误 D)确定程序中错误的性质 (6)软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于 软件生命周期可分为定义阶段,开发阶段和维护阶段。
2008-2009年二级C语言笔试真题及答案2
}
main()
{ STU c={“Qian”,’p’,95.0,92.0};
f(c); printf(“%s,%c,%2.0f,%2.0f\n”,,c.sex,c.score[0],c.score[1]);
}
程序的运行结果是
typedef struct { char name[9]; char sex; float score[2]; } STU;
void f( STU a)
{ STU b={“Zhao”,’m’,85.0,90.0} ; int i;
strcpy(,);
a.sex=b.sex;
b 1 n1
B C D
f 3 h2
a 0 k1
n 2 x1
有关系R和S通过运算得到关系T,则所使用的运算为
A)并B)自然连接C)笛卡尔积D)交
(10)设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为
for(k=0;k<10;k++)printf(“%d”,a[k]); printf(“\n”);
}
程序运行的结果是
A)0987654321 B)4321098765
C)5678901234 D)0987651234
(33)有以下程序
#include <stdio.h>
#include <string.h>
while(*b=*a) {b++;a++;}
}
全国计算机等级考试二级C语言机试真题2008年9月
全国计算机等级考试二级C语言机试真题2008年9月(总分:100.00,做题时间:90分钟)一、程序填空题(总题数:1,分数:30.00)1.N个有序整数数列已放在一维数组中,给定的下列程序中,函数fun()的功能是:利用折半查找法查找整数m在数组中的位置。
若找到,则返回其下标值;反之,则返回“Not be found!”。
折半查找法的基本算法是:每次查找前先确定数组中待确定的范围:low和high(low<high),然后把m与中间位置(mid)中元素的值进行比较。
如果m的值大于中间位置元素中的值,则下一次的查找范围放在中间位置之后的元素中;反之,下次查找范围落在中间位置之前的元素中,直到low>high,查找结束。
[注意] 部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
[试题源程序]#include <stdio.h>#define N 10int fun(int a[],int m)int low=0, high=N-1, mid;while(low<=high)mid= (1) ;if(m<a[mid])high= (2) ;eiseif(m>a[mid])low=mid+1;elsereturn(mid);(3) (-1);main()int i, a[N]=(-3, 4, 7, 9, 13, 24, 67, 89, 100, 180), k, m;printf("a数组中的数据如下: ");for(i=0; i<N; i++);printf("%d", a[i]);printf("Enter m: ");scanf("%d", &m);k=fun(a, m);if(k>=0)printf("m=%d, index=%d/n", m, k));elseprintf("Not be found/n");(分数:30.00)填空项1:__________________ (正确答案:[1] (low+high)/2[2] mid-1[3] return)解析:[解析] 填空1:根据题目的意思,这里应该是确定折半查找的中间位置,所以很明显应该填(low+high)/2。
2008年下半年全国自考(高级语言程序设计)真题试卷(题后含答案及解析)
2008年下半年全国自考(高级语言程序设计)真题试卷(题后含答案及解析)题型有:1. 单项选择题 2. 填空题 3. 解答题 4. 算法阅读题 5. 算法设计题单项选择题1.在一个C语言程序中( )A.主函数只能有一个B.主函数可以有多个C.非主函数只能有一个D.主函数和非主函数都可以有多个正确答案:A2.正确定义无符号整型变量m的语句是( )A.int m;B.unsigned int m;C.signed int m;D.unsigned signed m;正确答案:B3.不属于字符型常量的是( )A.”s”B.’8’C.’A’D.’\n’正确答案:A4.设intx=2,y=4;,值为非0的表达式是( )A.1/x*yB.1/(x*y)C.1.0/x/yD.1/x/(double)y正确答案:C5.设int a=2,b=5;,结果为0的表达式是( )A.a%bB.a&bC.a=bD.a!=b正确答案:B6.设int a=0;,错误的语句是( )A.++a;B.a++;C.a=-a;D.(-a)++;正确答案:D7.设int a=1,b=2,c=3,d=4,f;,执行语句f=(a!=b)?c++:d++;后f的值是( )A.2B.3C.4D.5正确答案:B8.设int m=5;,语句while(m==0)printf(“%d”,m-=2);的循环体执行的次数是( )A.0B.1C.2D.无限正确答案:A9.下列运算符优先级最高的是( )A.+=B.,C.!D.?:正确答案:C10.定义二维数组并初始化,正确的是( )A.int a[3][]={{1,2,3},{4,5,6 }};B.int a[][3]={{1,2,3},{4,5,6}};C.int a[3][3]=[{1,2,3},{4,5,6}];D.int a[][]={1,2,3,4,5,6};正确答案:B11.有关变量的叙述,正确的是( )A.形式参数是全局变量B.a和A在C语言中是同一个变量C.函数体内定义的变量为全局变量D.在所有函数之外定义的变量为全局变量正确答案:D12.若定义的函数为float*fun( ){……},则函数的返回值是( )A.float型数据B.void型数据C.float型指针D.void型指针正确答案:C13.设int a[10],*p=a;,数组元素a[4]的正确引用是( )A.*(p+4)B.p+4C.*p+4D.a+4正确答案:A14.合法的用户标识符是( )A.defaultB.#defineC.a+bD.book正确答案:D15.使用系统函数sqrt( )时,应在程序开头写上的编译预处理命令是( )A.#include<stdio,h>B.#include<string,h>C.#include<math.h>D.#include<stdlib.h>正确答案:C填空题16.赋值运算符的结合性是______。
东北大学c语言编程试题及其答案
东北⼤学c语⾔编程试题及其答案东北⼤学 C 语⾔题库第⼀部分(选择题)1构成C 语⾔的基本单位是 __________ 。
你的答案是:正确答案是 :B过程函数语句命令2、设x 为整型变量,不能正确表达数学关系:55<="">x>5&&x<10 x==6||x==7||x==8||x==9!(x<=5)&&(x<10)3、在C 语⾔中,逻辑运算符的优先级从⾼到低的排列顺序为是:D&&、 || 、 || 、 &&、&&、 ! 、 || ! 、 &&、 ||4、下⾯语句中,正确的是 ______ 。
你的答案是:正确答案是 :D printf ( "%c\n" , "student" ); printf ( "%c\n" , "c" );a=2,b=1 a=1,b=0a=2,b=27、执⾏下⾯程序段的结果是 ______ 。
int x=0 ;do { printf (“ %2d ”, x-- ); }while (x );你的答案是:正确答案是 :D 打印出 321打印出 23 不打印任何结果陷⼊死循环8、设x=10, y=5; z=15,执⾏下⾯⼀段程序后 z 的结果是 _____ 。
If (x>y ) if ( y>z ) x=y ; else z=y ;你的答案是:正确答案是 :C 765 for(表达式 1 ; 0;表达式 3)for (表达式 1 ; 1;表达式 3)for (表达式 1 ;表达式 1;表达式 3)for (表达式 1 ;表达式 3;表达式 3)6、执⾏下⾯程序段的结果是。
main() { int x=1,a=0,b=0; switch(x) { case 0:b++;printf ( "%s\n" , &a ); printf ( "%s\n" ,"hello" ); 5、对于 for (表达式 1;;表达式 3)可以理解为 _____ 。
2007-2008C语言程序设计期末试卷及参考答案
2007-2008C语言程序设计期末试卷第一部分:客观题一、单项选择题(共30题,1分/题,共30分)下列各题A、B、C、D 四个选项中,只有一个选项是正确的,请将正确选项涂在机读卡相应位置上,答在试卷上不得分。
1、C语言源程序构成的基本单位是(B)。
A.文件B.函数C.过程D.主函数2、下列哪个选项是C语言提供的合法保留字(A)。
A.mainB.IntC.cherD.max3、下列常量表示中哪个选项不符合C语言的规定(D)。
A.1LB.0123C.12e-2D. 'ab'4、执行下面程序段后,变量y的数据类型是(B)。
int x;float y=9.6; x=(int)y+ 'a';A.intB.floatC.charD.不确定5、语句a=(a=9,a+10,a*2);运行后,变量a的值是(B)。
A.9B.18C.19D. 386、执行下面程序段后,变量a,b,c的值分别是(D)。
int a,b,c; a=b=0; c=(++a<=0)&&(b=1)A.1,1,1B.1,0,1C.1,1,0D.1,0,07、设有定义int a=2;,执行语句a+=a-=a*=a;后,变量a的值是(A)。
A.0B.4C.8D.-48、设有定义int n=010,i=3;,执行语句n%=i+1;后,变量n的值是(A)。
A.0B.1C.2D.39、设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(B)。
A.k++B.k+=1C.++kD.k+110、执行下面程序段后,变量k的值是(B)。
int k,m=1,n=2;if(m>n) k=m>n;else k=m<=n;A.0B.1C.m<=nD.赋值语句有错,编译不能通过11、若下列选项中的标识符已经定义,则正确的赋值表达式是(C)。
A.x1=25.5%2B.a=b+3+=1C.x=f(x)+3D.f(x)=f(x-1)+f(x-2)12、下面程序段的输出结果是(B)。
东北林业大学C复习题参考答案修订版
东北林业大学C复习题参考答案集团标准化小组:[VVOPPT-JOPP28-JPPTL98-LOPPNN]考试科目:计算机辅助设计考试时间:60分钟试卷总分100分1.在AutoCAD中,要打开或关闭栅格的快捷键为(A)。
A F7B F9C F11D F122.在绘制图形过程中打开、关闭正交状态的快捷键为(A)。
A F8B F9C F11D F123.双击扩展名为(B)的文件,可以启动AutoCAD,并打开图形文件。
A dxtB dwgC twgD psd4.80<45属于(C)。
A 绝对直角坐标B 相对直角坐标C 绝对极坐标D 相对极坐标5.输入相对前一点x轴增加5,Y轴增加10的坐标表示方法为(B)。
A (5,10)B @(5,10) C(5<10) D(@5 <10)6.设置AutoCAD图形边界的命令是(C )。
A gridB snap和gridC limitsD options7.绘图单位的设置命令为(B)。
A layerB unitsC lineD text8.下面(D)项不是图层设置中的内容。
A.线型 B.线宽 C.颜色 D.文字样式9.point点命令不可以(C)。
A 绘制单点或多点B 定距等分直线、圆弧或曲线C 等分角D 定数等分直线,圆弧或曲线10.多用作绘制辅助线的对象为(D)。
A 直线B 多线C 多段线D 构造线11.如果要通过依次指定与圆相切的3个对象来绘制圆形,应选择“绘制”/“圆”菜单中的(B)子命令。
A 圆心、半径B 相切、相切、相切C 三点D 相切、相切、半径12.画多段线时可以用( A )选项来改变线宽。
A 宽度(W)B 方向(D)C 半径(R)D 长度(L)13.画对称图形可使用下列哪一个编辑命令(B)。
.A copyB mirrorC arrayD stretch14.一组同心圆可由一个画好的圆用(D)命令来实现。
A stretchB moveC extendD offset15.执行偏移命令后,大小和形状保持不变的是(D )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东北林业大学2008年C语言考试试卷及答案C语言期末考试试题2008年04月12日星期六00:22一选择题(24分,每小题2分)1.已知函数fread的调用形式为fread(buffer,size,count,fp),其中buffer代表的是()。
A 存放读入数据项的存储区B 存放读入数据的地址或指向此地址的指针C 一个指向所读文件的文件指针D 一个整形变量,代表要读入的数据项总数2.以下程序的输出结果为()。
main( ){int i=010,j=10;printf("%d,%d\n",i++,j--);}A 11,9B 9,10C 8,10D 9,93.设a为int型变量,执行下列赋值语句后,a的取值分别是()。
a=125.534;a=20.0/3;a=(int)125.521%4;a=5<<2;A 125,6,31,1B 125,6,1,20C 125,6.666666,31,20D 125.534,6.666666,2,204.设i和k都是int类型,则for循环语句()。
for(i=0,k=-1;k=1;i++,k++)printf("****\n");A 循环结束的条件不合法B 循环体一次也不执行C 循环体只执行一次D 是无限循环5.以下程序的输出结果为()。
main( ){char c;int i;for(i=65;i<68;i++){c=i+32;switch(c){case 'a':case 'b':case 'c':printf("%c,",c);break;default:printf("end");}}}A a,b,c,endB a,a,a,endC a,a,a,D a,b,c,6.函数调用语句:fseek(fp,-10L,2);的含义是()。
A 将文件位置指针从文件末尾处向文件头的方向移动10个字节B 将文件位置指针从当前位置向文件头的方向移动10个字节C 将文件位置指针从当前位置向文件末尾方向移动10个字节D 将文件位置指针移到距离文件头10个字节处7.以下程序的输出结果为()。
main( ){int i=0,j=0;while(s1!='\0')i++;while(s2[j]!='\0')s1[i++]=s2[j++];s1=0;printf("%s\n",s1);}A sideB countryC sidetryD countryside8.下列说法不正确的是()。
A 主函数main中定义的变量在整个文件或程序中有效B 不同函数中,可以使用相同名字的变量C 形式参数是局部变量D 在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效9.在下列程序段中,枚举变量c1的值是()。
enum color { red,yellow,blue=4,green,white}c1;c1=yellow;c1=white;A 1B 3C 5D 610.设有说明int (*ptr)();其中标识符ptr是()。
A 是一个指向整形变量的指针B 是一个指针,它指向一个函数值是int的函数C 是一个函数名D定义不合法11.定义由n个指向整形数据的指针组成的数组p,其正确的方式为()。
A int p;B int (*p)[n];C int *p[n];D int (*p)( );12.具有相同类型的指针类型变量p与数组a,不能进行的操作是()。
A p=a;B *p=a[0];C p=&a[0];D p=&a;二判断对错,对的划“√”,错的划“×”(20分,每小题2分)1.参加位运算的数据可以是任何类型的数据。
( )2.若有定义和语句:int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通过键盘输入:10 A 12 5则a=10,c=…A‟,f=12.5。
( )3.C语言把文件看作是一个字符(字节)的序列。
( )4.若有宏定义:#define S(a,b) t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。
( )5.在Turbo C中,下面的定义和语句是合法的:file *fp;fp=fopen("a.txt","r"); ( )6.若有定义:char s[ ]="china";则Turbo C系统为数组s开辟6个字节的内存单元。
( )7.若有定义和语句:int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++)sum+=a[2-i];则sum=21。
( )8.若有定义和语句:struct student{int num;char name[10];float score;}s[5]={{1,"lili",98.5},{9,"xiaohua",66}},*p=s;printf("%d",*p++);输出结果是1。
( )9.在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量。
( )10.在Turbo C中,此定义和语句是合法的:enum aa{ a=5,b,c}bb;bb=(enum aa)5; ( )三写出下列程序的运行结果(36分,每小题6分)1.main( ){int i=29,j=6,k=2,s;s=i+i/j%k-9; //s=i+(i/j)%k-9printf(“s=%d\n”,s);}2.main( ){int x=31,y=2,s=0;do{s-=x*y;x+=2;y-=3;}while(x%3==0); //先执行,后判断printf(“x=%d\ty=%d\ts=%d\n”,x,y,s);}3.main( ){int a[6]={10,20,30,40,50,60},i;invert(a,0,5);for(i=0;i<6;i++)printf(“%d,”,a);printf(“\n”);}invert(int s[ ],int i,int j) //倒置{int t;if(i<j){invert(s,i+1,j-1); //函数自身的嵌套调用,形成循环t=s;s=s[j];s[j]=t;}}4.#include <stdio.h>main(){char str[ ]="The C program",c;int i;for(i=2;(c=str)!='\0';i++){switch(c){case 'g': ++i; break; //由于++i,跳过了g后面的1个字母case 'o': continue;default: printf(“%c”,c); continue;}printf(“*”);}printf(“\n”);}5.struct w //结构体{char low;char high;};union u //共用体{struct w byte;short word;}uw;main( ){int result;uw.word=0x1234;printf("word value:%04x\n",uw.word);printf("high byte:%02x\n",uw.byte.high);printf("low byte:%02x\n",uw.byte.low);uw.byte.low=0x74;printf("word value:%04x\n",uw.word);result=uw.word+0x2a34;printf("the result:%04x\n",result);}6.main(){char *s2="I love China!",**s1=&s2;char *s3,c,*s4="w";s3=&c;*s3='H';s2=s2+2;printf("%s\t%c\t%s\t%c\n",s2,*s3,s4,**s1);}四阅读下列程序,在处填入适当内容,使程序完整(20分,每个空2分)1.百马百担问题:有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问大、中、小马各多少匹?main( ){int hb,hm,hl,n=0;for(hb=0;hb<=100;hb+=(1))for(hm=0;hm<=100-hb;hm+=(2)){hl=100-hb- (3) ;if(hb/3+hm/2+2*(3)==100){n++;printf("hb=%d,hm=%d,hl=%d\n",hb/3,hm/2,2*hl);}}printf("n=%d\n",n);}2.用“起泡法”对输入的10个字符排序后按从小到大的次序输出。
#define N 10char str[N];void main(){int i,flag;for(flag=1;flag==1;){scanf("%s",str);flag=0;printf("\n");}sort(___(4)___);for(i=0;i<N;i++){printf("%c",str);}printf("\n");}sort(char str[N]) //冒泡排序{int i,j;char t;for(j=1;j<N;j++)for(i=0;i<10-j;i++)if(str>str[i+1]){t=str;____(5)____;____(6)____; //交换位置}}3.以下程序是一个函数,功能是求二阶矩阵(m行n列矩阵)的所有靠外侧的各元素值之和。
(本程序中二阶矩阵用一维数组来表示。
)例如,矩阵为:3 0 0 32 5 7 31 0 4 2则所有靠外侧的各元素值之和为3+0+0+3+2+3+1+0+4+2=18。
add(int m,int n,int arr[]){for(i=0;i<m;i=i+m-1)for(j=0;j<n;j++)sum=sum+____(7)____;for(j=0;j<n;j=j+n-1)for(i=1;____(8)____;i++)sum=sum+arr[i*n+j];return(sum);}4.用指针作函数参数,编程序求一维数组中的最大和最小的元素值。