2011编程C考试

合集下载

2011年下半年程序员考试真题及答案解析

2011年下半年程序员考试真题及答案解析

全国计算机技术与软件专业技术资格(水平)考试2011年下半年程序员上午试卷(考试时间 9 : 00~11 : 30 共 150 分钟)1. 在答题卡的指定位置上正确写入你的姓名和准考证号,并用正规 2B 铅笔在你写入的准考证号下填涂准考证号。

2. 本试卷的试题中共有 75 个空格,需要全部解答,每个空格 1 分,满分75 分。

3. 每个空格对应一个序号,有 A、B、C、D 四个选项,请选择一个最恰当的选项作为解答,在答题卡相应序号下填涂该选项。

4. 解答前务必阅读例题和答题卡上的例题填涂样式及填涂注意事项。

解答时用正规 2B 铅笔正确填涂选项,如需修改,请用橡皮擦干净,否则会导致不能正确评分。

例题● 2011 年下半年全国计算机技术与软件专业技术资格(水平)考试日期是(88)月(89)日。

(88)A. 9 B. 10 C. 11 D. 12(89)A. 4 B. 5 C. 6 D. 7 因为考试日期是“11 月 4 日”,故(88)选 C,(89)选 A,应在答题卡序号 88 下对 C 填涂,在序号 89 下对 A 填涂(参看答题卡)。

●在Word 2003的编辑状态下,若要插入公式,应该(1),选择“公式3.0”;若要修改已输入的公式,(2),打开公式编辑窗口,再进行修改即可。

(1)A.在“插入”菜单中,单击“符号”命令B.在“插入”菜单中,单击“对象”命令C.在“编辑”菜单中,单击“符号”命令D.在“编辑”菜单中,单击“对象”命令(2)A.只需单击此公式 B.在“编辑”菜单中单击查找命令C.只需双击此公式D.在“编辑”菜单中单击替换命令●在Excel中,若在A1单元格输入“=88>=85”,则A1单元格显示的值为(3).(3)A.TRUE B.FALSE C.88>=85 D.=88>=85●在 Excel 中,若 Al、A2、A3、A4、A5、A6 单元格的值分别为90、70、95、55、 80、60,在B1单元格中输入“=MIN(A1:A6) —MAX(A1:A6)”,B2单元格中输入“=AVERAGE(A1:A6)",则B1和B2单元格的值分别为(4)。

2011年9月c语言真题

2011年9月c语言真题

201 1年9月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)-(10)、(21)-(40)每题2分,(11)-(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。

请将正确选项填涂在答题卡相应位置上答在试卷上不得分。

(1)下列叙述中正确的是( )。

A)算法就是程序B)设计算法时只需要考虑数据结构的设计C)设计算法时只需要考虑结果的可靠性D)以上三种说法都不对(2)下列关于线性链表的叙述中,正确的是( )。

A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续C)进行插入与删除时,不需要移动表中的元素D)以上三种说法都不对(3)下列关于二叉树的叙述中,正确的是( )。

A)叶子结点总是比度为2的结点少一个B)叶子结点总是比度为2的结点多一个c)叶子结点数是度为2的结点数的两倍D)度为2的结点数是度为1的结点数的两倍(4)软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是( )。

A)学生成绩管理系统B)C语言编译程序C)UNIX操作系统D)数据库管理系统(5)某系统总体结构图如下图所示:该系统总体结构图的深度是( )。

A)7B)6C)3D)2(6)程序调试的任务是( )。

A)设计测试用例B)验证程序的正确性C)发现程序中的错误D)诊断和改正程序中的错误A)在需求分析阶段建立数据字典B)在概念设计阶段建立数据字典C)在逻辑设计阶段建立数据字典D)在物理设计阶段建立数据字典(8)数据库系统的三级模式不包括( )。

A)概念模式B)内模式C)外模式D)数据模式(9)有三个关系R、S利T如下:则由关系R和s得到关系T的操作是( )。

A)自然连接B)差C)交D)并(10)下列选项中属于面向对象设计方法主要特征的是( )。

C语言期末试题2011年C

C语言期末试题2011年C

倾情奉献---马杰C 语言 考试题,满分为100分。

本试卷为卷面笔试部分,卷面满分为90分。

一、填空题(10分,第1小题4分,其余每空1分) 1.设有下列登记表,请采用最佳方式定义一种数据类型来表示这些数据的集合。

其中,配偶姓名用spouseName 表示,子女人数用children 表示。

注意行为规范,遵守考试纪律! 姓名name 性别 sex 职业 profession 婚姻状况marital 未婚 年龄 single Age 已婚married 离婚日期 divorcedDay 配偶 姓名 子女 人数 年 year 月 month 日 date 婚姻状况标记 marry Flag marital2.C语言中构造数据类型包括、、。

3.C语言中用_______表示逻辑值“假”,用________表示逻辑值“真”。

4.char *p[10];这条语句的含义是:__ ___ _ _ 。

二、判断下列问题描述正确与否,正确的打“√”,错误的打“×”。

(4分,每题1分)1.如果在程序中定义静态变量和全局变量时,未明确指明其初始值,那么它们可以在程序编译阶段自动被初始化为0值。

()2.在C语言中,可以用typedef定义一种新的数据类型。

()3.在C语言中,实参与其对应的形参各占独立的存储单元。

()4. 在C语言中,函数的定义可以嵌套。

()三、选择题:(10分,每题2分)1.若用数组名作为函数调用时的实参,则实际上传递给形参的是()。

A.数组的首地址 B. 数组的第一个元素值C.数组中全部元素的值 D. 数组元素的个数2.判断两个字符串s1和s2相等,应当使用( )。

A. if (s1 == s2)B. if (s1 = s2)C. if (!strcmp(s1,s2))D. if (strcmp(s1,s2))3.在while(x)语句中的x与下面条件表达式等价的是:。

A. x!=0B. x==1C. x!=1D. x==04.二维数组a有m行n列,则在a[i][j]之前的元素个数为()。

2011年技能考试试卷C语言(真题)

2011年技能考试试卷C语言(真题)

