C语言2006A(软)答案

合集下载

2006级软件工程C语言(A卷)答案

2006级软件工程C语言(A卷)答案

西华大学课程考试(考查)参考答案(A卷)课程代码:8422111 试卷总分: 100 分一、单项选择题(每小题2分,共计20分)1. B2. C3. A4. D5. C6. D7. B8. D9. D 10. C二、阅读程序题(每小题4分,共20分)1.*************************2. 7 8 93. x=35 y=-4 s=-294.x=8,y=45.16三、程序改错题(本题共10分)下面程序的功能是对a数组中的元素按从大到小的顺序排序。

其中有5处错误(包括语法错误和逻辑错误),请找出其中的错误,并改正之。

(每找对1个错误,得1分,每修改正确1个错误,再得1分。

)#include <stdio.h>#define N 10; 错!应为: #define N 10main(){int a[N]={2,17,8,3,24,53,82,1,29,101};int i,j,k,t;for(i=0;i<9;i++){ k=i;for(j=i+1;j<10;j++)if(a[j]<a[k]) k=j; 错!应为:if(a[j]>a[k])if(k=i) 错!应为:if(k!=i){t=a[j]; 错!应为:t=a[k];a[j]=a[i]; 错!应为:a[k]=a[i];a[i]=t;}}}四、程序填空题(每空3分,共计18分)1. (1) m = m + a (2) m == i 2.(1)*m (2)*m = *n(3)temp (4)&x ,&y五、程序设计(第1小题12分,第2小题20分,本题总计32分)1、参考程序:#include<stdio.h>void main(){char str[81];int i ;int letter,space ,num ,other ;char c;printf ("Please enter a string : ");gets(str);letter=space=num=other=0;for( i= 0;str[i]!='\0'; i++){c=str[i];if((c>= 'A'&&c<='Z')|| (c>='a'&& c<='z'))letter ++;else if (c>='0' && c<='9')num++;else if ( c== ' ')space++;else other ++;}printf("letter=%d,space=%d ,num=%d,other=%d",letter ,space,num,other); }阅卷标准:1. 相关变量的声明及初始化正确得2分;2. 字符串输入正确得2分3. 统计算法正确得6分;4. 结果输出正确得1分;5.程序结构正确得1分。

2006年上半年程序员下午试题

2006年上半年程序员下午试题

全国计算机技术与软件专业技术资格(水平)考试2006 年上半年程序员下午试卷(考试时间 14:00~16:30 共 150 分钟)请按下述要求正确填写答题纸1. 在答题纸的指定位置填写你所在的省、自治区、直辖市、计划单列市的名称。

2. 在答题纸的指定位置填写准考证号、出生年月日和姓名。

3. 答题纸上除填写上述内容外只能写解答。

4.五,试题六至试题八选答 1 道。

每题 15 分,满分 75 分。

试题号一~三四~五六~八选择方法必答题选答 1 题选答 1 题5. 解答时字迹务必清楚,字迹不清时,将不评分。

6. 仿照下面例题,将解答写在答题纸的对应栏内。

例题2006 年上半年全国计算机技术与软件专业技术资格(水平)考试日期是(1)月(内写上“5”和“20”(1) 5(2)202006 年上半年程序员下午试卷第 1 页 (共 12 页)阅读以下说明和流程图,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。

【说明】信息处理过程中经常需要将图片或汉字点阵做旋转处理。

一个矩阵以顺时针方向旋 转 90篭u21518?可以形成另一个矩阵,如下图所流程图 1-1 描述了对 n*n 矩阵的某种处理。

流程图 1-2 是将矩阵 A 顺时针旋转 90?形成矩阵 B 的具体算法。

BC结束【问题 1】( 3*3 单位矩阵沿顺时针方向旋转 90篭u21518?所形成的矩阵。

1【问题 2】( 3*3 矩阵沿顺时针方向旋转 90篭u21518?所形成的矩阵就是原来的矩阵:* c * * * *其中,位于*处的元素需要考生填写请完整地写出该矩阵。

【问题 3】(9 分)在上述流程图 1-1 和 1-2 的算法中,(1)矩阵 A 第 i 行第 j 列的元素 A(i ,j)被复制到矩阵 B 中的哪个位置? (2)A(i ,j)后来又被复制到矩阵 C 中的哪个位置? (3)填补流程图 1-2 中的空缺。

2006 年上半年 程序员 下午试卷 第 2 页 (共 12 页)阅读以下说明和 C 语言函数,将应填入(n)处的字句写在答题纸的对应栏内。

2006-2011全国计算机等级考试二级C语言笔试答案

2006-2011全国计算机等级考试二级C语言笔试答案

2006年4月全国计算机等级考试二级C语言笔试答案一、选择题((1)~(40)题每题1分,(41)~(50)每题2分,共60分)1-5DADBA 6-10DCDAC 11-15CCADD 16-20DBBCA21-25CA BDD 26-30CDDDB 31-35DBABB36-40CACAC 41-45ACADB 46-50DCDBA二、填空题(每空2分,共40分)(1)【1】45(2)【2】类(3)【3】关系(4)【4】静态分析(5)【5】物理独立性(6)【6】printf("a=%d,b=%d",a,b)(7)【7】a+b>c&&a+c>b&&b+c>a(8)【8】30(9)【9】a*b*c*d*(10)【10】11(11)【11】ahT(12)【12】p+n 或 str+n(13)【13】i<=9 或 i<10 【14】j%3!=0(14)【15】return 0 【16】return 1(15)【17】ch=ch+1 【18】printf("\n")(16)【19】p!=NULL 【20】p->next2006年9月全国计算机等级考试二级C语言笔试答案一、选择题((1)~(40)题每题1分,(41)~(50)题每题2分,共60分)1-5DACBD 6-10CDBBA 11-15AADDD 16-20AABBC21-25DACBC 26-30BBCAC 31-35ACBAD36-40BBADC 41-45CBBCD 46-50BABDC二、填空题(每空2分,共40分)(1)【1】3 (2)【2】程序调试(3)【3】记录(4)【4】栈(5)【5】线性结构(6)【6】123.460000 (7)【7】10 11 (8)【8】1 (9)【9】1 1 (10)【10】n/=10或n=n/10;(11)【11】x+8 【12】sin(x)(12)【13】j+1 【14】i%2或i%2==1(13)【15】s-1 【16】*s++(14)【17】18(15)【18】16 11(16)【19】->next->data 【20】"rb"2007年4月全国计算机等级考试二级C语言笔试答案一、选择题:1-5 BDACD6-10 CACBA11-15CDBCA 16-20 DCAAC 21-25 DCDBA 26-30ADBDA31-35BBDAB 36-40BCBCB 41-45DBDAA 46-50ACBDA二、填空题:1. 63 2,墨盒 3.DBNS 4,开发5,数据字典 6,a-14 7,0 8,无答案9,#与号 10,9 11,1 12,5_4 13,13 0 14,i=115,X[i-1] 16,无答案 17,10 18,40 19,无答案20,"20a"2007年9月全国计算机等级考试二级C语言笔试答案一、选择题1~10 DBCAD CCABD 11~20 BABCC DABBB 21~30 BCBBD CCDAA 31~40 BDCDC CDDDD 41~50 AABAD CDDCD二、选择题1.无歧义性2.白盒3.顺序4.ACBDFEHGP5.实体6.12 347.a:b c:t1 8.54321 9.k<=n k++ 10.ACE 11.efgh12.x[0] x[0] 13.c=getchar() 1 14.3 7 15 15.55 16.p->next2008年4月全国计算机等级考试二级C语言笔试答案一、选择题1-5CABBA 6-10DBCD 11-15CCBCB 16-20DBBBD 21-25DADCA26-30DDCAB 31-35CCACC 36-40ABAAB二、填空题(1)【1】输出 (2)【2】16(3)【3】24 (4)【4】关系(5)【5】数据定义语言 (6)【6】0(7)【7】3 (8)【8】##2##4(9)【9】2 【10】2 4 6 8 (10)【11】35(11)【l2】4 (12)【13】l3(I 3)【14】 person[i].sex (14)【1 5】"filea.dat","r"2008年9月全国计算机等级考试二级C语言笔试答案一、选择题1~10 BDCAD BABCD 11~20 CDACD ADCBA21~30 CABAB CDDAB 31~40 CACDB CDDCB二、选择题1.DBXEAYFZC2.单元3.过程4.逻辑设计5.分量6.a=a-(a+b)7.a=%d\nb=%d 8.1 9.9911 10.3 11.5 12.i-- 13.n14.func() 15.m++2009年3月全国计算机等级考试二级C语言笔试答案一选择题:1-5 DACDC 6-10 ABABC 11-15CBDDA 16-20 CDBCB21-25CDABA 26-30 BACBC 31-35ADBCC 36-40 CBDAC二填空题:(1)19 (2)白盒(3)顺序结构(4)数据库管理系统(DBMS)(5)菱形(6)4 (7)"x/y=%d" (8)能( 9)s=0(10)1AbCeDf2Df (11)7777654321 (12)max(int a,int b) (13)NULL (14)1001,ChangRong,1098.0 (15)p=p—>next2009年9月全国计算机等级考试二级C语言笔试答案一。

2006年9月国家二级(C语言)笔试真题试卷(题后含答案及解析)

2006年9月国家二级(C语言)笔试真题试卷(题后含答案及解析)

2006年9月国家二级(C语言)笔试真题试卷(题后含答案及解析) 题型有:1. 选择题 2. 填空题选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.下列选项中不符合良好程序设计风格的是______。

A.源程序要文档化B.数据说明的次序要规范化C.避免滥用goto语句D.模块设计要保证高耦合、高内聚正确答案:D解析:良好的程序设计风格可以使程序结构清晰合理,使程序代码便于维护,因此,程序设计风格对保证程序的质量很重要。

主要应注意和考虑下述—些因素:1、源程序要文挡化;2、数据说明的次序要规范化;3、语句的结构应该简单直接,不应该为提高效率而把语句复杂化,避免滥用goto语句。

模块设计要保证低耦合、高内聚。

2.从工程管理角度,软件设计—般分为两步完成,它们是______。

A.概要设计与详细设计B.过程控制C.软件结构设计与数据设计D.程序设计与数据设计正确答案:A解析:从工程管理角度看,软件设计分为两步完成:概要设计与详细设计。

概要设计(义称结构设计)将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式;详细设计确立每个模块的实现算法和局部数据结构,用适当方法表示算法和数据结构的细节。

3.下列选项中不属于软件生命周期开发阶段任务的是______。

A.软件测试B.概要设计C.软件维护D.详细设计正确答案:C解析:软件生命周期分为软件定义、软件开发及软件维护。

其中软件开发阶段的任务中软件设计阶段可分解成概要设计阶段和详细设计骱段;软件维护不属于软件开发阶段。

4.在数据库系统中,用户所见数据模式为______。

A.概念模式B.外模式C.内横式D.物理模式正确答案:B解析:数据库管理系统的三级模式结构由外模式、模式和内模式组成。

夕模式,或子模式,或用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图。

2006年秋季《C语言程序设计》期末考试题A卷答案答案--修改后

2006年秋季《C语言程序设计》期末考试题A卷答案答案--修改后

A卷2005—2006学年第二学期《程序设计语言(C)》试卷参考答案和评分标准专业班级姓名学号开课系室软件工程系考试日期 2006年7月3日题号一二三总分得分阅卷人程序设计语言(C)试卷(A卷)答题卡说明:1.选择题和判断题必须填在答题卡上才有效,综述题写在指定位置。

2.本试卷连同封面共13页,不得拆开.一、单项选择题(正确的答案涂黑或画圈,每题1分,共20分)二、读程序填空题(在空格处填写正确答案,每空2分,共20分)一、单项选择题(每题1分, 20分)1. 现有程序完成a、b两个值的交换,空白处正确的答案应该是 _______。

main(){int a,b,t;t=b ;b=a ;________ ;}A. a=bB. a=t C。

b=t D. t=a2.如果程序中用到标准库函数log(),那么该程序应含下面哪条语句_________。

A. #include ”stdio。

h”B. #include ”math。

h “C. #include ”string。

h” D。

#include ”stdlib。

h”3. int x=6;则下方程序段运行结果是_________.switch(x){ case 1: printf(“apple“);break;case 2: printf(“hello“);break;case 3: printf(“world “);default: printf(“thank you“);}A。

apple B. hello C. thank you D. world thank you4. 在C语言中,不合法的int型常量是_________。

A. 32767 B。

0578 C. 0XAAC D. 32768L5。

设x,y,z和k都是int型变量,则执行表达式:x=(y=2,z=15,k=30)后,x的值为________。

A。

52 B。

30 C。

15 D。

全国计算机二级C语言真题2006年04月

全国计算机二级C语言真题2006年04月

二级C语言真题2006年04月一、选择题下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。

1. 下列选项中小属于结构化程序设计方法的是______。

A.自顶向下B.逐步求精C.模块化D.可复用答案:D知识点:结构化程序设计方法评析:20世纪70年代以来,提出了许多软件设计方法,主要有①逐步求精:对复杂的问题,应设计—些子目标作过渡,逐步细化:②自顶向下:程序设计时应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。

不要—开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化;③模块化:—个复杂问题,肯定是由若干稍简单的问题构成。

模块化是把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,把每个小目标称为—个模块,而可复用是面向对象程序设计的—个优点。

2. 两个或两个以上的模块之间关联的紧密程度称为______。

A.耦合度B.内聚度C.复杂度D.数据传输特性答案:A知识点:耦台度评析:耦合度是模块间互相连接的紧密程度的度量;内聚度是一个模块内部各个元素间彼此结合的紧密程度的度量。

3. 下列叙述中正确的是______。

A.软件测试应该由程序开发者来完成B.程序经调试后—般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对答案:D知识点:软件的测试与程序的调试评析:程序调试的任务是诊断和改正程序中的错误。

它与软件测试不同,软件测试是尽可能多地发现软件中的错误。

先要发现软件的错误,然后借助于一定的调试工具去找出软件错误的具体位置。

软件测试贯穿整个软件生命期,调试主要在开发阶段。

为了达到更好的测试效果,应该由独立的第三方来构造测试。

因为从心理学角度讲,程序人员或设计方在测试自己的程序时,要采取客观的态度是程度不同地存在障碍的。

软件的运行和维护是指将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。

4. 按照“后进先出”原则组织数据的数据结构是______。

(2021年整理)2006年9月全国计算机等级考试二级C语言笔试试题及答案(4-选择题)

(2021年整理)2006年9月全国计算机等级考试二级C语言笔试试题及答案(4-选择题)

题)编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整版)2006年9月全国计算机等级考试二级C语言笔试试题及答案(4-选择题))的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整版)2006年9月全国计算机等级考试二级C语言笔试试题及答案(4-选择题)的全部内容。

