1、(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) printf(,sizeof(asin(0.5);(4) printf(,strcmp(Windows98Windows 95)MYFUNC FILE1.TXT FILE2.TXT FILE3.TXT问该程序的执行完成了什么工作?#inclu
2、de stdio.hmain(argv, argc)int argv;char *argc ;FILE *fp;char *ss;if(fp=fopen(argc1,a)=NULL) printf(nCant open file %s!,argc1); exit(1);ss=argc2;for(i=1; *(ss+i)! 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=
3、0; a0=1; for(j=1; j j+) if(!aj-1) k+; for(i=j;=M;i+=j) ai-1=1;n%dn,k);2请写出下列程序中各 printf 的输出结果:int x=1,y=2,z=3;void funcA(int ,int );void funcB();void main( ) int x=6; y=5; funcA(x+,y);%d,%d,%d,x,y,z);void funcA(int y, int z) register int c=10; int x; y=7; x=c; funcB( );%d,%d,%d,void funcB( ) static
4、int a=2; z=+a; 四、阅读下列程序(共20分)1请写出下列程序中各 printf 的输出结果: 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;n%c,%c,a5,*c); c+=5;%c,%c,*c,*(c+3);%d,%d,*b1,(*b)2); p=b1;,p3,*(p+2);%d,%d,*(b1+1),*(*b+10);2请写出下列程序的输出结果:void sort(cc,m)char *cc ;int m; char *pp; int i,j,k
5、; for(i=1;m-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; char *tt=AmericaAustriaRussiaBritainJapanFrance; sort(tt,5);=5;i+) i5?printf(%s, tti):, tti); 五、完成下列各题(共20分)1请补充下列程序中的空白处,使其能输出下图所示的图形。#define M 10 ; for (i=0; i 6; i+) printf(n); for( j=0;=M/2-i;j+)
6、 printf( for( k=0; k= ; k+) printf(*for (i=0; iM)exit(0); transf(cc,n); i+) printf(nn j+) printf(%c ,ccij);试卷代号: 座位号江苏广播电视大学转业军人学历教育本科2004年春模拟试题C程序设计语言课程模拟试题(二) 2004年春(2) (4) (5) 2设 u、v 均为整型变量,且 u=8、v=3,请计算下列表达式的值:(1)u & !v - 3 (2) u+ / v(3) *&u v(4) +u 3*v(5) u | vint i=4,j=5,k=6,x=0,t=0,*p=&char a
7、=X,b=Y,c=Z;现若分别执行下列各条语句,请写出各语句执行后变量 t 的值:(1) t=k* *p;(2) t=(b-=a) ? i:j;(3) t=! c j (5) t=+b t=5 ;1设在 PC 机上用 Turbo C 执行下列语句,请写出下列各语句的输出结果:(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) print
8、f(“%s”,strupr(“Jiangsu”);2请指出下列两个程序段在什么情况下等价,在什么情况下不等价: int i,sum=0;i); while(i=100) do sum+=i; sum+=i; while(id1=cc0;d2=cc1; tail=head; for(k=2; cck!k+=2) tail-next=(LINK)malloc(sizeof(Node); tail=tail-next;d1=*(cc+k)+1;tail-d2=*(cc+k+1)+1;next=NULL; return(head);void plist(xx) /* 函数定义 */ LINK xx;
9、if(xx!=NULL) if(xx-next!=NULL)%c-,xx-d1); else%cn plist(xx-next); 五、完成下列各题(共20分,每题10分)1、请编写一完整的 C 程序把一个二维数组的行列元素互换,构成一个新的二维数组。设原数组为 4 行 3 列,其中各数据元素由用户输入,要求分别输出原数组和新数组。2、请补充下列程序中的空白处,使其能将 name 数组中的字符串按字典序从大到小输出。 void sort(); int i,n=5; char *name=MS-DOSWindowsUCDOSCCDOSUnix sort(name,n);n;i+) printf(n%s,); if() k=j; if()C程序设计语言课程模拟试题(三)2设 u、v 均为整型变量,且 u=6、v=2,请计算下列表达式的值:(1) u * !v(2) u / +v(3) u - *&(4) u- % v(5) u != vint i=2,j=3,k=4,x=0,t=0,*p=&