第一部分【程序填空】第一套:题目:函数gcd()计算整型数组a中相邻两元素的最大公约数,最小公倍数,其中最大公约数存入数组b中,最小公倍数存入数组c中。

---------------------------------------------------------注意:请勿改动主函数main()中的其他内容。

---------------------------------------------------------#include <stdio.h>#include <conio.h>void gcd(int a[],int n,int b[],int c[]){int i,x,y,z;/***********SPACE***********/for(i=0;i<【?】;i++){x=a[i];y=a[i+1];while(z=x%y){x=y;y=z;}b[i]=y;/***********SPACE***********/c[i]=a[i]*a[i+1]/【?】;}}int main(){int a[5]={8,12,5,7,14};int b[4],c[4];int i;gcd(a,5,b,c);for(i=0;i<5;i++)printf("%d\t",a[i]);printf("\n");for(i=0;i<4;i++)printf("%d\t",b[i]);printf("\n");for(i=0;i<4;i++)printf("%d\t",c[i]);printf("\n");getch();return 0;}第二套题目:函数reverse()对字符串str进行逆序。

#include<stdio.h>#include<string.h>#include<conio.h>void reverse(char str[]){int len, j;char c;/***********SPACE***********/len = 【?】(str);/***********SPACE***********/for (j=len-1; 【?】; j--){c=str[j];str[j]=str[len-1-j];str[len-1-j]=c;}}int main(){char a[80];printf("Please enter a string: ");gets(a);reverse(a);printf("The inversed string is: ");puts(a);getch();return 0;}第三套题目:对主函数main()中数组a进行处理:如果相邻元素相同则保留一个。

2011年3月全国计算机等级考试二级C 语言真题

2011年3月全国计算机等级考试二级C 语言真题

2011 年3 月全国计算机等级考试笔试试卷二级公共基础知识和C 语言程序设计(考试时间 90 分钟,满分 100 分)一、选择题(1)~(10)、(21)~(40)每题 2 分,(11)~(20)每题 1 分,70 分)下列各题 A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。

(1)下列关于栈叙正确的是()。

A)栈顶元素最先能被删除B)栈顶元素最后才能被删除C)栈底元素永远不能被删除D)以上三种说法都不对(2)下列叙述中正确的是()。

A)有一个以上根结点的数据结构不一定是非线性结构B)只有一个根结点的数据结构不一定是线性结构C)循环链表是非线性结构D)双向链表是非线性结构(3)某二叉树共有7 个结点,其中叶子结点只有1 个,则该二叉树的深度为(假设根结点在第1 层)()。

A)3B)4C)6D)7(4)在软件开发中,需求分析阶段产生的主要文档是()。

A)软件集成测试计划B)软件详细设计说明书C)用户手册D)软件需求规格说明书(5)结构化程序所要求的基本结构不包括()。

A)顺序结构B)GOTO 跳转C)选择(分支)结构D)重复(循环)结构(6)下面描述中错误的是()。

A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD 图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是()。

A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)一个教师可讲授多门课程,一门课程可由多个教师讲授。

则实体教师和课程间的联系是()。

A)1:1 联系B)1:m 联系C)m:1 联系D)m:n 联系(9)有三个关系R、S 和T 如下()。

则由关系R 和S 得到关系T 的操作是A)自然连接B)交C)除D)并(10)定义无符号整数类为UInt,下面可以作为类UInt 实例化值的是()。

2010和2011年计算机c程序设计真题及答案

2010和2011年计算机c程序设计真题及答案

二O一O年硕士学位研究生招生入学考试试题考试科目:计算机程序设计代码:9271.填空题20题,每题1分1)程序的三种基本的控制结构是:顺序结构、选择结构、循环结构。

2)外部函数的储存类型是,它既可以在本编译单位中被调用,又可以在中被调用。

3)若a函数中调用了b函数,而b函数又调用了c函数,这种调用称为调用。

若a函数中调用了b函数,而b函数又调用了a函数,这种调用称为调用。

4)“*”称为指针运算符,“&”称为取值运算符。

5)表示结构体成员的“ . ”称为成员(分量)运算符,“ -> ”称为分量运算符。

6)如果调用fopen函数不成功,则函数返回值为0;如果调用fclose函数不成功,则函数返回值为EOF。

7)C++语言中有//和/*与*/ 二种注释方法。

8)在C++中用关键字 class来定义新的类。

9)若有以下定义,则不移动指针p,且通过指针p引用值98的数组元素的表达式是。

int w[10]={23,54,10,33,47,98,72,80,61,102}, *p=w;10)位运算:0x1a2c&0x1a79 的运算结果是(用八进位制形式写出)015050 。

2.程序填空题4题,每题5分1)下列程序的功能是计算1-10之间偶数之和,请填空。

#include <iostream.h>void main( ){ int a, b,i:a=0;b=0;for ( i=0;__i<=10_____;i+=2){ a+=i;(2) ;}cout<<“偶数之和为:”<<a<<endl;}2)下列程序是将一个正整数n的各个位向左循环移动4位,请在程序的横线上填写适当的内容。

#include <stdio.h>void main(void){ int k,n,a;scanf(“%d”,&n);k=n&0xf000;k= >>12 ;a=n<<4;a=k | a;printf(“n=%o\n a=%o\n”,n,a);}3)下面是字符串拷贝函数,请填空。

C语言试题

C语言试题

A DB A B B ACBBB BD BD1.编程输入x的值,求y=x20-2*x10+5的值,程序文件命名为program1.c,保存到D:\I文件夹中。

2.编程输入年份,判断它是否是闰年(两个条件:能被4整除但不能被100整除或者能被400整除),程序文件命名为program2.c,保存到D:\I文件夹中。

3.编程求出100~999的所有的水仙花数(所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身),程序文件命名为program3.c,保存到D:\I文件夹中。

4.编程求出1~100之间的全部素数。

程序文件命名为program4.c,保存到D:\I文件夹中。

5.使用数组编写程序,输入5个学生6门课程的成绩,输出5个学生中平均分最高的学生的平均分。

程序文件命名为program5.c,保存到D:\I文件夹中。

