定义结构体类型点,线段,定义线段结构体变量并初始化,输出线段名称,起始点坐标,对线段名称和起点坐标进行格式化输入赋值,最后计算线段长度并输出。(C语言)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

题目:

[实验案例1:结构体变量]

定义结构体类型点,线段。定义线段结构体变量并初始化,输出线段名称,起始点坐标。对线段名称和起点坐标进行格式化输入赋值。最后计算线段长度并输出。

 [实验指导]

分析下述程序,掌握结构体与结构体变量的定义以及对结构体变量成员的访问。

代码:

/*结构体与结构体变量的定义以及对结构体变量成员的访问,文件名sy9_1.c */
#include <stdio.h>
#include <math.h>

struct point                       /* 点的结构类型 */
{ 	                    
	int	x;
int  y;		                /* x,y是点的坐标 */
};

struct segment                   /* 线段的嵌套结构类型 */
{		           
	          char name[6];	    /* 线段名称 */
	          struct point start;	/* 线段的起点 */
	         struct point end;	    /* 线段的终点 */
};

int main( )
{
	struct segment a={"abc",{1,1},{10,10}};         /*声明嵌套结构变量时对其初始化 */
	double dx2,dy2,length;
	printf("线段名称 %s\n",a.name);         /*输出线段名称 */
	printf("起点坐标:(%d,%d)\n",a.start.x,a.start.y); /*下面输出起点坐标和终点坐标*/
	printf("终点坐标:(%d,%d)\n",a.end.x,a.end.y);
	printf("请输入修改后的线段名称:") ;
	scanf("%s",a.name);
	printf("请输入修改后的起点坐标:");                  /*对线段名称和起点坐标进行格式化输入赋值 */
	scanf("%d%d",&a.start.x,&a.start.y);
	printf("请输入修改后的终点坐标:");
scanf("%d%d",&a.end.x,&a.end.y);           /*对终点坐标进行赋值 */
	dx2=(a.end.x-a.start.x)*(a.end.x-a.start.x); /*计算线段长度并输出 */
	dy2=(a.end.y-a.start.y)*(a.end.y-a.start.y);
	length=sqrt(dx2+dy2);
	printf("线段长度为 %.2f\n",length);
return 0;
}

结果:


 

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了结构体与结构体变量的定义以及对结构体变量成员的访问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酷酷滴Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值