答案(4—选择题)编辑整理:张嬗雒老师尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布到文库,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是我们任然希望(完整版)2006年9月全国计算机等级考试二级C语言笔试试题及答案(4-选择题) 这篇文档能够给您的工作和学习带来便利。

同时我们也真诚的希望收到您的建议和反馈到下面的留言区,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请下载收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为 <(完整版)2006年9月全国计算机等级考试二级C语言笔试试题及答案(4-选择题)> 这篇文档的全部内容。

IT技术〉> 计算机等级—资料 >〉计算机二级考试 >> C2006年9月全国计算机等级考试二级C语言笔试试题及答案一、选择题(每小题2 分,共70 分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分.(1)下列选项中不符合良好程序设计风格的是______.A)、源程序要文档化B)、数据说明的次序要规范化C)、避免滥用goto 语句D)、模块设计要保证高耦合,高内聚(2)从工程管理角度,软件设计一般分为两步完成,它们是______。

2006年4月全国计算机等级考试《二级Visual Basic语言程序设计》真题及答案

2006年4月全国计算机等级考试《二级Visual Basic语言程序设计》真题及答案

2006年4月全国计算机等级考试二级笔试试卷公共基础知识和Visual Basic语言程序设计(考试时间90分钟,满分100分)整理:陈远跃一、选择题(每小题2分,共70分)(1)下列选项中不属于结构化程序设计方法的是()。

A)自顶向下B)逐步求精C)模块化D)可复用(2)两个或两个以上模块之间关联的紧密程度称为()。

A)耦合度B)内聚度C)复杂度D)数据传输特性(3)下列叙述中正确的是()。

A)软件测试应该由程序开发者来完成B)程序经调试后一般不需要再测试C)软件维护只包括对程序代码的维护D)以上3种说法都不对(4)按照“后进先出”原则组织数据的数据结构是()。

A)队列B)栈C)双向链表D)二叉树(5)下列叙述中正确的是()。

A)线性链表是线性表的链式存储结构B)栈与队列是非线性结构C)双向链表是非线性结构D)只有根结点的二叉树是线性结构(6)对下列二叉树:进行后序遍历的结果为()。

A)ABCDEFB)DBEAFCC)ABDECFD)DEBFCA(7)在深度为7的满二叉树中,叶子结点的个数为()。

A)32 B)31C)64 D)63(8)“商品”与“顾客”两个实体集之间的联系一般是()。

A)一对一B)一对多C)多对一D)多对多(9)在E-R图中,用来表示实体的图形是()。

A)矩形B)椭圆形C)菱形D)三角形(10)数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是()。

A)DB包含DBS和DBMSB)DBMS包含DB和DBSC)DBS包含DB和DBMSD)没有任何关系(11)下列关于Visual Basic特点的叙述中,错误的是()。

A)Visual Basic是采用事件驱动编程机制的语言B)Visual Basic程序既可以编译运行,也可以解释运行C)构成Visual Basic程序的多个过程没有固定的执行顺序D)Visual Basic程序不是结构化程序,不具备结构化程序的3种基本结构(12)下列叙述中错误的是()。

软考初级程序员考试历年真题精心整理系列之2006年全年程序员考试真题及答案分析一定要好好复习哦

软考初级程序员考试历年真题精心整理系列之2006年全年程序员考试真题及答案分析一定要好好复习哦

2006年上半年程序员上午试题●在Word的编辑状态,若选择了表格中的一行,执行了表格菜单中的“删除列”命令,则___(1)___;若要对当前正在编辑的文件加“打开权限密码”,则应该选择___(2)___,然后按相关提示操作即可。

(1)A.整个表格被删除B.表格中一行被删除C.表格中一列被删除D.表格中没有被删除的内容(2)A.“编辑”菜单的“选项”B.“插入”菜单的“文件”C.“文件”菜单的“页面设置”D.“工具”菜单的“选项”●___(3)___是Excel工作簿的最小组成单位。

若用户需要对某个Excel 工作表的Al:G1的区域快速填充星期一、星期二、……、星期日,可以采用的方法是在A1单元格填入“星期一”并___(4)___拖动填充柄至G1单元格。

(3)A.工作表B.行C.列D.单元格(4)A.向垂直方向B.向水平方向C.按住Ctrl键向垂直方向D.按住Ctrl键向水平方向●Outlook Express是一个___(5)___处理程序。

(5)A.文字B.表格C.电子邮件D.幻灯片●与外存储器相比,内部存储器的特点是___(6)___。

(6)A.容量大、速度快、成本低B.容量大、速度慢、成本高C.容量小、速度快、成本高D.容量小、速度慢;成本低●存取速度最快的是___(7)___。

(7)A.CPU内部寄存器B.计算机的高速缓存Cache C.计算机的主存D.大容量磁盘●堆栈最常用于___(8)___。

(8)A.实现数据循环移位D.实现程序转移C.保护被中断程序的现场D.数据的输入输出缓冲存储器●在下面对USB接口特点的描述中,___(9)___是USB接口的特点。

(9)A.支持即插即用B.不支持热插拔C.提供电源容量为12V×1000mAD.由六条信号线组成,其中两条用于传送数据,两条传送控制信号,另外两条传送电源●某种部件使用在10000台计算机中,运行工作1000小时后,其中20台计算机的这种部件失效,则该部件干小时可靠度R为___(10)___。

程序员2006年上半年试题解析答案

程序员2006年上半年试题解析答案

2006年上半年试题解析上午试题解析●试题答案(1)A (2)D【考查知识点】这两道题考查的是计算机文字处理的基本操作。

【解析】在Word的编辑状态,可以删除表格中的一个或多个单元格、行或列,还可以删除整张表,也可以只清除单元格的内容而不删除单元格本身。

单击“表格”,选择表格菜单中的“删除”子菜单下的“表格”命令,这样就删除了整个表格及其内容。

如果选择表格中的一行,执行“表格”菜单中的“删除列”命令,也可以删除整个表格。

所以试题(1)的正确答案是A。

在Word的“编辑”菜单中并不存在“选项”菜单项;而“插入”菜单的“文件”菜单项是用来将外部文件的内容插入到当前Word文档中;“文件”菜单中的“页面设置”菜单项是用来配置当前Word文档的页边距、纸张、文档网络等方面的选项的;“工具”菜单中的“选项”选项菜单项中提供了大量可配置的选项,包括视图、常规、编辑、打印等。

所以视图(2)的正确答案是D。

●试题答案(3)D (4)B【考查知识点】这两道题考查的是Excel的基本操作及应用。

【解析】单元格是Excel工作簿的最小组成单位,若用户需要对某个Excel的工作表的Al:G1的区域快速填充星期一、星期二、……星期日,可以采用的方法是在A1单元格填入“星期一”并水平方向拖动填充柄至G1单元格。

【总结与扩展】工作表中行列交叉处的长方形成为单元格。

单元格是工作表中用于存储数据的最小组成单位,可以存储Excel应用程序所允许的任意类型的数据。

每个单元格都要一个固定的地址,地址编号由行号和列号组成。

一个地址唯一地代表一个单元格。

工作表中当前正在使用的但与昂是活动单元格,系统将活动单元格的四周加黑色的粗线框来区别其他的单元格。

在Excel中有规律的数据可以进行快速填充,灵活的使用快速填充功能可以避免重复输入数据。

在工作表的行或列的单元格中输入第一个数据,就可以使用填充柄完成该列其他数据的输入,既方便又快捷。

还可以利用“编辑/填充”命令在工作表中提昂藏一些有规律的数据。

高级语言程序设计真题2006年下半年

高级语言程序设计真题2006年下半年

高级语言程序设计真题2006年下半年(总分:100.00,做题时间:90分钟)一、{{B}}单项选择题{{/B}}(总题数:20,分数:20.00)1.以下属于C语言保留字的是( )(分数:1.00)A.fopenB.includeC.getD.unsigned √解析:2.C语言中,错误的int类型的常数是( )(分数:1.00)A.1E5 √B.0C.037D.0xaf解析:3.在C语言中,'a'和"a"存储所占用的字节数分别是( )(分数:1.00)A.1,1B.1,2 √C.2,1D.2,2解析:4.对于数学表达式,正确的C语言表达式是( )(分数:1.00)A.2sqrt(+(a+/3sin(B.2sqrt(+(a+/(3sin()C.2*sqrt(+(a+/3/sin( √D.2*sqrt(+(a+b/3*sin()解析:5.设int x=10,a=0,b=25;,条件表达式x<1? a+10:b的值是( )(分数:1.00)A.0B.1C.10D.25 √解析:6.C语言中,下列运算符优先级最高的是( )(分数:1.00)A.! √B.%C.>>D.==解析:7.sizeof(double)是( )(分数:1.00)A.函数调用B.int型表达式√C.double型表达式D.非法表达式解析:8.设有以下程序段: int a=1,b=10,c=1,x; x=a&&b||++c; printf("%d,%d/n",x,c);执行后输出的结果是( )(分数:1.00)A.0,0B.0,1C.1,0D.1,1 √解析:9.设int x;,则以下语句中错误的输入是( )(分数:1.00)A.scanf ("%d",;√B.scanf ("%d",&;C.seanf ("%o",&;D.scanf ("%x",&;解析:10.设int(*P)();,P的含义是( )(分数:1.00)A.指向一维数组的指针变量B.指向二维数组的指针变量C.指向一个整型变量的指针变量D.指向整型函数的指针变量√解析:11.在C语言中,运算符"="和"=="的功能分别是( )(分数:1.00)A.关系运算和赋值运算B.赋值运算和关系运算√C.都是关系运算D.都是赋值运算解析:12.设int x[]={1,2,3,4,5),*p=x;,则值为3的表达式是( )(分数:1.00)A.p+=2,*p++ √B.p+=2,*++pC.p+=2,p++D.p+=2,++*P解析:13.设for(i=0,j=10;(j>0)&&(i<4);i++,j--);,该语句的循环次数是( )(分数:1.00)A.0B.3C.4 √D.无限解析:14.设函数定义如下: float f1(float a,float b) { return(a+b); } 若有float x=1.1,y=2.2;,则以下语句中正确的函数调用是( )(分数:1.00)A.printf ("%f",f1();B.printf ("%f",f1(&x,);C.printf ("%f",f1(*x,*);D.printf ("%f",f1(x,);√解析:15.结构型变量占用内存的字节数是( )(分数:1.00)A.各成员占用内存字节数之和√B.第一个成员占用的内存字节数C.占用内存最大成员所需的字节数D.最后一个成员占用的内存字节数解析:16.设enum color {purple,Mack,red,white}d;,若将d赋值为枚举常量red,则正确的是( )(分数:1.00)A.d=(enum colo2;√B.d=(enum colo3;C.d="red";D.d=color;解析:17.若main()函数带参数,参数个数最多是( )(分数:1.00)A.0B.1C.2 √D.3解析:18.设宏定义#define PI 3.1415926,用宏名PI替换的是( )(分数:1.00)A.算术表达式B.字符串√C.单精度实型数D.双精度实型数解析:19.调用系统函数labs时,应选用的文件包含是( )(分数:1.00)A.#include "stdih"B.#include "strinh"C.#include "ctyph"D.#include"math" √解析:20.设struct st {int i;int j;}*P;main() { struct st m[]={{10,1},{20,2},{30,3}};p=m;printf ("%d/n",(*++p).j); } 则程序的输出结果是( )(分数:1.00)A.1B.2 √C.3解析:二、{{B}}填空题{{/B}}(总题数:10,分数:20.00)21.C语言中,标准输入设备的文件指针名是 1。

2006年(上)高等教育自学考试全国统一命题考试计算机软件基础(一)试卷及参考答案

2006年(上)高等教育自学考试全国统一命题考试计算机软件基础(一)试卷及参考答案

2006年(上)高等教育自学考试全国统一命题考试计算机软件基础(一)试卷及参考答案第一部分选择题一、单项选择题(本大题共40小题。

每小题l 分,共40分)在每小题列出的四个备选项中只有一个是符合题目要求的。

请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.已知:int a=3,b=5,t ;要将a 和b 中的数值进行交换,错误的C 语言程序段是 ( )A .a=a+b ;b=a-b ;a=a-b ;B .t=a ;a=b ;b=t ;C .t=a ;b=a ;a=t ;D .t=b .b=a ;a=t ; 2.关于C 语言程序中的#include<math .h>,错误的描述是 ( ) A .#include 是C 语言的编译命令 B .在程序中该行不需要分号 C .是把math .h 包含进来的意思 D .math .h 是一个函数 3.用c 语言表示算式,表示错误的是 ( )A .2*a*d /c /bB .2*a*d /b /cC .2*a*d /b*CD .a*d /e /b*2 4.下列C 语言程序段执行后,y 的值是 ( ) double x=1,y ; y=x+3/2;A .1B .2C .2.OD .2.5 5.下列程序的运行结果是( )A .-lB .0C .1D .86.C 语言中,已知int a ;float b ;调用下列函数时,将30和5.5分别赋给变量a 和b,则正确的( )7.下列程序的运行结果是( )A .003B .012C .103D .1128.已知int x=100,y=200;则下列C 语言语句的输出结果是( ) printf(”%dft ,(x ,y));A .100B .200C .100 200D .格式符个数不够,输出不确定的值 9.C 语言中,已知int a ,b=5;给a 提供数据的错误语句是 ( )A .a='c':B .seanf(”%d”,&a);C .a=(b+6)/3;D .10+2=a ; 10.C 语言中,对于逻辑表达式a||b||C 正确的解释是 ( )A .只要a 为非零,就不再判断b 和CB .如果a 为非零,还要继续判断b 和C C .先判断b 和c 逻辑关系,再判断a 和它们的关系D .只要a 为零,就不必判断b 和C 11.C 语言中,错误的叙述是 ( )A .a>b&&c>d 等价于(a>b)&&(c>d)B .!b==C||d<a 等价于((!b)==c)||(d<a)C .a+b>c&&x+y<b 等价于((a+b)>c)&&((x+y)<b)D .a=!b>d&&j-3等价于a=!(b>d)&&j-3 12.下列C 语言程序段的输出结果是( )A .a=0B .a=0defaultC .a=0a=1defaultD .default 13.C 语言中,下列运算符优先级最低的是( ) A .<= B .!= C .< D .> 14.C 语言中,多重循环是指 ( )A .程序中有2个以上的循环语句B .循环体中有2个以上的语句C .循环体中包含了另一个循环语句D .循环次数多 15.对下列C 语言程序段中do —while 循环的正确描述是 ( ) x=-l : do{x=x*x ; )while(!x);A .循环体执行1次B .循环体执行2次C .是无限循环D .程序段中有语法错误 16.下列程序的运行结果是( )A .x=4,y=4,z=1B .x=5,y=4,z=1C .x=5,y=4,z=3D .x=5,y=5,z=1 17.已知int a ,x ,y ;有语法错误的C 语言语句是 ( ) A .while(x)y++; B .while(x+y=O)a++;C .while(x<y);D .while(y=5)printf(”%d”,x);18.已知:int a[]={1,2,3,4,5,6,7);char cl='b' ,c2='2';则结果不为2的C 语言表达式是( ) A .a[1] B .'d'-cl C .a[ '3'-c2] D .c2-019.下列程序的运行结果是( )A .16B .21C .数组元素x[3]的地址D .数组元素x[4]的地址 20.C 语言中,正确的字符串赋值语句是( )21.C 语言中,一维数组正确的定义形式是 ( )A .类型说明符数组名[常量表达式]B .类型说明符 数组名[整型表达式] c .类型说明符数组名[算术表达式] D .类型说明符数组名[整型常量表达式] 22.下列程序的运行结果是( )A .0 8.3 C .4 D .523.关于C 语言函数的调用,正确的叙述是 ( )A .C 语言源程序中至少要包含一个函数。

2006年6月份《c语言等级考试》模拟试卷集成[1]

2006年6月份《c语言等级考试》模拟试卷集成[1]

2006年6月份《C语言等级考试》模拟试卷集成一、选择题部分二、改错题部分三、填空题部分四、编程题部分一、选择题1、关于C语言数据类型的叙述,正确的是(C)。

A)枚举类型不是基本类型ﻩB)数组不是构造类型ﻩC)变量必须先定义后使用ﻩD)不允许使用空类型2、下面关于C语言用户标识符的描述,正确的是(D)。

A)不区分大小写ﻩﻩB)用户标识符不能描述常量C)类型名也是用户标识符ﻩﻩD)用户标识符可以作为变量名3、下面叙述正确的是(b)。

A)2/3与2.0/3.0等价B)(int)2.0/3与2/3等价ﻩC)++5与6等价D)’A’与”A”等价4、已知char a;使用scanf()函数输入一个字符给变量a,不正确的函数调用是(B)。

A)scanf(“%d”,&a); ﻩB)scanf(“%lf”,&a);C)scanf(“%c”,&a);D)scanf(“%u”,&a);5、下面叙述中,(A)不是结构化程序设计三种基本结构的共同特点。

A)先判断后执行ﻩB)单入口,单出口C)程序中没有执行不到的语句ﻩD)无死循环6、已知int a=3,b=5; 则表达式a &&( !b) 的值为(C)。

A)3ﻩﻩB)2C)0ﻩﻩD)17、已知char a=’R’;则正确的赋值表达式是(A)。