应学院2010~2011学年第一学期《C语言程序设计》考试题(I卷)参考答案及评分标准选择题参考答案选择题评分标准:单选题每小题选对得1.5分,共45分。

错选、漏选均不给分。

本题由计算机软件阅卷。

编程题编程题评分标准:第1、2、3、4题,每题10分;第5题15分。

共55分。

程序文件名命名错误不得分。

参考程序:program1.c:#include <stdio.h>#include <math.h>void main(){float x,y;printf("请输入x的值:");scanf("%f",&x);y=pow(x,20)-2*pow(x,10)+5;printf("y=%f\n",y);}评分标准:1、变量定义正确得2分。

2、输入正确得2分。

3、输出正确得2分。

4、中间处理过程及其他得4分。

参考程序:program2.c:#include <stdio.h>void main(){int year;printf("请输入一个年份:");scanf("%d",&year);if((year%4==0 && year%100!=0)||(year%400==0)) printf("%d是闰年!\n",year);elseprintf("%d不是闰年!\n",year);}评分标准:1、变量定义正确得2分。

2011年(上)全国信息技术水平考试计算机程序设计技术水平证书(C语言)考试试卷

2011年(上)全国信息技术水平考试计算机程序设计技术水平证书(C语言)考试试卷

2011年(上)全国信息技术水平考试计算机程序设计技术水平证书(C语言)考试试卷第一大题:单选题(30 分)1. (1分) 用C语言编写的C程序称为()。

(A) 源程序(B) 目标程序(C) 汇编程序(D) 命令程序2. (1分) C语言中表示“a和b都大于c”的表达式为()。

(A) a>c&&b>c (B) a>c||b>c(C) a>b||b>c (D) a>b&&b>c3. (1分) 下列说法中正确的是()。

(A) 定义函数时,形参的类型说明可以放在函数体内。

(B) return后边的值不能为表达式。

(C) 如果函数值的类型与返回值类型不一致,以函数值类型为准。

(D) 如果形参与实参类型不一致,以实参类型为准。

4. (1分) 设说明语句如下方所示:struct exa{int x;float y;}z;则下列叙述中不正确的是()。

(A) x和y都是结构体成员名(B) struct exa是用户定义的结构体类型(C) struct是结构体类型的关键字(D) z是用户定义的结构体类型名5. (1分) 下列程序的运行结果为()。

#include<stdio.h>int fun(int num){int k=1;do{k*=num%10;num/=10;}while(num);return k;}void main(){int n=26;printf("%d\n",fun(n));}(A) 26 (B) 8(C) 12 (D) 06. (1分) 下列程序的功能是()。

float average(float p[],int n){float sum=0,aver;int i;for(i=0;i<n;i++)sum+=p[i];aver=sum/n;return aver;}(A) 求数组中前n个数的和(B) 求数组中前n个数的平均值(C) 求数组中后n个数的和(D) 求数组中后n个数的平均值7. (1分) 在给数组赋初值时,若给予的初值数目小于数组大小时,会发生什么情况()。

江苏科技大学2011C++期末试卷(附答案)

江苏科技大学2011C++期末试卷(附答案)

使用前注意保密江苏科技大学非计算机专业学生Visual C++ 程序设计语言期末考试试卷代号:VC02说明:1、本试卷为笔试题,含选择、填空、及编程三部分。

2、本试卷满分为100分,考试时间为120分钟。

3、所有答案必须写在答题纸上,否则不计成绩。

3、填空题,请注意空格号(不是题号)与答题纸上的编号对应。

4、答题纸上必须写明学号(含班级号)、姓名。

计算机基础教研室一、选择题(10×2=20分)1、设CH为字符型变量,则语句CH=CH+’e’-‘E’;的作用可能是:(1)。

A.将大写字母转换成对应的小写字母B.将字母CH转换成eC.将小写字母转换成对应的大写字母D.将字母CH转换成E2、设有说明语句“int a=4,b=5,c=6,d=7,m=1,n=1;”,则执行语句“c=(m=a>b)&&(n=c>d);”后,m和n的值分别为(2)。

A.1、1 B.1、0 C.0、1 D.0、03、下列数组的定义和使用中,正确的是(3)。

A.char a[20];a[20]=”Hello”;B.char a[20];a=”Hello”;C.int n=20;char a[n];D.char a[]=”Hello”;4、设类A为类B的基类,类B为类C的基类,并有如下定义:Aa1,*pa;B b1,*pb;C c1,*pc;则以赋值存在语法错误的是(4)。

A.pa=&b1 B.pb=&c1; C.A a2=&c1; D.pc=&b1;5、设有变量说明“int a=1,b=2;float x=1.5,y=1.2;”,下列语句正确的是(5)。

A.y=x%a; B.int(y)=a; C.x+y=a+b; D.a=x+y;6、对于下面的一组函数:void fun (int a, float x); // 函数1void fun (int a, int x); // 函数2void fun (float a, float x ); // 函数3void fun (float a, int x ); // 函数4void fun (int a[], int n); // 函数5void fun (int *p, int n); // 函数6以下说法不正确的是:(6)。

2011年c语言下半年c语言全国高等学校试题与答案

