(45)有以下程序
point(char *p)
{
p+=3;
}
main()
{ char b[4]={’a’,’b’,’c’,’d’},*p=b;
point(p); printf("%c\n",*p);
}
程序运行后的输出结果是 A
A)a
B)b
C)c
D)d
(46)程序中若有如下的说明和定义语句
char fun(char *);
main()
{
char *s="one",a[5]={0},(*f1)()=fun,ch;
……
}
以下选项中对函数fun的正确调用语句是 A
A)(*f1)(a);
B)*f1(*s);
C)fun(&a);
D)ch=*f1(s)
(47)有以下结构体说明和变量定义,如图所示,指针pqr分别指向此链表中三个连续结点。
struct node
{
int data;
struct node *next;
} *p,*q,*r;
现要将q所指结点从链表中删除,同时保持链表的连续,以下不能完成指定操作的语句是 D
A)p->next=q->next;
B)p->next=p->next->next;
C)p->next=r;
D)p=q->next;
(48)以下对结构体类型变量td的定义中,错误的是 C
A)typedef struct aa
{
int n;
float m;
}AA;
AA td;
B)struct aa
{
int n;
float m;
} td;
struct aa td;
C)struct
{
int n;
float m;
}aa;
struct aa td;
D)struct
{
int n;
float m;
}td;
(49)以下与函数fseek(fp,0L,SEEK_SET)有相同作用的是 D
A)feof(fp)
B)ftell(fp)
C)fgetc(fp)
D)rewind(fp)
(50)有以下程序
#include "stdio.h"
void WriteStr(char *fn,char *str)
{
FILE *fp;
fp=fopen(fn,"W");
fputs(str,fp);
fclose(fp);
}
main()
{
WriteStr("t1.dat","start");
WriteStr("t1.dat","end");
}
程序运行后,文件t1.dat中的内容是 B
A)start
B)end
C)startend
D)endrt
责任编辑:cyth