下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、单项选择题(每小题 2 分,共 30 分)1. 1.C 语言程序中可以对程序进行注释,注释部分必须用符号_括起来。 A、 和 B、和 C、“/*”和”*/” D、“*/”和”/*”2. 2.下列运算符中,优先级最低的是_。 A、* B、!= C、+ D、=3. 3.若变量已正确定义,表达式 (j=3, j+) 的值是_ 。A、3 B、 4 C、5 D、04. 4.已知字符 a 的ASCII码为 97 ,执行下列语句的输出是_。 printf ("%d, %c", b, b+1 ) ; A、98, b B、语句不合法 C、98, 99 D、 98, c5. 5.表达式st
2、rcmp(“box”, “boss”) 的值是一个_。 A、 正数 B、 负数 C、 0 D、 不确定的数6. 6.数组定义为 int a32=1, 2, 3, 4, 5, 6,数组元素_的值为6。 A、a32 B、a21 C、a12 D、a237. 7.要调用数学函数时,在#include命令行中应包含_。 A、 ”stdio.h” B、 ”string.h” C、 ”math.h” D、 ”ctype.h”8. 8.判断i和j至少有一个值为非0的表达式是_。 A、 i!=0 && j!=0 B、i*j!=0 i!=0|j!=0yh1 C、!(i=0 | j=0) D、i&a
3、mp;&j9. 9.若a是基本整型变量,c是单精度实型变量,输入语句_是错误的。 A、scanf(”%d,%f”, &a, &c); B、scanf(”d=%d, c=%f”, &a, &c); C、scanf(”%d%f”, &a, &c); D、scanf(”%d%f”, a, c);10. 10.若变量已正确定义并且指针p已经指向某个变量x,则(*p)+相当于_。 A、p+ B、x+ C、*(p+) D、&x+11. 11.若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x, _是正确的。 A、p2=p1; B、
4、p2=*p1; C、p2=&p1; D、p2=*p1;12. 12.下列程序段的输出是_。 int c=1, 3, 5; int *k=c+1; printf("%d", *+k); A、 3 B、 5 C、 4 D、613. 13.不正确的赋值或赋初值的方式是_。 A、char str="string"; B、char str7='s', 't', 'r', 'i', 'n', 'g';C、char str10;str="string&qu
5、ot;;D、char str7='s', 't', 'r', 'i', 'n', 'g', 0;14. 14.对于以下结构定义,+p->str中的+加在_。struct int len; char *str; *p; A、指针str上 B、指针p上 C、str指的内容上 D、以上均不是15. 15.对于如下说明,语法和语义都正确的赋值是_。int c, *s, a=1, 3, 5;A、c=*s; B、 s0=a0; C、s=&a1; D、 c=a; 二、填空题(每小题 2 分
6、,共 20 分)1. 1.写出下列程序段的输出结果。 float x1, x2; x1=3/2; x2=x1/2; printf("%d, %.1f", (int)x1, x2) ;2. 2.表达式 (7<<1>>22 ) 的值是_。 3. 3.写出下列程序段的输出结果。 #define A 10 #define B (A<A+2)-2 printf("%d", B*2);4. 4.写出判断字符变量c是英文字母的表达式 。5. 5.写出下列程序段的输出结果。 int k, x;for (k=0, x=0; k<=9&a
7、mp;&x!=10; k+) x+=2; printf ("%d, %d", k, x) ;6. 6.写出下列程序段的输出结果。printf(“%d, %d”, NULL, EOF);7. 7.对于以下递归函数f,调用 f (3) 的返回值是_。 f (int n) return (n>0) 2*f(n-1)+f(n-2) : -1); 8. 8.写出下列程序段的输出结果。 char str="hellotworldn" printf("%d, %cn", sizeof(str), *(str+10);9. 9.输入12
8、345#后,写出下列程序的输出结果。 void main() char c; for(c=getchar(); getchar()!=#; c=getchar() putchar(c); 10. 10.执行程序find nx ould text.txt时,*+argv1的值是_。三、程序阅读题(每题5分,共20分)1. 1.若输入 3 1 2 3 <回车> , 则以下程序的输出结果是_。 #include "stdio.h" void main() int i, j, n, a10; scanf("%d", &n); for (i=0
9、; i<n; i+) scanf("%d",&ai); for (i=0; i<n; i+) for (j=0; j<n; j+) printf("%d, ", a(i+j)%n); 2. 2.若输入89 76 24 25 9 8 11 16 35 4 <回车> , 则以下程序的输出结果是_。 #include "stdio.h" #define N 10 main() int xN, y1N, y2N; int i, j, n1, n2, t, p; n1=n2=0; for(i=0;i<
10、N;i+) scanf(“%d”, &xi); if(xi % 2=0) y1n1+=xi; else y2n2+=xi; for(i=1; i<n1; i+) for(j=0; j<n1-1; j+) if(y1j>y1j+1) t=y1j; y1j=y1j+1; y1j+1=t; for(i=0; i<n2-1; i+) p=i; for(j=i+1; j<n2; j+) if(y2p<y2j) p=j; if(p!=i) t=y2i; y2i=y2p; y2p=t; for(i=0; i<n1; i+) printf("%d,
11、", y1i); for(i=0; i<n2; i+) printf("%d, ", y2i); 3. 3.以下程序的输出结果是_。 #include <stdio.h> int z; void p(int *x, int y) +*x; y-; z=*x+y+z; printf("%d, %d, %d#", *x, y, z);void main() int x=1, y=5, z=9; p(&x, y); printf("%d, %d, %d#", x, y, z); 4. 4.若输入 -6+1
12、5*3/5=<回车> , 则以下程序的输出结果是_。 #include <stdio.h> void main() int m=0, sum=0; char c, oldc='+' do c=getchar(); if(c<='9'&&c>='0') m=10*m+c - '0' else if(oldc='+') sum += m; else sum -= m; m=0; oldc=c; printf("%d, ", sum); while(
13、c!='='); 四、程序填空题(每空 2 分,共 20 分)1. 1.下列程序的功能是创建单向链表。 #include <stdio.h> #include <alloc.h> struct link char name10; intmark; struct link * next; ; void insert(char *, int); struct link * head = NULL; main() char name10; int mark; struct link * t; while ( 1 ) scanf("%s %
14、d", name, &mark); if ( strcmp(name, "#") = 0 ) break; _(1)_; for (t=head; _(2)_) printf("<%s>: %dn", t->name, t->mark);void insert(char * name, int mark)struct link * p;p = _(3)_ ;strcpy(p->name, name);p->mark = mark; _(4)_;if ( head != NULL ) _(5)_;hea
15、d = p;2. 2.prog.c是带命令行参数的程序。运行prog filename时,将文本文件filename中的内容原样输出;运行prog -u filename时,将文本文件filename中的所有字母以大写方式输出(其余字符原样输出);运行prog -d filename时,只将文本文件filename中的数字输出。# include <stdio.h># include <ctype.h>void main(int argc, char * argv)FILE *fp;char * filename, ch; int tag=0;if (argc <
16、2 | argc>3) printf(“Argument errorn”); return; if (argc = 3) if (strcmp(argv1, “-u”) = 0) tag=1;else if (strcmp(argv1, “-d”) = 0) tag=2;else printf(“Option errorn”); return;_(6)_; else filename = argv1;if (_(7)_) printf(“Cannot open filen”); return;while (_(8)_ ) ch = fgetc(fp);if ( tag = 0 ) put
17、char(ch);else if ( tag = 1 ) _(9)_; else if ( _(10)_) putchar(ch);fclose(fp); 五、编程题 ( 共 10 分,混合班学生做第2题,其他学生做第1题)1. 1.程序说明 (10分) 输入m和n(mn0)后,计算下列表达式的值并输出。 m! n!*(m-n)! 要求将计算阶乘的运算写成函数fact(n),函数返回值的类型为float。 2. 2.程序说明 (10分) 编写函数strcmp(char * s1, char * s2)。若s1和s2均是数字串(包括+/-号),则按照十进制整数大小进行比较;否
18、则按照Ascii序进行比较。s1大于/等于/小于s2时,分别输出1/0/-1。可以直接调用atoi函数。20002001学年程序设计基础C参考答案 一、单项选择题(每小题 2 分,共 30 分)题号123456789101112131415选择CDADABCBDBABCAC二、填空题(每小题 2 分,共 20 分) 11, 0.5213-34c>=a&&c<=z| c>=A&&c<=Z55, 1060, -17-17813, d913510n三、程序阅读题(每题5分,共20分) 11, 2, 3, 2, 3,
19、 1, 3, 1, 2,24, 8, 16, 24, 76, 89, 35, 25, 11, 9,32, 4, 6#2, 5, 9#40, -6, 9, 6, 1,四、程序填空题(每空 2 分,共 20 分) (1) (1) insert(name, mark)(2) (2) t!=NULL; t=t->next(3) (3) (struct link *)malloc(sizeof(struct link)(4) (4) p->next = NULL(5) (5) p->next = head(6) (6)
20、0;filename = argv2(7) (7) (fp=fopen(filename, “r”) = NULL(8) (8) ! feof(fp)(9) (9) putchar(toupper(ch)(10) (10) tag= 2&& isdigit(ch) 五、编程题 ( 共 10 分,混合班学生做第2题,其他学生做第1题)1、#include <stdio.h>float fact(int);main()intm, n;float val;scanf(“%d%d”, &m, &n);val = fact(m) / (fact(n) * fact(m-n);printf(“Value: %fn”, val);float fact(int n)if ( n <= 0 ) return 1;return(fact(n-1) * n);float fact(int n) int i; float f=1;for(i=1; i<=n; i+) f=f*i;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物资进校园管理制度(3篇)
- 矿区内车辆管理制度范本(3篇)
- 银行策划活动方案线上(3篇)
- 《GAT 843-2009唾液酒精检测试纸条》专题研究报告
- 养老院情感交流制度
- 养老院安全防范与应急处理制度
- 企业内部保密工作管理制度
- 2026年及未来5年市场数据中国地板整修制品行业市场深度分析及投资策略研究报告
- 2026湖北武汉格鲁伯实验学校招聘3人参考题库附答案
- 2026福建厦门市集美区乐安中学(集大附中)非在编教职工招聘5人参考题库附答案
- 2026中国烟草总公司郑州烟草研究院高校毕业生招聘19人备考题库(河南)及1套完整答案详解
- 2026年甘肃省兰州市皋兰县兰泉污水处理有限责任公司招聘笔试参考题库及答案解析
- 陶瓷工艺品彩绘师岗前工作标准化考核试卷含答案
- 2025年全国高压电工操作证理论考试题库(含答案)
- 居间合同2026年工作协议
- 2025-2026学年(通*用版)高二上学期期末测试【英语】试卷(含听力音频、答案)
- 翻车机工操作技能水平考核试卷含答案
- 医疗机构信息安全建设与风险评估方案
- 员工宿舍安全培训资料课件
- 化工设备培训课件教学
- 舞台灯光音响控制系统及视频显示系统安装施工方案
评论
0/150
提交评论