结构体及文件习题答案

结构体及文件习题答案
结构体及文件习题答案

结构体及文件习题答案

1. 有以下程序

struct tt

{int x;struct tt *y;} *p;

struct tt a[4]={1,a+1,2,a+2,3,a+3,4,a};

main()

{ int i;

p=a;

for(i=1;i<=3;i++) {printf("%d,",p->x); p=p->y;}

}程序的运行结果是( ) 1,2,3,

2. 有以下程序

#include

#include

typedef struct{ char name[9];char sex; float score[2]; } STU; STU f(STU a)

{ STU b={"Zhao",'m',85.0,90.0}; int i;

strcpy(https://www.360docs.net/doc/dd1935692.html,,https://www.360docs.net/doc/dd1935692.html,);

a. sex=

b.sex;

for(i=0;i<2;i++) a.score[i]=b.score[i];

return a;

}

main()

{STU c={"Qian",'f',95.0,92.0},d;

d=f(c);

printf("%s,%c,%2.0f,%2.0f\n",https://www.360docs.net/doc/dd1935692.html,,d.sex,d.score[0],d.score[1]); }

程序的运行结果是( ) Zhao,m,85.0,90.0

3. 有以下程序

#include

main()

{FILE *fp; int a[8]={2,4,6,8},i;

fp=fopen("d2.dat","wb");

fwrite(a,sizeof(int),4,fp);

fwrite(a,sizeof(int),4,fp);

fclose(fp);

fp=fopen("d2.dat","rb");

fread(a,sizeof(int),8,fp);

fclose(fp);

for(i=0;i<8;i++) printf("%3d",a[i]);

}

程序的运行结果是( ) 2 4 6 8 2 4 6 8

4. 有以下程序,其功能是:以二进制“写”方式打开文件d1.dat,写入1~100这100个整数后关闭文件。再以二进制“读”方式打开文件d1.dat,将这100个整数读入另一个数组b中,并打印输出,请填空。

#include

main()

{ FILE *fp;

int i,a[100],b[100];

fp=fopen("d1.dat","wb");

for(i=0;i<100;i++) a[i]=i+1;

fwrite(a,sizeof(int),100,fp);

fclose(fp);

fp=fopen("d1.dat",【20】); “rb”

fread(b,sizeof(int),100,fp);

fclose(fp);

for(i=0;i<100;i++) printf("%d\n",b[i]);

}

5. 有以下程序

#include

main()

{ FILE *pf;

char *s1="China",*s2="Beijing";

pf=fopen("abc.dat","wb+");

fwrite(s2,7,l,pf);

rewind(pf); /*文件位置指针回到文件开头*/

fwrite(s1,5,1,pf);

fclose(pf);

}

以上程序执行后abc.dat文件的内容是()。Chinang

相关主题
相关文档
最新文档