C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx

上传人:b****3 文档编号:14091413 上传时间:2022-10-18 格式:DOCX 页数:16 大小:19.42KB
下载 相关 举报
C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx_第1页
第1页 / 共16页
C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx_第2页
第2页 / 共16页
C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx_第3页
第3页 / 共16页
C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx_第4页
第4页 / 共16页
C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx

《C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。

C语言程序设计第3版何钦铭 颜 晖 第9章结构Word文档格式.docx

intnum;

charname[10];

intcomputer,english,math;

doubleaverage;

intmain(void)

{

inti,n;

doublemath_sum,english_sum,computer_sum;

structstudents1;

printf("

Inputn:

"

);

scanf("

%d"

&

n);

Inputthestudent'

snumber,nameandcoursescores:

\n"

math_sum=english_sum=computer_sum=0;

for(i=1;

i<

=n;

i++){

No.%d:

i);

%d%s%d%d%d"

&

s1.num,s1.name,&

s1.math,&

s1.english,&

puter);

math_sum+=s1.math;

english_sum+=s1.english;

computer_sum+=puter;

}

math_ave:

%.2lf\nenglish_ave:

%.2lf\ncomputer_ave:

%.2lf\n"

math_sum/n,english_sum/n,computer_sum/n);

return0;

}

【练习9-4】定义一个包含5名学生信息的结构数组,并对该结构数组的所有元素进行初始化。

charname[10];

intcomputer,english,math;

structstudents[5]={{30101,"

张一"

69,75,84},{30132,"

李二"

80,85,90},{40231,"

王三"

71,91,74},{40754,"

赵四"

65,76,87},{50426,"

刘五"

81,92,73}};

【练习9-5】参考例9-2,输入并保存10个学生的成绩信息,分别输出平均成绩最高和最低的学生信息。

{

inti,n,max,min;

structstudentstudents[50];

printf("

scanf("

for(i=0;

n;

printf("

InputtheinfoofNo.%d:

i+1);

number:

scanf("

students[i].num);

name:

%s"

students[i].name);

mathscore:

students[i].math);

englishscore:

students[i].english);

computerscore:

students[i].computer);

students[i].average=(students[i].math+students[i].english+students[i].computer)/3.0;

}

max=min=0;

for(i=1;

if(students[max].average<

students[i].average)max=i;

if(students[min].average>

students[i].average)min=i;

max_average_infortmation:

printf("

%d,name:

%s,math:

%d,english:

%d,computer:

%d,average:

students[max].num,students[max].name,students[max].math,students[max].english,students[max].computer,students[max].average);

min_average_information:

students[min].num,students[min].name,students[min].math,students[min].english,students[min].computer,students[min].average);

return0;

【练习9-6】定义一个structstudent类型的结构指针,用其实现一个学生信息的输入和输出。

structstudent{/*学生信息结构定义*/

intnum;

/*学号*/

/*姓名*/

intcomputer,english,math;

/*三门课程成绩*/

doubleaverage;

/*个人平均成绩*/

}s,*p;

p=&

s;

scanf("

p->

num,p->

name,&

math,&

english,&

computer);

【练习9-7】改写例9-3中的函数update_score(),将第一个形参改为结构数组形式。

intupdate_score(structstudents[],intn,intnum,intcourse,intscore)

inti,pos;

for(i=0;

i++)

if(s[i].num==num)

break;

if(i<

n){

switch(course){

case1:

s[i].math=score;

case2:

s[i].english=score;

case3:

s[i].computer=score;

pos=i;

else

pos=-1;

returnpos;

习题9

一、选择题

1.下面定义结构变量的语句中错误的是D。

A.structstudent{intnum;

charname[20];

}s;

B.struct{intnum;

C.structstudent{intnum;

};

structstudents;

D.structstudent{intnum;

students;

2.如果有定义语句:

struct{

intx,y;

}s[2]={{1,3},{2,7}};

则语句:

printf(“%d\n”,s[0].y/s[1].x);

输出结果为B。

A.0B.1C.2D.3

3.根据下面的定义,能打印出字母M的语句是C。

structperson{

intage;

}c[10]={“John”,17,“Paul”,19,“Mary”,18,“Adam”,16};

A.printf(“%c”,c[3].name);

B.printf(“%c”,c[3].name[1]);

C.printf(“%c”,c[2].name[0]);

D.printf(“%c”,c[2].name[1]);

4.设有如下定义,则对data中的a成员的正确引用是B。

structsk{inta;

floatb;

}data,*p=&

data;

A.(*p).data.aB.(*p).a

C.p->

data.aD.p.data.a

5.对于以下结构定义,(*p)->

str++中的++加在D。

struct{intlen;

char*str;

}*p;

A.指针str上B.指针p上

C.str指向的内容上D.语法错误

二、填空题

1.“.”称为成员_(分量)_运算符,“->

”称为_指向_运算符。

2.完成下列程序,该程序计算10名学生的平均成绩。

#include<

string.h>

structstudent{

charname[20];

intscore;

structstudentstud[10];

inti,sum=0;

for(i=0;

i<

10;

i++){

%d%s%d"

&stud[i].num,_stud[i].name_,&stud[i].score);

sum+=stud[i].score;

aver=%d\n"

sum/10);

return0;

3.下列程序读入时间数值,将其加1秒后输出,时间格式为:

hh:

mm:

ss,即小时:

分钟:

秒,当小时等于24小时,置为0。

inthour,minute,second;

}time;

%d:

%d:

%d"

_&

time.hour,&

time.minute,&

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1