7-22-C语言上机考试试题15

上传人:re****.1 文档编号:562285993 上传时间:2023-08-23 格式:DOCX 页数:10 大小:23.31KB
返回 下载 相关 举报
7-22-C语言上机考试试题15_第1页
第1页 / 共10页
7-22-C语言上机考试试题15_第2页
第2页 / 共10页
7-22-C语言上机考试试题15_第3页
第3页 / 共10页
7-22-C语言上机考试试题15_第4页
第4页 / 共10页
7-22-C语言上机考试试题15_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《7-22-C语言上机考试试题15》由会员分享,可在线阅读,更多相关《7-22-C语言上机考试试题15(10页珍藏版)》请在金锄头文库上搜索。

1、C 语言上机考试试题 -151. 选择题 ( 评分标准 20 分,每小题2 分 )1、 一个C程序的执行是从 。A) 本程序的 main 函数开始,到 main 函数结束B) 本程序文件的第一个函数开始,到本程序的最后一个函数结束C) 本程序的 main 函数开始,到本程序的最后一个函数结束D) 本程序文件的第一个函数开始,到 main 函数结束2、 以下叙述中不正确的是。A) 一个 C 源程序可以由一个或多个函数组成B) C 程序的基本组成单位是函数C) 在 C 程序中,注释只能位于一条语句的后面D) 一个 C 程序必须包含一个主函数3、假设所有的变量都是int型,则表达式(a=2,b=5,

2、b+,a+b)的值是 A) 7B) 8C) 6D) 24、判断char型变量ch中的字符是否为大写字母的正确表达式是A) A = ch =ZB) (A = ch) & (ch = Z)C) (A = ch) & (ch =Z)D) (A = ch) AND (ch = Z)5、 C语言中while和do-while循环的主要区别是 。A) do-while 的循环体至少无条件执行一次B) while 的循环控制条件比 do-while 的严格C) do-while 允许从该语句的外部跳转到循环体内D) do-while 的循环体不能是复合语句6、若有说明int a10,则对a数组元素的正确引用

3、是 。A) a10 B) a-1 C) a(5) D) a10-57、 下面程序中有错误的行是。(每行最前面的数字代表行号)1 main()23 int a3 = 1,2;4 int j;5 scanf(“%d”,&a);6 for (j=0; j3; j+) a0 = a0 +aj;7 printf(“a0=%dn”,a0);8A) 3 B) 6 C) 7 D) 58、 对以下语句的正确理解是。int a10 = 6, 7, 8, 9, 10;A) 将 5 个初值依次赋给 a1 到 a5B) 将5 个初值依次赋给 a0 到 a4C) 将5 个初值依次赋给 a6 到 a10D) 因为数组长度与

4、初值个数不同,所以此语句不正确9、有两个字符数组a、b,则以下正确的输入语句是A) gets(a,b);B) scanf(“%s%s”,a,b);C) scanf(“%s%s”,&a,&b);D) gets(“a”), gets(“b”);10、以下正确的函数定义是。A) double fun(int x, int y); z=x+y; return z; B) fun(int x, y) int z; return z; C) fun(x, y) int x,y; double z;z=x+y; return z; D) double fun(int x, int y) double z;

