欲穷千里目,更上一层楼!
y2=p2( p1(2.0) );
printf(\}
程序运行后的输出结果是A
A)8, 16 B)8, 8 C)16, 16 D)4, 8
第五节 函数的递归调用与对C语言的补充说明 习题
1.有以下程序: fun(int x) {
int p;
if(x==0||x==1) return(3); p=x-fun(x-2); return p; }
main() {
printf(\}
执行后的输出结果是 C A)7 B)3 C)2 D)0 2.有以下程序 int fun(int n) {
if(n==1) return 1; else
return (n+fun(n-1)); }
main() { int x;
scanf(\ }
程序执行时,给变量x输入10,程序的输出结果是 A
A)55 B) 54 C) 65 3.有以下程序 #include
int f1,f2;
if(n==1||n==2) *p=1;
26
D) 45 欲穷千里目,更上一层楼!
else {
fun(n-1,&f1); fun(n-2,&f2); *p=f1+f2; } }
main() { int s;
fun(3,&s); printf(\}
程序的运行结果是 A
A)2 B)3 C)4 4.以下叙述中正确的是( )。B
A)C语言程序将从源程序中第一个函数开始执行。
B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行。C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束。D)main可作为用户标识符,用以命名任意一个函数作为主函数。
第十一章 结构体与共用体
第一节 结构体 习题
1.有以下程序段
typedef struct node { int data; struct node *next; } *NODE; NODE p;
以下叙述正确的是 C
A)p是指向struct node结构变量的指针的指针。 B)NODE p;语句出错。
C)p是指向struct node结构变量的指针。 D)p是struct node结构变量。
2.以下结构体类型说明和变量定义中正确的是 A A)typedef struct B)struct REC {int n; char c;}REC; {int n; char c;}; REC t1,t2; REC t1,t2; C)typedef struct REC ; D)struct
{int n=0; char c='A';}t1,t2; {int n;char c;}REC t1,t2; 3.有以下程序 #include
{int x;struct tt *y;} *p;
27
D)5 欲穷千里目,更上一层楼!
struct tt a[4]={20,a+1,15,a+2,30,a+3,17,a}; main() { int i; p=a;
for(i=1;i<=2;i++) {
printf(\ p=p->y; } }
程序的运行结果是 D
A)20,30, B)30,17, C)15,30, D)20,15, 4.有以程序
#include
typedef struct { char name[9]; char sex; float score[2]; } STU; void f( STU a) {
STU b={\ strcpy(a.name,b.name); a.sex=b.sex;
for(i=0;i<2;i++) a.score[i]=b.score[i]; }
main() {
STU c={\ f(c);
printf(\ }
程序的运行结果是 A A)Qian,p,95,92 B)Qian,m,85,90 C)Zhao,f,95,92 D)Zhao,m,85,90
第二节 共用体 习题
1.若有以下定义和语句 union data
{int i; char c;float f;} x; int y;
则以下语句正确的是B
A)x=10.5 B)x.c=101 C)y=x; D)printf(\2.设有以下定义 union data
{ int d1; float d2; }demo;
28
欲穷千里目,更上一层楼!
则下面叙述中错误的是D
A)变量demo与成员d2所占的内存字节数相同。 B)变量demo中各成员的地址相同。 C)变量demo和各成员的地址相同。
D)若给demo.d1赋99后, demo.d2中的值是99.0。 3.若有以下说明和定义 union dt {
int a; char b; double c; }data;
以下叙述中错误的是C
A)data的每个成员起始地址都相同。
B)变量data所占内存字节数与成员c所占字节数相等。
C)程序段:data.a=5;printf(\输出结果为5.000000。 D)data可以作为函数的实参。
第三节 链 表 习题
1.假定已建立以下链表结构,且指针p和q已指向如图所示的结点:
data nexthead apbqc 则以下选项中可将q所指结点从链表中删除并释放该结点的语句组是( )D A)(*p).next=(*q).next; free(p); B)p=q->next; free(q); C)p=q; free(q); D)p->next=q->next; free(q);
第十二章 数组与指针
第一节 一维数组与指针 习题
1.有以下程序 #include
++p;
printf(\}
main() {
char *a[]={\fun(a); }
程序的运行结果是A
29
欲穷千里目,更上一层楼!
A)Afternoon B)fternoon C)Morning D)orning 2.有以下程序 删除该题 #include
void fun(char *a,char *b) {
while(*a=='*') a++;
while(*b=*a) {b++;a++;} }
main() {
char *s=”****a*b****”,t[80]; fun(s,t); puts(t); }
程序的运行结果是
A)*****a*b B)a*b C)a*b**** D)ab 3.有以下程序 #include
char *t; int i,j; for(i=0;i if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]=s[j];s[j]=t;} } main() { char *ss[]={\ fun(ss,5); printf(\,%s\\n\ } 程序的运行结果是 A A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc 第二节 二维数组与指针 习题 1.有以下定义和语句 int a[3][2]={1,2,3,4,5,6,},*p[3]; p[0]=a[1]; 则*(p[0]+1)所代表的数组元素是 C A) a[0][1] B) a[1][0] C) a[1][1] D) a[1][2] 2.有以下程序 main() 30 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库计算机C语言复习资料及课后题解(6)在线全文阅读。
相关推荐: