全国2007年10月高等教育自学考试 一、单项选择题(本大题共15小题,每小题2分,共30分) 1.可以作为自定义标识符的是( )。 2.正确的变量定义是( )。 3.表达式的值为0的是( )。 4.设int a=1,b=2;,则执行a=b+2,a++,a+b;后a和b的值分别是( )。 5.设int a=2,b=3,c=4;,则表达式a>b&&b<c||b的值是( )。 6.设int a=2,b=3,x,y;,则能正确执行的语句是( )。 7.设char s[10]= 〞abcde〞,t[ ]= 〞12345〞; ,则s和t在内存中分配的字节数分别是( )。 8.设int a=10,*p=&a; ,则执行printf(〝%d\n〞,*p+a);的结果是( )。 9.自定义函数中形式参数的作用域是( )。 10.设int b[ ][5]={1,2,3,4,5,6,7};,则元素b[1][2]的值是( )。 11.对函数而言,叙述正确的是( )。 12.执行下列程序段后输出的结果是( )。 int x,y,z=1; for(x=1,y=-1;x<y;x++,y--)z++; printf(〞%d\n〞,z); 13.设static int a[3]={1,2,3};int*p[ ]={&a[0],&a[1],&a[2]};则与数组元素a[1]等价的是( )。 14.设struct{char name[10];int age;}stu[2]={{ 〞Tom〞,25},{〞Mary〞,26}},*p=stu;则执行语句printf(〞%s%d\n〞,p->name,stu[1].age);后输出结果是( )。 15.设typedef double DB;,则与DB u[5];的等价形式是( )。 二、填空题(本大题共10小题,每小题2分,共20分) 16.一个字符型变量所占内存的字节数是____________________。 17.写出公式 18.执行语句printf(〞%s\n, 〞〞 World\0Wide\0Web〞);后的输出结果是_______________。 19.设int a,b=5;,则执行表达式a=b-2==3后a的值是_________________。 20.设char s[20]= 〞My〞;,则执行strcat(s, 〞Sun! 〞)后s的内容是___________________。 21.设float x=23.65;, 则执行语句printf (〞%d\n〞,(int)(x+0.5));后输出结是_______________。 22.若定义函数char*fun( ){…},则该函数的返回值类型是__________________。 23.设int x=-9,y;,则执行y=x>=0?x:-x;后y的值是_________________。 24.若函数调用语句为f(a,b,f(a+b,a-b,b));,则函数f的参数个数是__________________。 25.设int a=10;,则执行语句a+=a-=a+a;后a 的值是_________________。 三、程序分析题(本大题共4小题,每小题4分,共16分) 26.main() {int a=1,b=2,c=3; if(a<=c) if(b==c)printf(〞a=%d\n〞,a); else printf(〞b=%d\n〞,b); printf(〞c=%d\n〞,c); } 27.int f(int n) {static int m=5; return ++m+n; } main() {int i; for(i=0;i<3;i++)printf(〞%5d〞,f(i)); printf(〞\n〞); } 28.#define SIZE 4 main() {int n[SIZE]={8,3,4,1}; int i, j; for (i=0;i<SIZE;i++) {printf{〞%d〞,n[i]}; for(j=1;j<=n[i];j++)printf(〞*〞); printf(〞\n〞); } } 29.int fm(int a,int b) {if(b==1)return a; else return a+fm(a,b-1); } main() { printf(〞%d\n〞,fm(4,3)); } 四、程序填充题(本大题共3小题,每小题6分,共18分) 30.函数fun 用于计算数组各元素值的平方,主函数调用fun并输出各元素的值。 void fun(int num,int a[ ]) {int i; for (i=0;i<___________;i++)a[i]=a[i]*a[i]; /*第一空*/ } main() { int i,b[5]={1,2,3,4,5}; fun(5,_______); /*第二空*/ for (i=0;i<5;i++)printf(〞%5d〞,________); /*第三空*/ printf(〞\n〞); } 31.从键盘输入一串字符(“#”作为结束标志),将其写入文本文件file.dat 中保存。 #include<stdio.h> #include<stdlib.h> main() {char ch; FILE*fp; if((fp=fopen(〞file.dat〞, 〞______〞))= =NULL) /*第一空*/ {printf(〞Can not open file\n〞);exit(0);} ch=getchar(); while (ch!=’# ’) {fputc(________,fp); /*第二空*/ ch=getchar(); } fclose(________); /*第三空*/ } 32.从键盘输入x的值,根据以下公式计算并输出x和y 的值。
#include<math.h> #include<stdio.h> main() {float x,y; scanf(〞%f〞,______); /*第一空*/ if(x<0)printf(〞input error!\n〞); else {switch ((int)(x/2)) {case 0:y=x;_______; /*第二空*/ case 1: case 2:y=x*x+1;break; case 3: case 4:y=_____________;break; /*第三空*/ default :y=1/(x*x+1); } printf(〞x=%7.2f,y=%10.6f\n〞,x,y); } } 五、程序设计题(本大题共2小题,每小题8分,共16分) 33.从键盘输入100个整数,计算并输出大于等于零的数的平均值(保留小数点后两位)。 34.(1)编写一个计算梯形面积的函数。函数头是:float area(float t,float b,float h) 其中变量t、b和h分别表示梯形的上底、下底和高。 (2)编写主函数从键盘输入梯形的上底、下底和高的值,调用上述函数输出梯形面积 (保留小数点后两位)。 |
| 热门资料下载: |
| < |
| 自考最新热贴: |
【责任编辑:育路编辑 纠错】 |
|
|
| 【育路网版权与免责声明】 | |
| ① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接、转贴或以其他方式复制发表时必须注明"稿件来源:育路网",违者本网将依法追究责任; | |
| ② 本网部分稿件来源于网络,任何单位或个人认为育路网发布的内容可能涉嫌侵犯其合法权益,应该及时向育路网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,育路网在收到上述法律文件后,将会尽快移除被控侵权内容。 | |
热点专题 |