A)a=(a++)%4ﻩ B)a+2=3C)a+=256--D)a=’\078’8、以下的语句中,无内嵌的if语句是(B)。

A)if(x==y) x+=y;B)if(x>y&& x!=y);x+=y;C)if(x!=y)scanf(“%d”,&x);elsescanf(“%d”,&y);D)if(x<y){x++;y++;}9、设有整型变量x,下述语句(B)不会出现死循环。

A)for( ; ; x+=1)ﻩB)for(; (x=getchar())!=’\n’; ) ;C)while(1) {x++ ;}ﻩD)for(x=10; ;x--) ;10、下列数组声明中,正确的是(A)。

2006级软件工程C语言试题(B卷)

2006级软件工程C语言试题(B卷)

试卷编号:课程名称:程序设计语言考试时间: 110 分钟课程代码:8422111试卷总分: 100 分一、单项选择题(每小题2分,共计20分)1.以下对一维数组的定义中,正确的是( ) 。

A) #define MAX 5 B) int MAX=5;int a[MAX]; int a[MAX];C) int MAX; D) #define MAX 5;Scanf(“%d”,&MAX); int a[MAX];int a[MAX];2.以下程序运行时输入8,则程序运行后t的值是( )。

main(){ int t;scanf(“%d”,&t);if(t-->=8)printf(“%d\n”,t--) ;elseprintf(“%d\n”,t++) ;}A)9 B)8 C)7 D)63.有以下程序段main(){ int i=1,sum=0,n;scanf(“%d”,&n);do{ i+=2;sum+=i ;}while(i!=n);printf(…%d”,sum);}若使程序的输出值为8,则应该从键盘输入的n的值是( )。

A) 1 B) 3 C) 5 D) 74.若有以下定义及语句:struct s1{char a[3];int num;}t={‘a’,’b’,’c’,4},*p;p=&t;则输出值为c的语句是( )。

A) printf(“%c\n”,p->t.a[2]);B) printf(“%c\n”,(*p).a[2]);C) printf(“%c\n”,p->a[3]);D) printf(“%c\n”,(*p).t.a[2]);5.C语言规定:在一个源程序中,main函数的位置( )。

A)必须在程序的最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在程序的最后6.已知 int i,a; 执行语句”i=(a=2*3,a*5),a+6;”后,变量a的值是()。

2006年下半年软件水平考试(初级)程序员上午(基础知识)试题真

2006年下半年软件水平考试(初级)程序员上午(基础知识)试题真