2011年c语言下半年c语言全国高等学校试题与答案
2011年下半年全国高等学校 (安徽考区)计算机水平考试试卷 (二级 C语言程序设计) 考生须知: 1. 请将准证号末的卷第二页右上方方框内。 2.单项选择题请在答题卡上填涂;其他内容填在答题卡上作答,试卷 上作答无效。 3不得将试卷、答题卡、答题卷及草稿纸带离考场。 4.考试时间为120分钟。 1、 单项选择题(每题一分,共40分) 1.在计算机应用领域中,英文缩写“OA”的中文含义———。 A)计算机辅助制造 B)办公自动化 C)计算机辅助教 学 D)个人计算机 2.下列选项中,属于主机范畴的是 ———。 A)光盘 B)打印机 C)U盘 D)内存 3.与十进制数100不等值的数是 ———。 A)(1011011)2 B)(1100100)2C)(1 44)8 D)(64)16 4.下列有关Windows“文 件夹”的叙述,不正确的是———。 A) 文件夹中既可以存放文件,也可以存放文件夹 B) 文件夹中不能存放同名文件 C) 不同文件夹中可以存放同名文件 D) 名称相同的文件和文件夹可以存放在同一文件夹中 5.在Windows中右键单击文件后,在弹出的快捷键菜单中选择“发送 到”—“桌面快捷方式”,则———。 A) 移动该文件到桌面 B) 复制该文件到桌面 C)在桌面建立快捷图标 D) 从桌面发送电子邮件 6.最古老、最基本的一种信息保护措施是———。 A)病毒防护 B)防火墙 C)加密 D)入侵检测 7. 在计算机多媒体技术中,ASCII码属于————媒体。 A) 感觉 B)表示 C) 存储 D) 传输 8下列有关计算机病毒的叙述,不正确的是————。
A)计算机病毒可以把自身复制到内存 B)长期不使用感染计算机病毒的计算机,计算机病毒可以自动消 失 C)计算机病毒可以潜伏在文件中并不立即发作 D)计算机病毒可以侵占系统资源,影响系统运行性能 9.网址中http表示————。 A)用户名 B)主机的IP地 址或域名 C)超文本传输协议 D)资源在主机上 的存放路径 10.用高级程序设计语言编写的程序称为————程序。 A)源 B)可执行 C)伪代码 D)目标 11.以下选项中叙述正确的是————。 A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,被调用的函数必须在main()函数中声明 C) 语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须存放在程序的开始部分 12. C语言程序的三种基本结构是顺序结构、选择结构和————结 构。 A)循环 B)递归 C)转移 D)嵌套 13.以下选) double C) char D)bool 14.以下选项中正确的C语言标识符是————。 A) 2b B) x_1 C) a@b D) 3#h 15. 以下选项中有关C语言的叙述错误的是————。 A)变量不能使用大写字母命名 B)在一个表达式中可以出现不同类型的变量 C)可以将一个字符型常量赋值给一个整型变量 D)可以将一个整型常量赋值给一个实型变量 16. 以下选项中,和语句K=N++;等价的是————。 A)k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k=n+1 17. 已知:int i=3,j=2;,则执行语句j*=i+2;printf("%d",j);后,输出结果是 ————。 A) 8 B) 10 C) 12 D)14 18. 已知int a=2,b=3,c',,则执行语句c=(a+2,b+2);后,c的输出结果

2010 - 2011 学年下学期 C 编程技术试卷 A 及答案

2010 - 2011 学年下学期 C 编程技术试卷 A 及答案

2010 -2011 学年下学期C 编程技术试卷A(本试卷答卷时间为100 分钟,满分100 分)一、判断对错,对的划“ √ ”,错的划“×”(每小题 2 分, 共10 分)1 、在c 语言中,每个程序有且仅有一个main() 函数。

()2 、在c 语言中,一个程序中的全局变量和局部变量可以同名。

()3 、break ;语句只能用在for 、do..while 和while 等三个循环语句中,不能用在其他的语句中。

()4 、若有定义int b[10] ; 则数组b 中有10 个数组元素,且最小下标的数组元素是b[1] 。

()5 、结构体变量所占内存容量为其成员中占内存最大的成员所占的字节数。

()二、填空题(每小空 2 分,共20 分)1 、在C 语言中,程序的运行必定在_______ 函数开始,并在该函数中结束。

2 、若有int x ,则计算表达式x=16/3%3 后x 的值为____________ 。

3 、若有int a=0, b=4, 则表达式a && b 的值为___________ 。

4 、已知数学表达式为,其对应的C 语言表达式是。

5 、在C 语言中,主要有三种控制结构,分别是______ 结构、循环结构和______ 结构。

6 、在C 语言中,用打开文件的函数是_________ 。

7 、C 语言中,调用一个函数时,所用到的参数叫__________ 。

8 、若有以下定义:char a;unsigned int b;float c;double d;则表达式a*b+d-c 值的类型为__________ 。

9 、下列程序输出结果是_______ 。

#include <stdio.h>void main(){ int s=0,k=2;switch(k){ case 1:case 4:case 6:s+=10;case 2:case 3:case 7: s++;case 0:case 5: s+=2; }printf("s=%d\n",s); }三、选择题(每小题 2 分,共20 分)1 .C 语言不能选用的标识符是()。

2011年C语言试卷(含答案)

2011年C语言试卷(含答案)

2011年计算机科学与技术专业C 语言试卷题号 一 二 三 四 总分校核分数阅卷一、基础知识填空题(每空2分,共20分)1. C 语言规定,必须用___ ____标识符作为主函数。

2. C 语言中用来表示整常数的进制有哪三种:__ _、__ _、__ _。

3. break 语句只能用于___ ____语句和___ ____语句。

4. 数组名命名规则和变量名相同,由字母、数字和下划线组成,并且开头只能是______ _________。

5. C 语言中,形参缺省的存储类说明是___ ______。

6. 一个专门用来存放另一个变量地址的变量叫____ ______。

7. 定义FILE *fp,这里fp 是一个___ _____。

二、基础选择题(每题2分,共30分)1. C 语言程序是由___ ______组成。

A.若干个过程B.若干子程序C.一个主程序和若干个子程序D.若干函数2. 完成C 源程序编辑后,到生成执行文件,C 理系统必须执行的步骤依次为___ 。

A.连接、编译B.编译、连接C.连接、运行D.运行 3. 下列符号中不属于C 语言保留字的是__________。

A.volatileB.thenC.staticD.for4. 假设在程序中a 、b 、c 均被定义成int 型,并且已被赋予大于1的值,则下列几种表达中,能正确表示代数式abc1的C 表达式是__________。

A.1/a*b*c B.1/(a*b*c) C.1/a/b/(float)c D.1.0/(a*b*c)5.设有int x=10,y=3;则下列表达式值为1的是__________。

A.!(y= =x/3)B.y!=x%7C.x>0&&y<0D.x!=y||x>=y6.字符型常量在内存中存放的是该字符对应的__________。

