《C程序设计》试卷0_第1页
《C程序设计》试卷0_第2页
《C程序设计》试卷0_第3页
《C程序设计》试卷0_第4页
《C程序设计》试卷0_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、c 程序设计试卷page 1 of 10 一、选择填空:(每题 1.5 分,共 15 分)1 以下可以正确表示字符型常数的是。(a) “a” (b) 297 (c) t (d) “n ”2 typedef struct char name10; int age; char interests20; student; 以上语句中 student 是:(a) 结构体变量,有存储空间 (b)结构体数据类型,无存储空间(c) 结构体变量,无存储空间 (d)结构体数据类型,有存储空间3 函数: void f(void) int i = 12, j; for(j=0; j=100) break; (b)f

2、or(;); (c)int k=1000; do+k; while (k=1000);(d)int s=36 while(s); -s; c 程序设计试卷page 3 of 10 二、写出下列程序的运行结果:( 共 35 分)1. (8分) int funa(int *a) a0 +; int funb(int b) b1 += 5; main() int a5 = 2,3,4,5,6; int b5 = 2,3,4,5,6; int *p, i; p = &a0; (*p)+; funb(p); for(i = 0; i 5; i+) printf(%d,ai); p = &

3、b1; funa(p); funb(p); for(i = 0; i 5; i+) printf(%d,bi); 运行结果:2、(6 分) main() char a=programming, b=language; char *p1,*p2; int i; p1=a; p2=b; for(i=0; *(p1+i)!=0 &*(p2+i)!=0 ;i+)if(*(p1+i)=*(p2+i) printf(%c,*(p1+i); 运行结果是:c 程序设计试卷page 4 of 10 3、(8 分) int f(int n) if (n=1) return 1; else return 2

4、 * f(n/2); 运行结果: f (20) 的值是多少 ? 4、 (6分) void change (int *a, int *b) int x =* a; *a = *b; *b = x; printf(“%d %d “, *a, *b); void main() int x=10,y=25; change (&x, &y); printf(“%d %d “ , x, y); 运行结果:5、(5 分) 已知字母a的 ascii 码为十进制的65,下面程序的输出是void main() char ch1,ch2; ch1=a+5-3; ch2=a+6-3; printf(%

5、d,%cn,ch1,ch2); c 程序设计试卷page 5 of 10 答案c 程序设计试卷page 6 of 10 三、程序填空(每空2 分, 共 38 分)1、 下面是一个求数组元素之和的程序。主程序中定义并初始化一个数组,然后计算各数组元素之和,并输出结果。# include int totalsum(int array,int len) _ ; for (int i=0; _ ; i+) _ ; return sum; void main() int a5=2,3,6,8,10; _ ; total = totalsum(a,5); printf( sum of array: %d,

6、 total ); 2、 从终端读入的文本(用 作为文本结束标志)复制到一个名字c.dat的新文件中。#include file *fp; main() char ch; if (fp= )=null) exit(0); while (ch=getchar()!= )fputc( _); fclose(fp); 3、 结构型变量root包含三部分,其中sp 是指向字符串的指针,next 是指向该结构的指针,data 用以存放整数。请填空完成此结构的类型说明和变量root的定义。typedef struct list char *sp; _ _; _; c 程序设计试卷page 7 of 10

7、root; 4、 已知:typedef struct int x; char *y; node; node tab2=1,ab, 2,cd; node *p=tab; 则:表达式 *p-y 的结果为 _ _ 。表达式 *( +p)-y 的结果为: _ _ 。5、#define maxchar 100 #define true 1 #define false 0 int htoi(); main() int c, i, inrange; char tmaxchar; i = 0; inrange =; while (c = getchar() != eof & i = 0 & c

8、 = a & c = a & c = 0 & si = a & si = a & si = f) n = n * 16 + si - ; ; ; return(n); c 程序设计试卷page 9 of 10 四、编程题(14 分)整型数组int a10中随机地存放有数字09(数字可以重复) 。现请编写一个程序,在数组a10 中,按顺序抽取5 个数字,使这5 个数字组成的5位数为最大(注意:这5 个数字的先后顺序必须同其在原数组a10 中的先后顺序相同) ,将结果保存在另一数组int result5中。实例:若 a10 = 4, 7, 8, 0, 8,

9、6, 2, 4, 9, 1 则可得: result5 = 8, 8, 6, 9, 1 附:在 int a10中随机存放10 个数字的代码如下:#include “time.h ”int a10; srand( (unsigned)time(null) ); for ( int i = 0; i 10; i+ ) ai = rand() % 10 / 产生 09 共 10 个随机数赋值给a10 c 程序设计试卷page 10 of 10 #include time.hintfindmax( inta, int & nstartpos , intnendpos ); voidmain( intargc , char * argv ) inta10, result5; srand ( ( unsigned ) time (null ) ); for ( inti = 0; i 10; i + ) a i = rand() % 10; /intnstartpos = 0; for ( i = 0; i 5; i + ) result i = findmax( a, nstartpos , i +6 ); intfindmax( inta, int

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论