2006年下半年软件水平考试(初级)程序员上午(基础知识)试题真题试卷(题后含答案及解析)题型有:1. 选择题选择题(每小题1分,共75分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。

1.(5)是正确的E-mail地址。

A.Webmaster@B.Web master@C.http:\\D.http://正确答案:A解析:本题考查电子邮件的基本知识。

用户在收发电子邮件的之前,必须拥有自己的“邮箱”,即E-mail账号。

用户可以向ISP申请电子邮箱,或者在互联网中申请一些免费的E-mail账号,同时还可以设置一个该邮箱的密码,这样,就可以使用互联网上的E-mail服务。

使用电子邮件,每一个用户都有独自的且唯一的地址,并且格式是固定的。

电子邮件地址是由字符串组成的,且各字符之间不能有空格。

电子邮件地址的一般格式为用户名@域名。

前面是机器名和机构名,后面是地域类型或地域简称。

选项A:Webmaster@是一个正确的电子邮件地址;选项B:Webmaster@是一个错误的电子邮件地址,因为,用户名“Webmaster’’包含了不合法的字符(空格)。

选项C和选项D显然是错误的,因为正确的电子邮件地址中用户名和域名之间必须用@符号隔开。

2.如果计算机断电,则(6)中的数据会丢失。

A.ROMB.EPROMC.RAMD.回收站正确答案:C解析:内存储器分为ROM和RAM两种类型。

ROM是Read Only Memory 的缩写。

ROM中的内容在厂家生产时写入,其内容只能读出不能改变,断电后其中的内容不会丢失。

EPROM(Erasable Programmable Read Only Memory,EPROM)是可擦除、可编程的只读存储器,其中的内容既可以读出,也可以由用户写入,写入后还可以修改。

改写的方法是,写入之前先用紫外线照射15-20分钟以擦去所有信息,然后用特殊的电子设备写入信息,因此断电不会导致EPROM 中的内容丢失。

2006年秋季《C语言程序设计》期末考试题A卷答案答案--修改后

2006年秋季《C语言程序设计》期末考试题A卷答案答案--修改后

2005 — 2006学年第二学期《程序设计语言(C)》试卷参考答案和评分标准专业班级_________________________姓名_________________________学号_________________________开课系室________ 软件工程系考试日期 2006 年7月3日程序设计语言(C)试卷(A卷)答题卡说明:i •选择题和判断题必须填在答题卡上才有效,综述题写在指定位置。

2 •本试卷连同封面共 13页,不得拆开。

单项选择题(正确的答案涂黑或画圈,每题1分,共20分)读程序填空题(在空格处填写正确答案,每空2分,共20分){ case 1: printf( apple “);break;case 2: printf( hello “);break; case 3: printf( world ); default: printf(thank you “);4. 5. 6. A. apple B. hello 在 C 语言中,不合法的 A. 32767设 x , y , z 和 k 都是A. 52 设 x 为 int 型变量, int 型常量是B. 0578int C. thank you C. 0XAACD. world thank youD. 32768L型变量,则执行表达式:x=(y=2 , z=15, k=30)后,x 的值为B. 30C. 15D. 2 则执行以下语句后, x的值为A. 30B. 20C. 10D. 40一、单项选择题(每题 1 分, 20 分)1. 现有程序完成 a 、b 两个值的交换,空白处正确的答案应该是 ____________main() {int a,b,t; t=b ; b=a ;A. a=bB. a=tC. b=tD. t=a3. int x=6; 则下方程序段运行结果是 switch(x)x=10; x + = x - = x - x7. 在下列运算符中,优先级最高的运算符是(2. 如果程序中用到标准库函数 log(),那么该程序应含下面哪条语句A. #include ”stdio .hB.#include ”math.h C. #include ”string .hD. #include ”stdli b.hA.B.!= C.% D.||8. 设x,y,t 均为int 型变量,则执行语句:x=y=3; t=++x||--y ;后y 的值为A. 4B. 3C. 2D. 19. 语句printf( “%%%%n”); 的输出为A. ####B. %%%%\nC. %%D. %%%%scanf(printf( %c%c\n ” ,a5,a6);如: 123 回车 45678回车 结果是A. 1267B. 1256C.1278D. 124511.若有 int x, y, z ; scanf("%d%d%d",&x,&y,&z);则运行时输入方式错误的是A.4 5 6 C. 4printf( y=%d ” ,y);A. 0B. -1C. 1D.无限循环0'}10. #include<stdio.h>main()char a1,a2,a3,a4,a5,a6; %c%c%c%”c,&a1,&a2,&a3,&a4);a5=getchar();a6=getchar(); putchar(a1);putchar(a2);B. 4, 5, 6 D. 4 512. 下面程序段执行结果是int y=25;while(y--);13. 不正确的字符串赋值或赋初值方式是 A. char *str; str= "string";B. char str[7]={ 's', 't', 'r', 'i' , 'n', 'g'C. char str1[10]; str1= "string";D. char str1[]= "string", str2[]= "12345678";14. 对于 int a[ ]={1,2,3,4,5,6}, *p; p=a; *(p+3)+ = 2; 则程序段执行后 *(p+3) 的值为A. 5B. 3 C . 4 15. 若有说明语句: int a[ ]= {1,2,3,4,5,6,7,8} 数组元素的错误表示。

2006年4月全国计算机二级C语言考试真题及答案

2006年4月全国计算机二级C语言考试真题及答案

2006年4月全国计算机二级C语言考试真题及答案一、选择题((1)一(10)每题2分,(11)一(50)每题1分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列选项中不属于结构化程序设计方法的是A.自顶向下B.逐步求精C.模块化D.可复用(2)两个或两个以上模块之间关联的紧密程度称为A.耦合度B.内聚度C.复杂度D.数据传输特性(3)下列叙述中正确的是A.软件测试应该由程序开发者来完成B.程序经调试后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对(4)按照“后进先出”原则组织数据的数据结构是A.队列B.栈C.双向链表D.二叉树(5)下列叙述中正确的是A.线性链表是线性表的链式存储结构B.栈与队列是非线性结构C.双向链表是非线性结构D.只有根结点的二叉树是线性结构(6)对如下二叉树ABDECF进行后序遍历的结果为A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA(7)在深度为7的满二叉树中,叶子结点的个数为A.32B.31C.64D.63(8)“商品”与“顾客”两个实体集之间的联系一般是A.一对一B.一对多C.多对一D.多对多(9)在E-R图中,用来表示实体的图形是A.矩形B.椭圆形C.菱形D.三角形(10)数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是A.DB包含DBS和DBMSB.DBMS包含DB和DBSC.DBS包含DB和DBMSD.没有任何关系(11)以下不合法的用户标识符是A.j2_KEYB.DoubleC.4dD._8_(12)以下不合法的数值常量是A.011B.1e1C.8.0E0.5D.0xabcd(13)以下不合法的字符常量是A.′\018′B.′\"′C.′\\′D.′\xcc′(14)表达式3.6-5/2+1.2+5%2的值是A.4.3B.4.8C.3.3D.3.8(15)以下能正确定义字符串的语句是A.char str[]={′\064′};B.char str="kx43";C.char str=";D.char str[]="\0";(16)以下数组定义中错误的是A.int x[][3]={0};B.int x[2][3]={{l,2},{3,4},{5,6}};C.int x[][3]={{l,2,3},{4,5,6}};D.int x[2][3]={l,2,3,4,5,6};(17)若要求从键盘读入含有空格字符的字符串,应使用函数A.getc()B.gets()C.getchar()D.scanf()(18)以下四个程序中,完全正确的是A.#includeB.#includemain();main(){/*programming*/{/*/ programming /*/printf("programming!\n");} printf("programming!\n");}C.#includeD. includemain()main(){/*/*programming*/*/{/*programming*/printf("programming!\n");} printf("programming!\n");}(19)若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是A.switch(x)B.switch((int)x);{case 1.0:printf("*\n"); {case 1:printf("*\n");case 2.0:printf("**\n");} case 2:printf("**\n");}C.switch(a+B.D.switch(a+B.{case 1:printf("*\n");{case 1:printf("*\n");case 2+1:printf("**\n");}case c:printf("**\n");}(20)若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是A.main()B.float fun(int a,intB.{……}{……x=fun(2,10);……}main()float fun(int a,intB.{……} {……x=fun(i,j);……}C.float fun(int,int);D.main()main() {float fun(int i,int j);{……x=fun(2,10);……} ……x=fun(i,j);……}float fun(int a,intB.{……}float fun(int a,intB.{……}(21)在以下给出的表达式中,与while(E)中的(E)不等价的表达式是A.(!E==0)B.(E>0‖E<0)C.(E==0)D.(E!=0)(22)要求通过while循环不断读入字符,当读入字母N时结束循环。

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

2006级C语言程序设计A卷答案一、基础知识题(20分,每题5分)1. 什么是数据缓冲区?对于输入流来说,数据缓冲区是如何工作的?开辟一块存储区(称为“数据缓冲区”),作为文件和程序之间的中介,作为数据的缓冲。

可以缓和内存和外存之间的数据提供和使用之间速度上的差别。

在程序与实际文件之间的传输通道上设置了一个缓冲区。

文件中的数据被以成块方式复制到缓冲区。

当程序中需要读入数据时:1)如果缓冲区有数据,它就直接由缓冲区读取,而不必到外存读数据。

2)如果缓冲区里数据已经用完,系统会自动执行一个内部操作,一次从文件里取得一批数据,将缓冲区填满,程序又可以按照正常方式读入数据。

2. C语言的预处理有哪几种?各有什么作用?C中的预处理命令有三种:宏定义、文件包含和条件编译。

一个宏定义的作用是为宏名字定义一个替代,该替代由整个替代正文段构成。

所谓“文件包含”处理是指一个源程序文件可以将另外一个源程序文件的全部内容包含进来。

即将另外的文件包含到本文件之中。

对其中一部分内容只在满足一定条件下才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。

3. 对于数据类型和存储类别,你是如何理解的?在 C语言中每一个变量和函数有两个属性:数据类型和数据存储类别。

数据类型决定着数据的存储空间和数据的存储方式。

存储类别是指数据在内存中存储的方法和存储的位置。

4. 写出switch 分支结构的语法结构,并写出其执行过程。

switch(表达式){case 整型常量表达式:语句序列case 整型常量表达式:语句序列...default:语句序列}它的执行过程:首先求出 switch 后面“表达式”的值,然后用这个值与写在各 case 标号中的“整型常量表达式”的值依次做比较。

如果遇到相等的值,程序就从这里执行下去;如果找不到,而这个开关语句有default 部分,就从“default : ”之后继续执行;如果开关语句没有 default 部分,那么整个语句结束。

二、读程序写结果(30分,每题5分)1.struct s {int n; int *m;} *p ;int d[5]= {10,20,30,40,50};struct s arr[]={ {100,&d[0]},{200,&d[1]}, {300,&d[2]},{400,&d[3]},{500,&d[4]}};int main(){p = arr;printf(“%d\n”, ++p->n);printf(“%d\n”,(++p)->n);printf(“%d\n”,++(*p->m));return 0;}101200212.int main ( ){static int x[ ]={0, 5, 6, 10, 12, 15, 18, 20};int a, s=0, *p=x;for(;p<x+7;p+=2){ s+=*p;printf(“S=%d\n”,s);}p=x;for(s=1, a=7; a>=0; a-=2){ s*=*(p+a);printf (“S=%d\n”,s);}return 0;}s=0s=6s=18s=36s=20s=300s=3000s=150003.#include <stdio.h>#include <string.h>void fun(char *w, int m){char s, *p1, *p2;p1 = w;p2 = w+ m- 1;while (p1 < p2){s = *p1++;*p1 = *p2--;*p2 = s;}}int main(){char a[]=”ALGORITHM”; fun(a, strlen(a));puts(a);return 0;}AMAMMAMAM4.#include <stdio.h>void fun(int x){if (x>=8) fun(x/8);putchar(’0’+x%8);}int main(){fun(231);return 0;}3475.#define PRINT(int) printf (“int=%d\n”,int); int main(){int x=1,y=1,z=1;x += y += z;PRINT(x<y ? y : x)PRINT(z += x<y ? x++ : y++)PRINT(x)PRINT(y)PRINT(z)return 0;}int=3int=3int=3int=3int=36.#include "stdio.h"void main(){ int i,j;for(i=1;i<=5;i++){ for(j=1;j<=30-i;j++)putchar(' ');printf("*");for(j=1;j<=2*i-3;j++)putchar(' ');if(i!=1)printf("*");printf("\n");}for(i=4;i>0;i--){ for(j=1;j<=30-i;j++)putchar(' ');printf("*");for(j=1;j<=2*i-3;j++)putchar(' ');if(i!=1)printf("*");printf("\n");}}三、应用及程序编程题(50分,每题10分)1.从键盘输入20个整数,将它们从小到大排序后输出,并输出每个元素输入时的序号。

#include <stdio.h>int main(){int t,i,j;int data[20][2];for(i=0;i<20;i++){scan f(“%d”,&data[i][0]);data[i][1]=i;}for(i=0;i<14;i++)for(j=0;j<14-i;j++)if(data[j]>data[j+1]){t=data[j][0];data[j][0]=data[j+1][0];data[j+1][0]= t;t=data[j][1];data[j][1]=data[j+1][1];data[j+1][1]=t;}for(i=0;i<20;i++)printff(“%5d,%5d\n”,&data[i][0],data[i][1]);return 0;}2.如果一个正整数等于其各个数字的立方和,则该数称为阿姆斯特朗数。

如:407=43+03+73 就是一个阿姆斯特朗数。

编程求100~999以内的所有阿姆斯特朗数。

#include ”stdio.h”int main(){int i,a,b,c;for(i=100;i<1000;i++){a=i/100;b=i/10%10;c=i%10;if(i==a*a*a+b*b*b+c*c*c)printf(”%5d”,i);}return 0;}3.写函数,求指针head所指向的线性链表各结点数据的和。

线性链表节点的定义为:struct Node{int data;struct Node * next;};函数原型为:int sumlink(struct Node *head);int sumlink(struct Node *head){struct Node *p;int sum=0;p=head->next;while(p!=NULL){sum=sum+p->data;p=p->next;}return sum;}4.找出下列图形的规律,使用循环编写程序打印如下图形。

3 7 11 155 9 13 177 11 15 199 13 17 2111 15 19 23#include <stdio.h>int main(){int i,j,k=1;for(i=3;i<=11;i=i+2){for(j=0;j<k;j++)printf("%5c",’ ’);k++;for(j=i;j<=i+3*4;j=j+4)printf("%8d",j);printf("\n");}return 0;}5.有一个字符序列的数据文件。

编写程序,统计文件中字母字符、数字字符和其他字符的数目。

文件名为:data.dat#include "stdio.h"int main(){FILE *fp;char ch;int count[3]={0},i=0;if((fp=fopen("data.dat","r"))==NULL){printf("\nCan't open the .\n","data.dat");exit(0);}while( !feof(fp)){fcanf(fp,”%c”,&ch);if(((ch>=’A’)&&(ch<=’Z’))||((ch>=’a’)&&(ch<=’z’))) count[0]++;else if ((’0’<=ch)&&(ch<=’9’))count[1]++;elsecount[2]++;}fclose(fp1);printf(“\n”);printf(“%10s%10s%10s\n”,”LETTERS”,”DIGITS”,”OTHE RS”);for(i=0;i<3;i++)printf("%10d",count[i]);return 0;}(学习的目的是增长知识,提高能力,相信一分耕耘一分收获,努力就一定可以获得应有的回报)。

相关文档
最新文档