A. ASCII码值B. 十进制值C. BCD码值D. 内部码值7.以下叙述不正确的是__________。

2011-2012学年度第二学期C语言程序设计期末考试试卷和答案

2011-2012学年度第二学期C语言程序设计期末考试试卷和答案

************(本科)试卷(A 卷)2011--2012学年第 二 学期《C 程序设计》试卷开课单位:计算机学院,考试形式:闭卷,允许带 入场40分每题1分):答案必须填写在答题卡的相应位置上,否则不得分。

.C 语言中字符型(char )数据在内存中的存储形式是________。

A 、原码 B 、反码 C 、补码 D 、ASCII 码 .C 语言中基本的数据类型包括________。

A 、整型、实型、逻辑型 B 、整型、实型、字符型 C 、 整型、字符型、逻辑型 D 、整型、实型、逻辑型、字符型 .在C 语言中,int 类型数据在内存中占用________。

A 、2字节 B 、4字节 C 、由编译系统决定 D 、由用户决定 .运算符有优先级,C 语言中关于运算符优先级的正确叙述是________。

A 、逻辑运算符高于算术运算符,算术运算符高于关系运算符; B 、算术运算符高于关系运算符,关系运算符高于逻辑运算符; C 、算术运算符高于逻辑运算符,逻辑运算符高于关系运算符; D 、关系运算符高于逻辑运算符,逻辑运算符高于算术运算符。

.下面关于C 语言语句的叙述,错误的是________。

A 、C 语言一行可以允许写多条语句; B 、C 语言语句用分号结束; C 、语句一行写不下时,可以用逗号换行 ; D 、语句一行写不下时,可在任意一空格处回车换行 。

.下面数据中不属于字符型常量的是________。

A 、“\n ” B 、…\0‟ C 、…A ‟ D 、…\t ‟.11.以下选项中,当x 为大于1的奇数时,值为0的表达式__________ 。

A 、 x%2==1B 、 x/2C 、x%2!=0D 、x%2==0 .C 语言源程序名的后缀是__________ 。

A 、 .exeB 、 .C C 、 .objD 、 .cp9.设所有变量均为int型,则表达式(a=5,b=2,b++,a-b)的值是________。

2011届c语言初赛试题及答案

2011届c语言初赛试题及答案

2011届c语言初赛试题及答案2011届C语言初赛试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. returnC. voidD. int答案:C2. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable_2D. variable-2答案:B3. C语言中,以下哪个选项是正确的字符串声明?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str[] = {"Hello"};D. char str[] = "Hello", "World";答案:A4. C语言中,以下哪个选项表示的是整型变量?A. int a;B. double a;C. char a;D. float a;答案:A5. 在C语言中,以下哪个选项表示的是逻辑与运算符?A. &&B. ||C. !D. =答案:A6. C语言中,以下哪个选项是正确的数组声明?A. int arr[5] = {0, 1, 2, 3, 4};B. int arr[] = {0, 1, 2, 3, 4};C. int arr[5] = {0, 1, 2};D. int arr = {0, 1, 2, 3, 4};答案:A7. 在C语言中,以下哪个选项是正确的注释方式?A. // This is a single line commentB. /* This is a single line comment */C. // This is a multi-line commentD. /* This is a multi-line comment */答案:A8. C语言中,以下哪个选项是正确的文件包含指令?A. #include "stdio.h"B. #include <stdio.h>C. #include "stdio.h" and #include <stdio.h>D. #include <stdio.h> and #include "stdio.h"答案:B9. 在C语言中,以下哪个选项是正确的递增运算符?A. --B. ++C. +=D. -答案:B10. C语言中,以下哪个选项是正确的条件语句?A. if (condition)B. if conditionC. if (condition) { }D. if (condition) { } else答案:C二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型变量并赋值为10的正确语句是:______。

(完整版)广州大学2011级别C程序设计I考试卷答案(A)

(完整版)广州大学2011级别C程序设计I考试卷答案(A)
fprintf(fp1, "abc");
fclose(fp1);
12.设有如下变量定义“int k=7,x=12;”,则能使值为3的表达式是(C )
A、x%=(k%=5) B、x%=(k-k%5) C、(x%=k)-(k%=5) D、x%=k-k%5
13.以下函数的功能是(A )
void fun(char *p2,char *p1)( while ((*p2=*p1)!=' \0'){p1++;p2++;}}
#define N 9
void main(void)
{ int i,j,iInsert,iStu[N+1]={90,88,85,80,75,70,65,60,55};
scanf("%d”,&iInsert);
for(i=0;i<N;i++)
if(iInsert<iStu[i]) ; else break; for(j=N;j>i;j--)
院、系领导
审批并签名
A卷
广州大学
C

1.C语言程序的3种基本结构是顺序结构、选择结构和(C )结构
A、嵌套B、递归C、循环D、转移
2.下列叙述中错误的是(D)
A、C语句必须以分号结束
B、复合语句在语法上被看做一条语句
C、赋值表达式末尾加分号就构成赋值语句
Dk空语句出现在任何位置都不会影响程序运行
3.C语言中,运算对象必须是整型数的运算符是(B )
max = a[0];
for (i = 1; i < n; i++)
if (a[i] > max)

c语言2011考试题及答案

c语言2011考试题及答案

c语言2011考试题及答案一、单项选择题(每题2分,共20分)1. 下列选项中,哪个是C语言中的合法变量名?A. 123abcB. _intC. intD. float答案:B2. C语言中,哪个关键字用于定义一个函数?A. intB. functionC. defD. void答案:A3. 在C语言中,用于定义一个结构体的关键字是?A. structB. unionC. enumD. typedef答案:A4. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. whileD. case答案:D6. C语言中,用于定义一个数组的语法是?A. int array[10];B. int [10] array;C. int array=10;D. int array;答案:A7. C语言中,哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B8. 在C语言中,哪个关键字用于定义一个指针?A. pointerB. ptrC. *D. ref答案:C9. 下列哪个选项不是C语言中的预处理命令?A. #includeB. #defineC. #ifD. switch答案:D10. C语言中,哪个函数用于输出格式化的字符串?A. printfB. scanfC. fprintfD. sprintf答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:____。

答案:int variable_name;2. C语言中,用于声明一个函数的关键字是:____。

答案:int3. 在C语言中,用于表示逻辑“与”操作的运算符是:____。

答案:&&4. C语言中,用于表示逻辑“或”操作的运算符是:____。

答案:||5. 在C语言中,用于声明一个字符数组的语法是:____。

2011年全国计算机等级考试二级C语言真题word版

2011年全国计算机等级考试二级C语言真题word版

2011年3月二级C语言程序设计笔试试卷(考试时间90分钟,满分100分)一、选择题(1)下列关于栈叙述正确的是A)栈顶元素最先能被删除B)栈顶元素最后才能被删除C)栈底元素永远不能被删除D)以上三种说法都不对(2)下列叙述中正确的是A)有一个以上根结点的数据结构不一定是非线性结构B)只有一个根结点的数据结构不一定是线性结构C)循环链表是非线性结构D)双向链表是非线性结构(3)某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)A)3 B)4 C)6 D)7(4)在软件开发中,需求分析阶段产生的主要文档是A)软件集成测试计划B)软件详细设计说明书C)用户手册D)软件需求规格说明书(5)结构化程序所要求的基本结构不包括A)顺序结构B)GOTO跳转C)选择(分支)结构D)重复(循环)结构(6)下面描述中错误的是A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)一个教师可讲授多门课程,一门课程可由多个教师讲授。

