版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言程序设计形成性考核册参考答案作业1选择题1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(A)。AmainB MAINC nameD funtion2C语言原程序文件的缺省扩展名为(A)。AcppB exeC obj3由 C 语言目标文件连接而成的可执行的缺省扩展名为(B)。AcppB exeC obj4程序运行中需要从键盘输入多于一个数据时,各数据之间应使用(D)符号作为分隔符。A空格或逗号B 逗号或回车C 回车或分号D 空格或回车5每个C语言程序的编译错误分为(B)类。AC36设x和y均为逻辑值,则x && y为真的条件是A它们均为真B 其中一个为真C
2、它们均为假D 其中一个为假7设有语句“ int a=12;a+=a*a; ”,则执行结束后,a 的值为( C)。A12B 144C 156D 2888x>0 && x<=10 的相反表达式为( A)。Ax<=0 | X>10B x<=0 && x>10C x<=0 | x<=10D x>0 && x>109字符串“ a+b=12 n”的长度为(B)。AC810在下列符号常量定义中。错误的定义语句格式为C)。A const M1=10;B const int M2=20;C const M
3、3 10D const char mark= '3'11带有随机函数的表达式 rand()%20 的值在(C)区间内,A 119B 120C 019D 020AforB whileC do-whileD switch13. 在switch语句的每个case块中,假定都是以 break语句结束的,则此 switch语句容易被改写为(B)语句AforBifC doD while14. for语句能够被改写为(D)语句。A.复合B . ifC. switchD . while15下面循环语句执行结束后输出的i 值为( B)。for(int i=0;i<n;i+)if(i>
4、n/2)cout<<i<<endl;break;An/2B n/2+1C n/2-1Dn-116.在下面循环w语句中内层循环体S语句的执行次数为(D)。for(int i=0;i<n;i+)for(int j=i;j<n;j+)S;An2B(n+1)/2C n(n-1 )/2D n(n+1 )/217在下面的 do 循环语句中,其循环体被执行的次数为( A )。int i=0;do i+;while(i*i<10);A4B3C5D2、填空题1 . C语言中的每条简单语句以 ; 作为结束符。2. C语言中的每条复合语句以 _作为结束符。3在 C 语言程序
5、的每个程序行后面或单独一行的开始使用注释的标记符为_/4单行或多行注释的结束标记符为_*/ 。_#include_ 标识符开始的预处理命令。_用户_定义的头文件。5在一个 C 程序文件中,若要包含另外一个头文件或程序文件,则应使用以6在 #include 命令中所包含的头文件,可以是系统定义的头文件,也可以是7一个函数定义由 _函数头 和函数体两部分组成。8用于输出表达式的标准输出函数是_printf( )。9当不需要函数返回任何值时,则应使用_void 标识符定义函数类型。10执行“ printf( “%d - %d=%”d,43,18,43 -18); ”语句后得到的输出结果为_43-18
6、=2511. 每个C程序文件在编译时可能出现有警告性错误,其对应的标识符为warning。12. 每个C程序文件在编译时可能出现有致命性错误,其对应的标识符为_error。13. 十进制数25表示成符合C语言规则的十六进制数为 0x19_。14. 在C语言中,转义字符序列 _n_ 表示一个换行符。15. 执行“ printf(“C , ' F'-2); ”语句后得到的输出结果为_D_。16. 已知A ' Z'的 ASCII码为65-90 ,当执行“ int x= ' C +5;"语句所x的值为_72_.17. 假定一个枚举类型的定义为“ enu
7、m RBab,ac=3,ad,aex=ad; ”,则 x的值为4.18char 类型的大小为 _1_个字节。19int 类型的大小为 _4_个字节。20float 类型的大小为 _4_个字节。21十进制数 28 类型为 _int_ 。22十进制数 3.26 类型为 _double_ 。const23 .若需要定义一个符号常量,并且使C语言能够进行类型检查,则应在定义语句的开始使用保留字_24使用 const 语句定义一个符号常量时,则必须对它同时进行_定义类型和赋初值 _。25. 执行“ int x=45,y=13;printf(“d ,x%y); ”语句序列后得到的输出结果为 6_。26.
8、假定x=5,则表达式2+X+的值为_7_。27表达式 (float)25/4的值为 _6.25_ 。28. 表达式 (int)14.6%5 的值为 _4_ 。29. 表达式 x=x+1 表示成增量表达式为 _x+ +_ 。30. 增量表达式 +y 表示成赋值表达式为 _y+=1_。31. 关系表达式 (x!=0) 的等价表达式为 x_ 。32. 假定不允许使用逻辑非操作符,则关系表达式x+y>5 的相反表达式为 _x+y<=5_。33. 假定不允许使用逻辑非操作符,则逻辑表达式a>b | b=5 的相反表达式为 _a<=b && (b>5 | b&
9、lt;5)35若 x=5,y=10 ,则 x<=y 逻辑值为 _true_ 。36. 假定x=5,则执行“ a=(x?10:20);"语句后 a的值为_10_。37. 执行“typedef int DataType;"语句后,在使用 int定义整型变量的地方都可以使用_DataType_来定义整型变量。38在 switch 语句中,每个语句标号所含保留字 case 后面的表达式必须是 _整型_。39.作为语句标号使用的 C保留字case和default只能用于_switch_ 语句的定义体中。40在 switch 语句时,在进行作为条件的表达式求值后,将从某个匹配的标
10、号位置起向下执行,当碰到下一个标号位置时(停止/不停止) _不停止 _执行。41若 do 循环的“尾"为“ while(+i<10) ",并且 i 的初值为 0,同时在循环体不会修改i 的值,由循环体将被重复执行_10_次后正常结束。42当在程序执行到 _break_ 语句时,将结束本层循环语句或switch 语句的执行。43在程序中执行到 _return_ 语句时,将结束所在函数的执行过程,返回到调用该函数的位置。44.在程序执行完 _主(main)_函数调用后,将结束整个程序的执行过程,返回到操作系统或C语句集成开发环境界面窗口。三、写出下列每个程序运行后的输出结
11、果1. #include<stdio.h> void x=5;switch(2*x-3)case 4:printf("%d ",x);case 7:printf("%d ",2*x+1);case 10:printf("%d ",3*x-1);break;default:printf("%s ","defaultn");printf("%sn","switch end.");11 14 switch end.Press any
12、 key to continue2. #include<stdio.h>void main()int i,s=0;for(i=1;i<=6;i+)s+=i*i;printf("s=%dn",s);输出结果为:s=91.Press any key to continue3. #include<stdio.h>void main()int i,s1=0,s2=0;for(i=0;i<10;i+)if(i%2)s1+=i;else s2+=i;printf("%d %dn",s1,s2);25 20.Press any ke
13、y to continue4. #include<stdio.h>void main()int n=10,y=1;while(n-)y+;y+;printf("y=%dn",y);输出结果为:y=21.Press any key to continue5. #include<stdio.h>void main()int f,f1,f2,i;f1=f2=1;printf("%d %d ",f1,f2);for(i=3;i<=10;i+)f=f1+f2;printf("%d ",f);if(i%5=0)pri
14、ntf("n");f2=f;printf("n");输出结果为:1 1 2 3 58 13 21 34 55Press any key to continue6. #include<stdio.h>#include<math.h>void main()int i,n;for(n=2;n<=20;n+)int temp=(int)sqrt(n);/sqrt(n)求出 n 的平方根并取整for(i=2;i<=temp;i+)if(n%i=0)break;if(i>temp)printf("%d "
15、,n);printf("n");Press any key to continue7. #include<stdio.h>#include<math.h>const int M=20;void main()int i,c2,c3,c5;c2=c3=c5=0;for(i=1;i<=M;i+)if(i%2=0)c2+;if(i%3=0)c3+;if(i%5=0)c5+; printf("%d %d %dn",c2,c3,c5);输出结果为:10 6 4Press any key to continue8. #include<
16、;stdio.h>#include<math.h> const int M=20;void main()int i,s;for(i=1,s=0;i<15;i+)if(i%2=0 | i%3=0)continue; printf("%d ",i);s+=i;printf("%dn",s);输出结果为:1 5 7 11 13 37Press any key to continue1.在下面的一维数组定义中,(C)语句有语法错误。Aint a=1,2,3;Bint a10=0;Cint a;D int a5;n2在下面的二维数组定义中,
17、(C)语句是正确的。Aint a5;Bint a5;Cint a3=1,3,5,2;Dint a(10)3假定一个二维数组的定义语句为int a34=3,4,2,8,6;”,则元素a12的值为( C)。ACD84假定一个二维数组的定义语句为int a34=3,4,2,8,6;”,则元素a21的值为( A)。ACD65将两个字符串连接起来组成一个字符串时,选用(C)函数Astrlen()Bstrcap()C strcat()D strcmp()二、填空题1假定一维数组的定义为char * a8;”,则该数组所含元素的个数为2假定一维数组的定义为char * a8;”,则该数组所占存储空间的字节数
18、为323假定二维数组的定义为int a35”,则该数组所占存储空间的字节数为604假定二维数组的定义为char aMN; ”,则该数组所所含元素的个数为5假定二维数组的定义为doubleaMN; ”,则每个数组元素的行下标取值范围在0M-1之间。6假定二维数组的定义为doubleaMN; ”,则每个数组元素的列下标取值范围在0N-1之间。8存储字符a'需要占用存储器的个字节空间。9空字符串的长度为 _0。10存储一个空字符串需要占用 _1_个字节。11字符串” a:数据”的长度为 _11。12用于存储一个长度为 n 的字符串的字符数组的长度至少为 _n+1_13 strcmp 函数用于
19、进行两个字符串之间的 _大小比较 _。14 Strcpy 函数用于把一个字符串 _复制到 _另一个字符数组空间中15一个二维字符数组 a1020 能够存储 _ 10_ 个字符串。1916一个二维字符数组 a1020 能够存储的每个字符串的长度至多为三、写出下列每个程序运行后的输出结果1. #include<stdio.h>void main()int a10=12,39,26,41,55,63,72,40,83,95;int i,i1=0,i2=0;for(i=0;i<10;i+)if(ai%2=1)i1+;else i2+;printf("%d %dn"
20、,i1,i2);输出结果为:6 4Press any key to continue2. #include<stdio.h>#include<string.h>void main()int i;char *a5="student","worker","cadre","soldier","peasant"char *p1,*p2;p1=p2=a0;for(i=0;i<5;i+)if(strcmp(ai,p1)>0)p1=ai;if(strcmp(ai,p2)&l
21、t;0)p2=ai;printf("%s %sn",p1,p2);输出结果为:worker cadrePress any key to continue3. #include<stdio.h>int a10=4,5,6,15,20,13,12,7,8,9;void main()s0=s1=s2=0;for(i=0;i<10;i+)switch(ai%3)case 0:s0+=ai;break;case 1:s1+=ai;break;case 2:s2+=ai;break; printf("%d %d %dn",s0,s1,s2);输出结
22、果为:42 24 33Press any key to continue4. #include<stdio.h>void main()char a="abcdbfbgacd"int i1=0,i2=0,i=0;while(ai)if(ai='a')i1+;if(ai='b')i2+;i+;printf("%d %d %dn",i1,i2,i);输出结果为:2 3 11Press any key to continue5. #include<stdio.h>void main()int a34=1,2
23、,7,8,5,6,10,6,9,12,3,4;int m=a00;int ii=0,jj=0;int i,j;for(i=0;i<3;i+)for(j=0;j<4;j+)if(aij>m)m=aij;ii=i;jj=j; printf("%d %d %dn",ii,jj,aiijj);输出结果为:2 1 12Press any key to continue6. #include<stdio.h>void main()int a,b; for(a=1,b=2;b<50;)printf("%d %d ",a,b); a=
24、a+b; b=a+b; printf("n");输出结果为:1 2 3 5 8 13 21 34Press any key to continue四、写出下列每个函数的功能1. #include<stdio.h>int SA(int a,int b)if(a>b)return 1;else if(a=b)return 0; else return -1;函数功能为:根据实参a大于、等于或小于实参b,返回1,0或-12. #include<stdio.h>int SC(int a,int b,int c)if(a>=b &&
25、 a>=c)return a;if(b>=a && b>=c)return b; return c;函数功能为:返回实参 a、 b 、 c 中的最大数3. double SF(double x,int n) /n为大于等于 0的整数double p=1,s=1;for(i=1;i<=n;i+)p*=x; s+=p/(i+1); return s;函数功能为:4. #include<math.h>int SC(int x)int a=(int)sqrt(x);int i=2;while(i<=a)if(x%i=0)break; i+; i
26、f(i<=0)return 0;else return 1;函数功能为:判断一个整数是否是素数5. #include<stdio.h>void trans(int x)char a10;int i=0,rem; dorem=x%16;x=x/16;if(rem<10)ai=48+rem;/'0' 字符的 ASCII 码为 48 else ai=65+rem; /'A' 字符的 ASCII 码为 55 i+;while(x!=0);while(i>0)printf("%c",a-i); printf("n
27、");函数功能为:将一个整数化成十六进制数五、根据下列每个题目要求编写程序1. 编写一个函数,函数头格式为“ void fun4(char *a , int b)”,分别求出由字符指针a 所指向的字符串中包含的每种十进制数字出现的次数,把统计结果保存在数组b 的相应元素。#include<stdio.h>void fun4(char* a,int b)doif(*a>='0' && *a<='9')b*a-48+;while(*a+);2.编写一个函数,函数头格式为“ double Mean(double aMN
28、 , int m , int n),要求返回二维数组amn 中所有元素的平均值,假定在计算过程是采用变量 v 存放平均值。#include<stdio.h>const int M=2,N=3;double Mean(double aMN, int m,int n )double v=0;for(int i=0;i<m;i+)for(int j=0;j<n;j+)v+=aij;return v/(m*n);3. 编写一个递归函数“ int FF(int a , int n) ”,求出数组 a 中所有元素 n 个元素之积并返回。 #include<stdio.h>
29、;int FF(int a , int n)int mul=1;if(n=1)mul*=a0;else mul=an-1*FF(a,n-1);return mul;4. 编写一个主函数,利用while循环,求出并显示满足不等式1+1/2+1/3+1/n>5的最小n值#include<stdio.h>void main()double sum=0;int n=1;while(true)if(sum + 1/(double)n > 5)break;elsesum += 1/(double)n;n+;printf("%d, %lfn",n,sum);do
30、循环编程。5. 编写一个主函数,求满足不等式22+42+n2<1000的最大n值,假定分别用i和s为取偶数值和累加值的变量,并限定使用#include<stdio.h>void main()dos+=i*i;if(s+(i+2)*(i+2)>=1000)break;else i+=2;while(true);printf("i=%d,s=%d",i,s);6. 编写一个主函数,计算并输出 n 的值,其中 n 值由键盘输入 #include<stdio.h>void main()int s=0,n;printf(" 请输入 n 的
31、值: ");scanf("%d",&n);for(int i=1;i<=n;i+)s+=i*i;printf("n=%d,s=%d",n,s);C语言程序设计形成性考核册参考答案作业三选择题1.在下面的(C)函数声明语句存在语法错误。AAA(int a,int b);B AA(int ,int)C AA(int a;int b)D AA(int a,int)2在下面的(C)不能作为函数的返回类型。AvoidBintCnewD long3下面正确的函数原型语句是(B)。Aint Function(void a);Bvoid Func
32、tion(int);Cint Function(a);Dvoid int(double a);4函数调用 func(exp1,exp2),exp3*exp4-exp5)中所含实参的个数为(B)个。AC4D55下面的标识符中,(C)是文件级作用域。A函数形参B 语句标号C 外部静态类标识符D 自动类标识符6下面的标识符中,(B)具有全局级作用域。A函数形参B 全局变量C 内部静态类标识符D 自动变量符7假定p 是一个指向float 型数据的指针,则 p+1 所指数据的地址比p 所指数据的地址大( C )字节。AC48假定为一个字符数组名,则 a8 的地址比该数组的首地址大( B )个字节。AC
33、16D 329假定为一个数组名,则下面的( B )表示有错误。10用 calloc 函数创建具有 10 个整型元素的一维数组的正确语句是(A int *p=calloc(10,2);B int *p=callo(10;C int *p=calloc(10,4);D int *p=malloc(10);11假定变量 m 定义为“ int m=7; ”,则定义 p 的正确语句为( B )。A int p=&m;B int *p=&m;C int &p=*m;Dint *p=m;12假定 k 是一个 double类型的变量,则定义指向 k 的变量 p 的正确语句为B )。A
34、double p=&k;B double *p=&k;C double &p=*k;D char*p= ”Thank you!13假定一条定义语句为int a10,x,*pa=a;”,若要把数组a 中下标为3 的元素赋值给 x ,则不正确的语句为(D )。Ax=pa3;Bx=*(a+3);C a=a3;Dx=*pa+3;14假定有定义int b10;int *pb;”,则不正确的赋值语句为()。Apb=b;B pb=&b0;C pb=b+2;D pb=b5;15假定指针变量p 定义为int *p=new int(100);”,要释放p 所指向的动态内存,应使用语
35、句( D )。Adeletep;Bdelete *p;C delete &p;D delete p;16假定指针变量p 定义为int *p=calloc(30,sizeof(int);”,要释放p 所指向的动态内存,应使用语句( D )。Adeletep;Bdeldete(p);Cfreep;D free(p);填空题1. 在C语言中,一个函数由函数头和 函数体组成。2在函数外定义的变量称为全局变量,若没有被初始化则系统隐含对它所赋的初值为_0。3.如果一个函数只允许同一程序文件中的函数调用,则应在访函数定义前加上的C保留字为为 static4如果一个函数直接或间接地调用自身,这样的调
36、用被称为_递归 调用5调用系统函数时,要先使用#include 命令包含该函数的原型语句所在_头_文件。6.函数形参的作用域是该函数的_内部 _。7.假定 p 所指对象的值为25,p+1 所指对象的值为46,8.假定 p 所指对象的值为25,p+1 所指对象的值为46,9.假定 p 所指对象的值为25,p+1 所指对象的值为46,10.假定 a 是一个指针数组,则a+1 所指对象的地址比则 *p+ 的值为 _25 。则 *+p 的值为 _46 。则执行“ *(p+); ”语句后,p所指对象的值为 _46地址大 _4_字节。11若要把一个整型指针 p 转换为字符指针,则采用的强制转换表达式为 _
37、(char*)p12假定一个数据对象为int* 类型,则指向该对象的指针类型为_int* 。13. 假定p是一个指向整数对象的指针,则用_&p_表示指针变量p的地址。14. 若p指向x,则*p与x的等价的。15. NULL是一个符号常量,通常作为空指针值,它值为 _ '0' (ASCII码0)_。三、写出下列每个程序运行后的输出结果1. #include<stdio.h>void SB(char ch)switch (ch) case 'A':case 'a': printf("WW");break;cas
38、e 'B':case 'b':printf("GG");break;case 'C':case 'c':printf("PP");break;default:printf("BB");break;void main()char a1='b',a2='C',a3='f'SB(a1);SB(a2); SB(a3);SB('A');printf("n");输出结果为:GGPPBBWWPress
39、any key to continue2. #include<stdio.h>#include<stdlib.h>double SD(int a,int b,char op)double x;switch(op)case '+':x=a+b;break;case '-':x=a-b;break;case '*':x=a*b;break;case '/':if(b)x=(double)a/b;else exit(1);break;default:(" 运算符错! n");exit(1);r
40、eturn x;void main()int x=20,y=8;printf("%3.2lf ",SD(x,y,'-');printf("%3.2lf ",SD(x,y,'*');printf("%3.2lf ",SD(x,y,'/');输出结果为:12.00 160.00 2.50Press any key to continue3. #include<stdio.h>void WF(int x,int y)x=x+y;y=x+y;printf("subs:x,y
41、=%d,%dn",x,y);void main()int x=18,y=23;printf("main:x,y=%d,%dn",x,y);WF(x,y);x=2*x;printf("main:x,y=%d,%dn",x,y);输出结果为:main:x,y=18,23subs:x,y=41,64main:x,y=36,23Press any key to continue4. #include<stdio.h>#include<string.h>void fun(char ss);void main()char s15=&
42、quot;567891234"fun(s);printf("%sn",s);void fun(char ss)int i,n=strlen(ss);for(i=0;i<n/2;i+)char c=ssi;ssi=ssn-1-i; ssn-1-i=c;输出结果为:432198765Press any key to continue5. #include<stdio.h>void InsertSort(int a,int n)int i,j,x;for(i=1;i<n;i+)/ 进行 n 次循环x=ai;if(x>aj)aj+1=aj;e
43、lse break;aj+1=x;void main()int i;int a6=20,15,32,47,36,28;InsertSort(a,6);for(i=0;i<6;i+)printf("%d ",ai); printf("n");输出结果为:47 36 32 28 20 15Press any key to continue6. #include<stdio.h>void main()int a8=3,5,7,9,11,13,15,17;int i,*p=a; for(i=0;i<8;i+);printf("%
44、5d ",*p+);if( (i+1)%4=0 )printf("n");输出结果为:3 5 7 9 11 13 15 17 Press any key to continue7. #include<stdio.h>int LA(int *a,int n)int i,s=0; for(i=0;i<n;i+)s+=ai;return s;void main()int a=5,10,15,20,25,30;int b=LA(a,4);int c=LA(a+2,3);printf("%d %dn",b,c);输出结果为:50 60P
45、ress any key to continue8. #include<stdio.h>int LB(int *a,int n)int i,s=1;for(i=0;i<n;i+)s*=*a+;return s;void main()int a=1,2,3,4,2,4,5,2;int b=LB(a,4)+LB(&a3,4);printf("b=%dn",b);输出结果为:b=184Press any key to continue四、写出下列每个函数的功能1. #include<stdio.h>int WB(int a,int n,int
46、 x)for(int i=0;i<n;i+)if(ai=x)return 1;return 0;函数功能为:根据整型数组元素中是否能找到整数X,返回1或02. #include<stdio.h>int WC(int a,int n,int k)int c=0;for(int i=0;i<n;i+)if(ai>=k)c+;return c;函数功能为:返回数组中前n个其值大于等于k的元素之和3. #include<stdio.h> #include<stdlib.h> #include<time.h> const int N=10
47、;int ff(int x,int y)int z;printf("%d + %d = ",x,y);scanf("%d",&z);if(x+y=z)return 1;else return 0;void main()int i,a,b,c=0;srand(time(0); / 初始化随机数系列for(i=0;i<N;i+)a=rand()%20+1; /rand90 函数产生 0-32767 之间的一个随机数b=rand()%20+1;c+=ff(a,b);printf(" 得分: %dn",c*10);函数功能为:函
48、数 ff 让两个数相加,要求输入其和,判断结果是否正确。在主函数中用随机函数产生两个 20以内的随机整数,通过 10 次调用这个函数,算对一次得 10分,计算所得分4. int fun6(int m,int n,int b=2)if(m<b && n<b)return m*n;else if(m%b=0 && n%b=0)return b*fun6(m/b,n/b,b);else return fun6(m,n,+b);函数功能为:此函数带有一个默认参数,若使用默认值,则通过递归调用,返回前2 参数的最小公倍数;不使用默认值时,若最后一个参数不小于前
49、 2 个参数,则返回前 2 参数之乘积; 否则,通过递归调用,返回前 2 参数最小公倍数的 n 倍数。5. #include<stdio.h>#include<stdlib.h>void LI(int n)int * a=(int *) malloc(n*sizeof(int);int i;for(i=0;i<n;i+)scanf("%d",a+i);for(i=n-1;i>=0;i-)printf("%d ",*(a+i); printf("n");free(a);函数功能为: 将从键盘输入的 n
50、 个整数逆序输出6. #in cludevstdio.h>int LK(double a,int n)double s=0;i nt i,m=0;for(i=0;ivn;i+)s+二ai;s/二n;for(i=0;i< n;i+)if(ai>=s)m+;return m;函数功能为:求不小于数组元素之平均值的各元素之和(前 n个)应加入此4字,否则D亦对必须强制类型转换!否则提示 cann ot convert from 'void *' to 'intC语言程序设计形成性考核册参考答案作业四选择题1. 假定有“ struct BOOKchar tit
51、le40;float price;struct BOOK *book;",则不正确的语句为(A)。A. struct BOOKx二malloc(book);B . struct BOOK= “C+ Programming”,27.0;C . struct BOOKx二malloc(sizeof(BOOK);D . structBOOK *x二&book;2. 假定有“ struct BOOKchar title40;float price; book;",则正确的语句为(B)。A. struct BOOK x二&book;B. struct BOOK *x=
52、&book;D . struct BOOK *x=BOOK;C. struct BOOK x=calloc(BOOK);3. 表示文件结束的符号常量为(C)A. eofB. EofC. EOFD. feof4. C语言中系统函数fopen()是(D 一个数据文件的函数。A.读取B .写入D .打开5从一个数据文件中读入以换行符结束的一行字符串的函数为(B)。Agets()B fgets()C getc()Dfgetc()6向一个二进制文件写入信息的函数fwrite()带有(D)参数。A1B2C3D4填空题1假定一个结构类型的定义为“struct Aint a,b;A*c;”,则该类型的
53、大小为_12字节。2假定一个结构类型的定义为“struct Bint a5,char *b;”,则该类型的大小为_24字节。3假定一个结构类型的定义为“struct Dint a;unionint b;double c;struct D* d2;”,则该类型的大小为_20 _字节4假定要动态分配一个类型为 struct Worker 的具有 n 个元素的数组,并由 r 指向这个动态数组,则使用语句的表达式为 struct Worker r=_(Worker*)malloc(n*sizeof(Worker); 。5 假定要访问一个结构x中的由a指针成员所指向的对象,则表示方法为_x.(*a).6
54、假定要访问一个结构指针 p 所指向对象中的 b 指针成员所指的对象,则表示方法为 *(p->b)7与结构成员访问表达式 (*fp).score 等价的表达式是 _fp->score 。三、写出下列每个程序运行后的输出结果1. #include<stdio.h> struct Workerchar name15; / 姓名int age;/ 年龄;void main()float pay; /工资struct Worker x="wanghua",52,23.50;struct Worker y,*p;y=x;p=&x;printf("%s %d %6.2fn",,y.age,y.pay);printf("%s %d %6.2fn&q
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医学影像云与DRGs支付改革结合
- 《冲压与塑料成型》-项目六
- 二次根式 课件 2025-2026学年人教版数学八年级下册
- 医学影像AI模型的小样本验证方法
- 在XX镇“奋勇争先突破年”征地拆迁攻坚行动动员会上的讲话
- 在XX镇2026年节前安全防范工作部署会上的讲话
- 医学伦理教育评价术语与Kirkpatrick应用
- IT机房搬迁实施方案
- 齿轮厂成品存储防护制度
- 河南大学人工智能专业介绍
- 2025年高考英语复习知识清单(全国)专题45 应用文写作11组34个满分句式68个真题例句 (讲案)解析版
- 2023《广东省建设工程消防设计审查疑难问题解析》
- 《智能制造单元集成应用》课件-智能制造单元概述
- 中学-学年第二学期教科室工作计划
- 2024年贵州省公务员考试《行测》真题及答案解析
- DB34T 3267-2024 公路养护工程设计文件编制规范
- 英语阅读理解50篇
- 催化剂导论课件
- 科技研发中心物业管理服务方案
- FZ∕T 74001-2020 纺织品 针织运动护具
- 全自动灯检机校准规范
评论
0/150
提交评论