




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C程序设计语言课程模拟试题(一题号 一 二 三 四 五 总分 分数 得分 评卷人 一、完成下列各题(共20分)1请用 C 语言的表达式表示下列代数式:(4分)(1) (2) x3sin550d(3) (e=2.71828)(4) (e=2.71828)2请指出下列各个说明中将dd 说明成什么:(6分)(1) double *dd; (2) double dd10;(3) double *dd10;(4) double (*dd)10; (5) double *dd( ); (6) double (*dd)( ); 3设在程序的变量说明部分已作了如下说明和初始化int i=3,j=8,k=11,
2、x=0,t=0,*p=&i; char a=X,b=Y,c=Z; 现若分别执行下列各条语句,请写出各语句执行后变量 x 的值:(10分)(1) x=(c b) ? k%i : k/i; (2) x= k j+2 i; (3) x=!c & b2 + a; (4) x*=c*a* *p/b; (5) x=b+ = c & +x; 得分 评卷人 二、完成下列各题(共20分) 1设在 PC 机上用Turbo C执行下列语句,请写出下列各语句的输出结果:(5分)(1) printf(%d,strlen(ABCDtx04); (2) printf(%s,strcat(Beijing,China); (3
3、) printf(%d,sizeof(asin(0.5); (4) printf(%d,strcmp(Windows98,Windows 95)MYFUNC FILE1.TXT FILE2.TXT FILE3.TXT问该程序的执行完成了什么工作?(10分)#include stdio.hmain(argv, argc)int argv;char *argc ;FILE *fp; int i;char *ss;if(fp=fopen(argc1,a)=NULL) printf(nCant open file %s!,argc1); exit(1); ss=argc2;for(i=1; *(ss+
4、i)!=0; i+) fputc(*(ss+i),fp); fclose(argc1); 得分 评卷人 三、完成下列各题(共20分) 1请写出下列程序的功能:#define M 200#include main( ) int aM+1; int i,j,k=0; for(i=0;iM+1; i+) ai=0; a0=1; for(j=1; jM+1; j+) if(!aj-1) k+; for(i=j;i=M;i+=j) ai-1=1; printf(n%dn,k); 2请写出下列程序中各 printf 的输出结果:#include int x=1,y=2,z=3;void funcA(int
5、 ,int );void funcB(); void main( ) int x=6; y=5; funcA(x+,y); printf(%d,%d,%d,x,y,z);void funcA(int y, int z) register int c=10; int x; y=7; x=c; funcB( ); printf(%d,%d,%d,x,y,z); funcB( ); printf(%d,%d,%d,x,y,z); void funcB( ) static int a=2; z=+a; printf(%d,%d,%d,x,y,z); 得分 评卷人 四、阅读下列程序(共20分) 1请写出
6、下列程序中各 printf 的输出结果:#include stdio.hmain( ) char a =Microsoft Windows 98; int b 4=1,2,3,4,11,12,13,14,21,22,23,24; int *p; char *c=a; printf(n%c,%c,a5,*c); c+=5; printf(%c,%c,*c,*(c+3); printf(%d,%d,*b1,(*b)2); p=b1; printf(%d,%d,p3,*(p+2); printf(%d,%d,*(b1+1),*(*b+10); 2请写出下列程序的输出结果:#include void
7、sort(cc,m)char *cc ;int m; char *pp; int i,j,k; for(i=1;im-1;i+) k=i; for(j=i+1;jm;j+) if(strcmp(cck,ccj)=0) k=j; if(k!=i) pp=cci; cci=cck; cck=pp; main( ) int i; char *tt=America,Austria,Russia,Britain,Japan,France; sort(tt,5); for(i=0;i=5;i+) i5?printf(%s, tti):printf(%s, tti); 得分 评卷人 五、完成下列各题(共20
8、分) 1请补充下列程序中的空白处,使其能输出下图所示的图形。#define M 10#include main( ) ; for (i=0; i 6; i+) printf(n); for( j=0; j=M/2-i;j+) printf( ); for( k=0; k= ; k+) printf(*); for (i=0; i=5; i+) ; for( j=0; ;j+) printf( ); for(k=0; ; k+) printf(*); 2下列程序先输入一个66的矩阵,然后再输入一个整型变量 n,若 n6,则对66的矩阵中的左上角的nn矩阵进行转置,请编写出实现这一要求的函数 tr
9、ansf( )。#define M 6#include main( ) char ccMM; int i,j,n; for(i=0;iM; i+) for(j=0;jM)exit(0); transf(cc,n); for(i=0;iM; i+) printf(nn); for(j=0; j 3*v (5) u | v 3设在程序的变量说明部分已作了如下说明和初始化int i=4,j=5,k=6,x=0,t=0,*p=&i; char a=X,b=Y,c=Z; 现若分别执行下列各条语句,请写出各语句执行后变量 t 的值:(10分)(1) t=k* *p; (2) t=(b-=a) ? i:j;
10、 (3) t=!c & c j i; (5) t=+bc & t=5 ; 得分 评卷人 二、完成下列各题(共20分) 1设在 PC 机上用 Turbo C 执行下列语句,请写出下列各语句的输出结果:(5分)(1) printf(“%d”,strlen(“C语言程序设计”); (2) printf(“%d”,strcmp(“Windows 98”,”Windows 95”)0 ? 1:-1 ); (3) printf(“%d”,sizeof(“xyzt042”); (4) printf(“%d”,isalpha(P); (5) printf(“%s”,strupr(“Jiangsu”); 2请指
11、出下列两个程序段在什么情况下等价,在什么情况下不等价:(5分) int i,sum=0; int i,sum=0; scanf(%d,&i); scanf(%d,&i); while(i=100) do sum+=i; sum+=i; i+; i+; while(iMYF FA.TXT FB.TXT问该程序执行完成了什么工作?(10分)#include stdio.hmain(argc,argv)int argc;char *argv;FILE *fpr,*fpw;if(fpr=fopen(argv2,r)=NULL) printf(nFile %s not found !,argv2); e
12、xit(1); if(fpw=fopen(argv1,a)=NULL) printf(nCant open file %s!,argv1); exit(1); do fputc(fgetc(fpr),fpw); while(!feof(fpr); 得分 评卷人 三、完成下列各题(共20分,每题10分) 1修改下列程序段,去掉其中的break、continue,保持与原程序段等价。char c=MicroSoft Windows 98;char *p;int i;p=c;i=0;while(pi!=0) if(*(p+i)= ) break; if(isupper(pi) i+=1; conti
13、nue; pi=*(p+i)-32; i+; 2请写出下列程序的输出结果:#include stdio.hmain() char *cc=AB911STUDENT; int i,c; for(i=1;(c=cci)!=0;i+) switch(c) case A: putchar(c+1); i=i+5; case B: putchar(c+4); continue; case 9: putchar(c); break; case S: while(c=cc+i)!=0); continue; case : putchar(X); break; case 1: case 9: putchar(
14、Z); continue; putchar(*); 得分 评卷人 四、阅读下列程序(共20分,每题10分) 1请写出下列程序中各 printf 的输出结果:#include stdio.hint x=5,y=6,z=7;void funa(int , int);void funb();void main() int z=10; y=11; printf(n%d,%d,%d,x,y,z); funa(x,y); printf(%d,%d,%d,x,y,z); void funa(int a,int b) int z=12; y=a; printf(%d,%d,%d,x,y,z); x=b; fu
15、nb(); printf(%d,%d,%d,x,y,z); void funb() int y=30; printf(%d,%d,%d,x,y,z); 2请写出运行下列程序后的输出结果:#define NULL 0#include stdio.hstruct mylist char d1,d2; struct mylist *next; ;typedef struct mylist Node;typedef struct mylist *LINK;void plist();LINK buildl();main( ) /* 函数定义 */ LINK head; head=buildl(ABCDE
16、FGHIJ); plist(head);LINK buildl(cc) /* 函数定义 */char *cc; LINK head,tail; int k; if (*cc) head=(LINK)malloc(sizeof(Node); head-d1=cc0; head-d2=cc1; tail=head; for(k=2; cck!=0;k+=2) tail-next=(LINK)malloc(sizeof(Node); tail=tail-next; tail-d1=*(cc+k)+1;tail-d2=*(cc+k+1)+1; tail-next=NULL; return(head);
17、void plist(xx) /* 函数定义 */ LINK xx; if(xx!=NULL) if(xx-next!=NULL) printf(%c-,xx-d1); else printf(%cn,xx-d1); plist(xx-next); 得分 评卷人 五、完成下列各题(共20分,每题10分) 1、请编写一完整的 C 程序把一个二维数组的行列元素互换,构成一个新的二维数组。设原数组为 4 行 3 列,其中各数据元素由用户输入,要求分别输出原数组和新数组。2、请补充下列程序中的空白处,使其能将 name 数组中的字符串按字典序从大到小输出。#include stdio.hmain() void sort(); int i,n=5; char *name=MS-DOS,Windows,UCDOS,CCDOS,Unix; sort(name,n); for(i=0;in;i+) printf(n%s,); void sort(cc,m)char *cc ;int m; int i,j,k; for(i=0;im-1;i+) k=i; for(j=i+1;jm;j+) if() k=j; if() pp=cci; cci=cck; cck=pp; 试卷代号: 座位号 江苏广播电视大学转业军人学历教
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论