则实体教师和课程间的联系是A)1:1联系B)1:m联系C)m:1联系D)m:n联系9)有三个关系R、S和T如下:则由关系R和S得到关系T的操作是A)自然连接B)交C)除D)并(10)定义无符号整数类为UInt,下面可以作为类UInt实例化值的是A)-369 B)369 C)0.369 D)整数集合{1,2,3,4,5}(11)计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是A)C语言程序仅可以编译执行B)C语言程序仅可以解释执行C)C语言程序既可以编译执行又可以解释执行D)以上说法都不对(12)以下叙述中错误的是A)C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件(13)以下选项中不能用作C程序合法常量的是A)1,234 B)'123'C)123 D)"\x7G"(14)以下选项中可用作C程序合法实数的是A).1e0 B)3.0e0.2 C)E9 D)9.12E(15)若有定义语句:int a=3,b=2,c=1;,以下选项中错误的赋值表达式是A)a=(b=4)=3; B)a=b=c+1; C)a=(b=4)+c; D)a=1+(b=c=4);(16)有以下程序段char name[20];int num;scanf("name=%s num=%d",name;&num);当执行上述程序段,并从键盘输入:name=Lili num=1001<回车>后,name的值为A)Lili B)name=Lili C)Lili num= D)name=Lili num=1001(17)if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是A)必须是逻辑值B)必须是整数值C)必须是正数D)可以是任意合法的数值(18)有以下程序#include <stdio.h>main(){ int x=011;printf("%d\n",++x);}程序运行后的输出结果是A)12 B)11 C)10 D)9(19)有以下程序#include <stdio.h>main(){ int s;scanf("%d",&s);while(s>0){ switch(s){ case1:printf("%d",s+5);case2:printf("%d",s+4); break;case3:printf("%d",s+3);default:printf("%d",s+1);break;}scanf("%d",&s);}}运行时,若输入1 2 3 4 5 0<回车>,则输出结果是A)6566456 B)66656 C)66666 D)6666656(20)有以下程序段int i,n;for(i=0;i<8;i++){ n=rand()%5;switch (n){ case 1:case 3:printf("%d\n",n); break;case 2:case 4:printf("%d\n",n); continue;case 0:exit(0);}printf("%d\n",n);}以下关于程序段执行情况的叙述,正确的是A)for循环语句固定执行8次B)当产生的随机数n为4时结束循环操作C)当产生的随机数n为1和2时不做任何操作D)当产生的随机数n为0时结束程序运行(21)有以下程序#include <stdio.h>main(){ char s[]="012xy\08s34f4w2";int i,n=0;for(i=0;s[i]!=0;i++)if(s[i]>='0'&&s[i]<='9') n++;printf("%d\n",n);}程序运行后的输出结果是A)0 B)3 C)7 D)8(22)若i和k都是int类型变量,有以下for语句for(i=0,k=-1;k=1;k++) printf("*****\n");下面关于语句执行情况的叙述中正确的是A)循环体执行两次B)循环体执行一次C)循环体一次也不执行D)构成无限循环(23)有以下程序#include <stdio.h>main(){ char b,c; int i;b='a'; c='A';for(i=0;i<6;i++){ if(i%2) putchar(i+b);else putchar(i+c);} printf("\n");}程序运行后的输出结果是A)ABCDEF B)AbCdEf C)aBcDeF D)abcdef(24)设有定义:double x[10],*p=x;,以下能给数组x下标为6的元素读入数据的正确语句是A)scanf("%f",&x[6]); B)scanf("%lf",*(x+6));C)scanf("%lf",p+6); D)scanf("%lf",p[6]);(25)有以下程序(说明:字母A的ASCII码值是65)#include <stdio.h>void fun(char *s){ while(*s){ if(*s%2) printf("%c",*s);s++;}}main(){ char a[]="BYTE";fun(a); printf("\n");}程序运行后的输出结果是A)BY B)BT C)YT D) YE(26)有以下程序段#include <stdio.h>main(){ …while( getchar()!='\n');…}以下叙述中正确的是A)此while语句将无限循环B) getchar()不可以出现在while语句的条件表达式中C)当执行此while语句时,只有按回车键程序才能继续执行D)当执行此while语句时,按任意键程序就能继续执行(27)有以下程序#include <stdio.h>main(){ int x=1,y=0;if(!x) y++;else if(x==0)if (x) y+=2;else y+=3;printf("%d\n",y);}程序运行后的输出结果是A)3 B)2 C)1 D) 0(28)若有定义语句:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的是A)p=s; B)p=k; C)p=s[0]; D)k=s;(29)有以下程序#include <stdio.h>void fun(char *c){ while(*c){ if(*c>='a'&&*c<='z') *c=*c-('a'-'A');c++;}}main(){ char s[81];gets(s); fun(s); puts(s):}当执行程序时从键盘上输入Hello Beijing<回车>,则程序的输出结果是A)hello beijing B)Hello Beijing C)HELLO BEIJING D)hELLO Beijing(30)以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。

蓝桥杯2011决赛c本科试题及答案

蓝桥杯2011决赛c本科试题及答案

2011年决赛c 本科考生须知:考试时间为5小时。

本试卷包含两种题型:“代码填空”与“程序设计”。

总计100分。

其中代码填空:9+14 = 23 分程序设计:19+28+30 = 77分填空题要求参赛选手在弄清给定代码工作原理的基础上填写缺失的部分,使得程序逻辑正确、完整。

所填写的代码不超过一条语句(即不能出现分号)。

把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。

考生的程序只有能运行出正确结果的时候才有机会得分。

注意:在评卷时使用的输入数据与试卷中给出的实例数据可能是不同的。

选手的程序必须是通用的,不能只对试卷中给定的数据有效。

对每个题目,要求考生把所有函数写在一个文件中。

调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。

相关的工程文件不要拷入。

对于编程题目,要求选手给出的解答完全符合ANSI C标准,不能使用c++特性;不能使用诸如绘图、中断调用等硬件相关或操作系统相关的API。

1.代码填空(满分9分)题目在考生文件夹下对应题号的“题目.rar”中,请先解压该文件。

解压密码以现场公布为准。

仔细阅读和调试题目提供的源代码,根据要求填写缺失的代码部分。

注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

直接写在题面中不能得分。

数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示。

我们可以通过计算机验证其在有限范围的正确性。

对于大数,简单的循环嵌套是不适宜的。

下面的代码给出了一种分解方案。

请仔细阅读,填写空缺的代码(下划线部分)。

注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

直接写在题面中不能得分。

