1、7. 以下所列语句中,合法的语句是_B_。A. a=1,b=2 B.+a; C.a=a+1=5; D.y=int a ;8. 退出一个循环语句(不终止函数的执行)的有效措施是 A 。A.用break语句 B.用continue语句 C.用return语句 D.用exit语句9. 程序段A 的功能是将变量 u 、s中的最大值赋给变量t 。 A. if(us) t=u; else u=s; B. t=u; if(t ) t=s;C.s) t=s;else t=u;D . if(u ) 10.执行以下语句后w的值为( B )。 int a = 5 , b = 4 , x =3 , y =2 , z
2、= 1, w; w=( a b )? ( x z ):( y z ) ; A. 0 B. 1 C. 3 D. 411.若有定义int a4=1,2,3,4;则aaa0的值是 C 。 A. 1 B. 2 C.3 D. 412. 若有定义int a5,*p=a;则对a数组元素地址的正确引用是( DAP+5 B*a+1 C&a+1 &a0 13. 在C语言中,为了结束while语句构成的循环,while后一对圆括号中表达式的值应该为(A )。A.0 B.1 C.true D.非014. 字符串指针变量中存入的是_A_。 A字符串的首地址 B. 字符串 C第一个字符 D. 字符串变量。15.若有定义语
3、句int a5,*p=a; 则*(p+1)表示_D_. A. 元素a0的地址B. 元素a0的值 C. 元素a1的地址D. 元素a1的值二、填空题:(每空1分,共20分) 1. C语言从源程序的书写到上机运行输出结果要经过_编辑,编译,连接,执行_四个步骤。2.有变量说明int a=2;, 则表达式a1的运算结果和a的值分别是 0 和 2 。3. C语言中普通整型变量的类型说明符为int ,char型取值范围是0-255 。4. C语言程序是由_函数_构成的,C语言的函数是由_语句_构成的。5. 取内容运算符为 * ,取地址运算符为 & 运算符。6. C语句int a=10,*p=&a;则*p+
4、1的值是 11 。7. C语言规定: C语句必须以;结束。8. 有语句int a=10,b=4;则表达式 ab 的结果为 14 。9. C语言可以用来实现循环的结构化语句有 for 、 while 和do while。10. 若自定义函数要求返回一个值,则应在该函数体中有一条 return 语句,若要求不返回一个值,则应在该函数说明时加一个类型说明符 void 。11. 现在的计算机都采用二进制的存储形式,称为 数字 计算机。12.若有定义:double x35;则x数组中行下标的下限为 0 ,列下标的上限为 4 13.设有数组定义:char array=”China”;则数组占_6_字节存贮
5、空间。三、程序阅读题:写出以下各程序的运行结果:(每题3分,共30分)1. #include “stdio.h” main( ) int a=1,3,5,7,9; int y=1,x,*p; p=&a1; for(x=0;x3;x+) y + =*(p+x); printf(“%dn”,y); 162. main() int a33,*p,i;a00;a33=0,1,2,3,4,5,6,7,8;for(i=0;i1); printf(“a=%-5dn”,a); a=5- 5. main() int x,y; for (y=1,x=1;y=10) break; if (x%2= =1) x+=5
6、;continue; x-=3; printf (“%d”,y); 66. #include stdio.h int x=3; switch(x) case 1: case 2:printf(3n); case 3:x=3n case 4: case 5:x default:x unknown x=3,x3,x unknow7main() int w=800,*p=&w; int x6=1,2,3,4,5,6,*q=x; printf(“w=%dn”,w); 800 printf(“*p=%dn”,*p); printf(“*q=%dn”,*q); 1 printf(“x0=%dn”,x0);
7、 1 8 main( ) int x,y,z=2; x=z+; y=+z; printf(“x=%d,y=%d,z=%d”,x,y,z); 2,4,4 9#include int a=5,b=4,c=6,d;d=%dn,d=ab?(ac?a:c):(b); 6 10#include “stdio.h” main( )int k,j;int a=3,-5,18,27,37,23,69,82,52,-15; for(k=0,j=k;kaj)j=k; printf(“m=%d,j=%dn”,aj,j); 82,7四、程序填空题:(每空2分,共10分)1.下面程序的功能是求0100内的偶数和。请补充完
8、整。#include _int i,sum_;_for(i=0,sum=0; i=100;) sum+=i; _i+=2_ _;_ %dn,sum);2.下面程序的功能是输入三个整数,计算其平均值。 int x,y,z ; float average ; printf(Enter 3 int numbers:n ); scanf( “%d%d%d”,&x,&y,&z ); average = (x+y+z)/3.0 ;n average =%f , average);五、编程:(共25分) 1.编程实现:从键盘输入自然数n,求n!。(7分)int a,n; long p=1; printf(“
9、input n:”); scanf(“%d”,&n);for(a=1;amax) max=scorei;if(scoreimin)min=scorei;ave=(sum-max-min)/8;printf(“%5.1f,%5.1f,%5.1fn”,ave,max,min);3已知分段函数如下编程计算对键盘输入的任意x,求相应y的值。(8分)#include”math.h”float x,y; printf(“input x: scanf(“%f”,&x);if(x=4.0)y=fabs(x+2.3);else if(x=7.0) y=x*x*x; else if(x=12.0) y=11.5-
10、x; else y=x;printf(“x=%5.2f,y=%5.2fn”,x,y);编程练习:1. 编程求3100之间的全部素数,并统计素数个数。# include “math.h”int m,i,k;for(m=3;m=100:m=m+2)k=(int)sqrt(m);for(i=2;=k;if(m%i=0) break;if(i=k+1) printf(“%d is a prime number.n”,m); 2. 编程计算:s=1*1+3*3+5*5+7*7+(2n-1)*( 2n-1)(n从键盘上输入)。long s=0;int i,n,p; printf(“input n(09):p=n; for(i=1;s+=p;p=p*10+n;printf(“s=%d+%d%d+%d%d%d+=%ldn”,n,n,n,n,n,n,n, s);3. 编程实现:给一个3行3列的二维数组输入并输出数据。4. 编程实现:输入一个10以内的自然数a,计算sum=a+aa+aaa+aaaa+(aa)的值。如sum=5+55+555+5555+55555(此时a=5)。5. 编程求3*3二维数组中最大元素及其所在的行、列位置。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1