栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

《C语言程序设计》第4版 何钦铭、颜晖主编 课后习题答案 第9章 习题9

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

《C语言程序设计》第4版 何钦铭、颜晖主编 课后习题答案 第9章 习题9

一、选择题

1~6 C D B B A D

二、填空题

1、2,3

2、&time.hour,&time.minute,&time.second           time.second            time.minute++

      time.hour==24

3、成员     指向

4、23,wang,99,wang

5、10,41,70

6、2

      7,3 

三、程序设计题

第一题

#include//习题9.1 时间换算 
struct time{
	int h;
	int m;
	int s;
};
int main(void)
{
	int n,t;
	struct time time;
	
	printf("输入一个时间:h,m,s:");
	scanf("%d%d%d",&time.h,&time.m,&time.s);
	printf("输入n秒:");
	scanf("%d",&n); 
	t=time.s+n;
	if(t>60){
		time.m++;
		time.s=t-60;
		if(time.m>60){
			time.h++;
			time.m=time.m-60;
		}
	}
	else{
		time.s=t;
	}
	printf("过n秒的时间值为 h:%d m:%d s:%d",time.h,time.m,time.s);
	
	
	return 0;
}

 第二题

#include//习题9.2,计算两个复数之积 
struct complex{
	double real,imag;
};
int main(void)
{
	struct complex c1,c2,product;
	
	printf("输入第一个复数;");
	scanf("%lf%lf",&c1.real,&c1.imag);
	printf("输入第二个复数;");
	scanf("%lf%lf",&c2.real,&c2.imag);
	product.real=c1.real*c2.real-c1.imag*c2.imag;
	product.imag=c1.real*c2.imag+c1.imag*c2.real;
	printf("两复数的乘积为:%.2lf+%.2lfi",product.real,product.imag);
	
	return 0;
}

第三题

#include//习题9.3 平面向量的加法 
struct ve_add{
	double x,y;
};
int main(void)
{
	struct ve_add V1,V2,result;
	
	printf("输入两个二维平面向量V=(x,y):");
	scanf("%lf%lf%lf%lf",&V1.x,&V1.y,&V2.x,&V2.y);
	result.x=V1.x+V2.x;
	result.y=V1.y+V2.y;
	printf("两平面向量的和向量为:(%.2lf,%.2lf)",result.x,result.y);
	
	return 0;
}

第四题

#include//习题9.4 查找书籍 
struct books{
	char name[20];
	double price;
};
int main(void)
{
	int max=0,min=0,i;
	struct books book[10];
	
	printf("请输入10本书的书名和定价:");
	for(i=0;i<10;i++)
	{
		scanf("%s",book[i].name);
		scanf("%lf",&book[i].price);
	} 
	for(i=0;i<10;i++)
	{
		if(book[max].pricebook[i].price){
			min=i;
		}
	}
	printf("定价最高的书:%st%.2lfn定价最低的书:%st%.2lf",book[max].name,book[max].price,book[min].name,book[min].price);
	
	return 0;
}

第五题

#include//习题9.5 通讯录排序 
struct birthday{
	int year;
	int month;
	int day;
};
struct address_book{
	char name[11];
	struct birthday bir;
	char phomer[12];
};
int main(void)
{
	int n,i,j,k;
	struct address_book com[10],t;
	printf("输入n(n<10)个联系人信息:");
	scanf("%d",&n); 
	for(i=0;i 

第六题

#include//习题9.6 按等级统计学生成绩 
struct student{
	int num;
	char name[11];
	double score;
	char grade;
};
char set_grade(double score)
{
	char ch;
	if(score>=85&&score<=100){
		ch='A';
	}else if(score>=70){
		ch='B';
	}else if(score>=60){
		ch='C';
	}else if(score>=0){
		ch='D';
	}
	return ch;
}
int main(void)
{
	int i,count=0;
	struct student s[10];
	printf("请输入10个学生的信息:n");
	for(i=0;i<4;i++)
	{
		printf("请输入学号:");
		scanf("%d",&s[i].num);
		printf("请输入姓名;");
		scanf("%s",s[i].name);
		printf("请输入成绩:");
		scanf("%lf",&s[i].score);
		s[i].grade=set_grade(s[i].score);
		if(s[i].score<60){
			count++;
		}
	}
	printf("学号t姓名t成绩t等级n");
	for(i=0;i<4;i++)
	{
		printf("%dt%st%.2lft%cn",s[i].num,s[i].name,s[i].score,s[i].grade);
	}
	printf("不及格学生人数为:%d",count);
	
	return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/879793.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号