int f(int n, int a[], int idx){if(______________) return 1; // 填空1if(idx==4) return 0;for(int i=(int)sqrt(n); i>=1; i--){a[idx] = i;if(_______________________) return 1; // 填空2 }return 0;}int main(int argc, char* argv[]){for(;;){int number;printf("输入整数(1~10亿):");scanf("%d",&number);int a[] = {0,0,0,0};int r = f(number, a, 0);printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]);}return 0;}本题满分:9分填空1: (3分)n==0或者:0==n填空2: (6分)f(n-i*i, a, idx+1)或者:f(n-i*i, a, idx+1) > 0f(n-i*i, a, idx+1) == 12.代码填空(满分14分)题目在考生文件夹下对应题号的“题目.rar”中,请先解压该文件。

2011NOIP初赛C++普及组试题

2011NOIP初赛C++普及组试题

第十七届全国青少年信息学奥林匹克联赛初赛试题(普及组 C++语言两小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共20题,每题1.5分,共计30分。

每题有且仅有一个正确选项。

)1.在二进制下,1101001 + () = 1110110。

A. 1011B. 1101C. 1010D. 11112.字符“0”的ASCII码为48,则字符“9”的ASCII码为()。

A. 39B. 57C. 120D. 视具体的计算机而定3.一片容量为8GB的SD卡能存储大约()张大小为2MB的数码照片。

A. 1600B. 2000C. 4000D. 160004.摩尔定律(Moore's law)是由英特尔创始人之一戈登·摩尔(Gordon Moore)提出来的。

根据摩尔定律,在过去几十年以及在可预测的未来几年,单块集成电路的集成度大约每()个月翻一番。

A. 1B. 6C. 18D. 365.无向完全图是图中每对顶点之间都恰有一条边的简单图。

已知无向完全图G有7个顶点,则它共有()条边。

A. 7B. 21C. 42D. 496.寄存器是()的重要组成部分。

A. 硬盘B. 高速缓存C. 内存D. 中央处理器(CPU)7.如果根结点的深度记为1,则一棵恰有2011个叶结点的二叉树的深度最少是()。

A. 10B. 11C. 12D. 138. 体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。

每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。

这种站队的方法类似于()算法。

A. 快速排序B. 插入排序C. 冒泡排序D. 归并排序9.一个正整数在二进制下有100位,则它在十六进制下有()位。

A. 7B. 13C. 25D. 不能确定10.有人认为,在个人电脑送修前,将文件放入回收站中就是已经将其删除了。

这种想法是()。

2011C++下期末考试试卷A

2011C++下期末考试试卷A

程序设计与算法语言Ⅱ(电类) 2010级机试(A卷)(考试时间80分钟)说明:首先在网络Z盘建立一个以自己的学号+姓名命名的文件夹,在考试结束前根据机房要求,将要上交的源文件“学号—fa1。

CPP"和“学号—fa2。

CPP”复制到该文件夹中.注意:请在本机的D盘根目录上建立一个以自己学号命名的文件夹,将本次机试的两题所用的工程目录及文件均建立在此文件夹中。

一、改错题(50分)【要求】调试程序,修改其中的语法错误及少量逻辑错误。

只能修改、不能增加或删除整条语句,但可增加少量说明语句和编译预处理指令。

★请在修改的语句后依次加上://错误1、//错误2、……。

【注意】源程序以“学号—fa1.cpp”命名,存入自己学号文件夹,然后在“学号—fa1.cpp”源文件中改错。

请不要直接在此WORD文档上修改。

【题目】以下程序实现了对字符串的选择排序,初始字符串为“Hello World!”,排序后输出字符串为“roollledWH!”.【含错误的源程序】#include <iostream>using namespace std;void SelectSort( char[] )int main(){int n=12;char list[n]="Hello World!”;cout〉>”未排序字符串:"<〈list<〈endl;SelectSort(list[n] );cout<<"已排序字符串:"〈<list[n]<〈endl;return 0;}void SelectSort( char slist[n]){int i,j,k;char temp;for(i=0;i<n;i++){k=i;temp=slist[i];for(j=0;j<=n;j++)if(slist[j]>temp){k=j;temp=slist[j];}if(k!=i){temp=slist[i];slist[i]=slist[k];slist[k]=temp;}}}二、编程题(50分)【注意】源程序以“学号-fa2.cpp"命名,存入自己学号文件夹。

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

上海大学C 语言试卷 2000.11一、基础概念题(30%)[1] (3分)写出如下数学式的c 语言表达式b a x)cos([2] 在下列符号中,选出可以作变量名的符号(在该符号后面打勾)y2k 2ky πmy_name *p-bcd _next if integer do[3] 写出下列表达式的值1.3<5&&5<7 ______________2.!(2<=10) ______________3.!5||(4>>10) ______________4.!(2<4)||(5<3?0:10) ______________[4] 执行下面语句後,打印出什么结果?int x, y, z, w;x=y=z= -1;w=++x&&++y||++z;printf(“x=%d, y=%d, z=%d, w=%d”, x, y, z, w);[5] 执行下列语句後,输出结果是什么?char x, y, z, w;x=‟e‟;y=x+2;z=x-3;w=x-…a‟+‟A‟;printf(“x=%c, y=%c, z=%c, w=%c”, x, y, z, w);[6] 用一个表达式描述下列命题1.a小于b或小于c2.a和b都小于c3.a和b中有一个小于c4,x大于a而小于b[7] 执行下列语句,写出输出结果。

char *p, s[ ]=”abcdefgh”;p=s;printf(“%s”, p+3);[8](3分)执行下列语句,写出输出结果。

(strlen( ) 是一个求字符串长度的库函数)printf(“%d”, strlen(“this\t\\a\078string\n”));二、写出下列程序的输出结果(40%)[1]# include <stdio.h>main( ){ int i, s=0;for(i=1;i<10;i++){ s+=i*i;if(s>10) break;}printf(“i=%d, s=%d\n”, i, s);}[2]# include <stdio.h>main( ){ int i, s=0, n=0;for(i=1; i<10; i++){ if(i%2==0||i%3==0) continue;n++;s+=i;}printf(“n=%d, s=%d\n”, n, s);}[3]# include <stdio.h>main( ){ int i, s=0, t=0;for(i=1; i<10; i++)switch(i<6){ case 0: t+=i; break;case 1: s+=i; break;}printf(“t=%d, s=%d\n”, t, s);}[4]# include <stdio.h>int gcd(int, int);main( ){ int a, b;scanf(“%d, %d”, &a, &b);printf(“a=%d, b=%d, gcd=%d\n”, a, b, gcd(a,b)); }int gcd(int x, int y){ int r;r=x%y;if(r==0) return y;return gcd(y, r);}输入:15,9[5]# include <stdio.h>main( ){ int m[10], n, k, i;scanf(“%d, %d”, &n, &k);i=0;do { m[i++]=n%k;n/=k;} while(n!=0);while (i) printf(“%d”, m[--i]); }输入:13,2[6]# include <stdio.h>main( ){ static char s[ ]=”Shanghai”;int num, i, yes;yes=0; num=0;for(i=0; s[i]!=‟\0‟; i++){ if(s[i]==‟a‟&&!yes) yes=1;if(yes) num++;}printf(“num=%d\n”, num);}[7]# include <stdio.h>void fun(int *a, int n, int m){ int t;while(n<m){ t=*(a+n);*(a+n)=*(a+m);*(a+m)=t;n++;m --;}}void main( ){ static int s[ ]={0, 1, 2, 3, 4, 5};int i;fun(s, 0, 3);fun(s, 2, 5);for(i=0; i<6; i++)printf(“\ns[%d]=%d”, i, s[i]);}[8]# include <stdio.h>void fun(void);void main( ){ int i;for(i=0; i<5; i++) fun( );}void fun( ){ static int i=10;i+=2;printf(“i=%d”, i);}三、填空题(16%)[1]程序说明:函数sum是求正整数n的所有各不相同的因子,数组s保存这些因子,因子的个数保存在k所指向的整型变量中,函数返回这些因子之和。

程序如下:# include <stdio.h># include <math.h>long sum(int n, int s[ ], int *k){ int a, m, max, i=0;long total=0;max=sqrt(n);for(m=1; m<=max; m++){ if( ________ ){ a=n/m;total+=s[i++]=m;if( ________ ) ___________ =a;}}___________ ;return total;}main( ){ int a[20], int x, count;long t;scanf(“%d”, &x);t=sum(x, a, &count);printf(“t=%ld\n”, t);for(x=0; x<count; x++)printf(“%4d”, a[x]);}[2]程序说明:该程序检查由# define所定义的文本文件中花括号是否配对。

函数check完成检测功能,所遵循的原则为:1)在检测过程中,不能出现右花括号“}”个数多于左花括号“{”个数,如果该情况发生,则返回-1。

2)整个文件检测完成后,若右花括号“}”个数等于左花括号“{”个数,则返回0,否则返回1。

3)把检测的行数记录在n所指向的变量中。

# include <stdio.h># define file “c:\\bc31\\bin\\match.c”int check(FILE*, int *)void main( ){ int line;FILE*fp=fopen( ________ );switch(check( __________ )){ case 0: printf(“file %s match correctly\n”, file); break;case 1: printf(“file %s missing } on %d line\n”, file,line); break;case -1: printf(“file %s missing { on %d line\n”, file,line ) ; break;}fclose(fp);}int check(FILE*fp, int *n){ int left=0, right=0, line=0;char c;while((c=fgetc(fp))!=EOF){ if(c==‟{…) left++;else if(c==‟}‟) right++;else if(c==‟\n‟) *n=++line;if( __________ ) return -1;}return _____________ ;}四、编程(14%)[1] (6分)编写一个函数my_strlin(char *s),用以计算并返回字符串s中小写英文字母的个数。

[2](8分) 设有结构类型定义:struct node{float coeff;int n;struct node *next;};其中成员coeff 表示多项式中一项的系数,n表示该项中自变量x的幂次。

由该结构类型的变量构成一个有序链表,其有序性是由n的降序体现的。

该链表的表头指针为head。

请定义一个函数double compol ( float x, struct node *head )其功能是根据自变量x的值,计算并返回该多项式的值。

相关文档
最新文档