5、z=x+y; return z; 套数号答案151. A 2. C 3. B 4. B 5. A 6. D 7. D 8. B 9. B 10. D2. 判断题 ( 评分标准 20 分,每小题2 分)1. 静态局部变量在函数体外仍有效。2. 二维数组名是二级指针。3. 可以用一个结构变量给另一个同类型的结构变量赋值。4. 链表在内存中常常是不连续存储的。5. 在C语言程序中,若对函数类型未加显式说明,函数的隐含类型为:void。6. _336 是合法的标识符。7. C 语言程序中可以对程序进行注释,注释部分必须用符号“/*/ ” 括起来8. 要调用数学函数时,在#include命令行中应包含

6、string.h 。9. 表达式strcmp(box,boss)的值比0大还是比0小无法确定。10.若变量已正确定义并且指针p已经指向某个变量x,贝I(*p)+相当于x+。套数号答案151. F 2. F 3. T4. T5. F6. T7. T 8. F 9. F 10. T3. 填空题(4) ( 评分标准 10 分,每小题 2分)1. 定义符号常量的方法是: 符号常量 常量(规定用字符与符号)。2. int x=3; 贝表达式 3=x=b&b=c”表示的是 (规定用字符与符号)。4. 有以下结构体定义:struct employee char name10; int ssn;person;

7、若把变量person的成员name赋值为david。则赋值语句为(person.name,”david”)。5. 若有定义:int x=5,y=6; double z;则语句 printf(%.2f,1.0+y/x);执行结果为。 参考答案:第15套(1)#define(2)0(3)abc(4)strcpy(5)2.004. 程序改错题 ( 评分标准 20 分,每小题 5 分 )1.下列程序的功能是: 输出100以内能被3整除且个位数为6的所有整数,程序运行结果为:6 36 66 96。#include void main() int i,j;for(i=0;i=9;i+)j=i*10+6;i

8、f(j%3=0)/*$1*/continue;printf(%d ,j);操作说明:在考生目录的*子目录下,有*.c文件,该文件中“/*$1*/”行中的语句if(j%3=0)有错误,请改正(注 意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:输出100 以内能被3 整除且个位 数为 6的所有整数。结果:6 36 66 96答案:if(j%3!=0)运行样例1行 运行样例 1:结果: 6 36 66 962. 以下程序计算出从1 到输入的值的全部整数的和,要求输入的数大于等于0,小于等于100。例 如输入5,运行程序后输出结果: 15 (1到 5的全部整数和)。#include vo

9、id main() int num;int i,sum=0; do scanf(%d,&num); while(num100);for(i=1;inum;) /*$1*/ sum=sum+i;i=i+1;printf(%dn,sum); 操作说明:在考生目录的*子目录下,有*.c文件,该文件中“/*$1*/”中的语句for(i=l;ivnum;)有错误, 请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:计算出从 1 到输入的 值的全部整数的和,要求输入的数大于等于0,小于等于100。输入:10 结果:55 答案: for(i=l;i=num;)运行样例 1 行运行样例 1

10、:10结果: 553. 以下程序的功能是对一个字符串进行逆序,并输出逆序后的字符串。例如输入 1 个字符串 str: howdo,输出结果为:odwoh(逆序)。#include #include void fun(char str);int main()char str20;gets(str);fun(str);printf(%sn,str);return 1; void fun(char str)char m;int i,j;for(i=0,j=strlen(str);istrlen(str);i+,j-)/*$1*/ m=stri;stri=strj-1; strj-1=m; 操作说明:

11、在考生目录的*子目录下,有*.c文件,该文件中“/*$1*/”行中的语句 for(i=0,j=strlen(str);istrlen(str);i+,j-) 有错误,请改正(注意:不得加行、减行、加句、减句,否 则后果自负)。该程序功能:是对一个字符串进行逆序,并输出逆序后的字符串。假设程序输入:love 运行结果: evol。答案: for(i=0,j=strlen(str);istrlen(str)/2;i+,j-) 运行样例 1 行运行样例 1: love 结果: evol4. 本程序的功能对三个字符串进行比较,返回字符串中较小字符串的首地址,并输出较小的字符串。 例如程序输入: dbc

12、 cab ec , 运行结果为: cab。#include #include char *scmp(char *str1,char *str2) if( strcmp(str1,str2)0 )/*$1*/return(str1);elsereturn(str2); main() int i;char str10=;char a310;for(i=0;i0)有 错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能::对三个字符 串进行比较,返回字符串中较小字符串的首地址,并输出较小的字符串。例如输入:dbc cab ec, 结果为:cab答案: if(strcmp(str

13、l,str2)0) 运行样例 4 行 运行样例 l: dbccabec结果: cab5. 程序填空( 评分标准 10 分,每小题 5 分)1.以下程序将一个磁盘文件testl5. txt中的信息复制到另一个磁盘文件test.txt中。 #include #include main() FILE *in, *out;char infile10, outfile10;scanf(%s, infile ); scanf(%s, outfile);if (in = fopen(infile, r)=NULL) printf(can not open infile %s: , infile);exit(0); if (out = fopen(outfile, w)=NULL) printf(can not open outfile %s: , outfile);exit(0); while( !feof(in) )/* $ */fclose(in);fclose(out);操作说明:在考生目录的*子目录下,有*.C文件,该文件中“/*$1*/”行是根据程序功能需要填充部分,请完 成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号