初识结构体之局域网判断

本文介绍了一个简单的C语言程序,用于定义IP地址结构并判断两个IP地址是否属于同一局域网。通过比较IP地址的前两个部分,程序能够有效地区分不同局域网中的设备。

试题描述
互联网上IP地址的表示方式为:x.y.z.m,其中x、y、z和m都是正整数。可以通过IP地址来区分同一局域网中的各个计算机。
请定义一个表示IP地址的结构体类型,其中含有四个成员,分别为四个int类型的整数。然后输入两个IP地址,我们根据前两个成员值是否相同判断它们是否处于同一个局域网中,根据判断,输出“TRUE”或者“FALSE”(不输出引号)。
输入
输入包含两行,分别是两个IP地址。
输出
依据题意,输出“TRUE”或者“FALSE”(不输出引号)。
输入示例
192.168.12.34
192.168.24.38
输出示例
TRUE
数据范围
输入为int范围内的整数和字符串,输出为字符串

#include <stdio.h>

struct number
{
	int x;
	int y;
	int z;
	int m;
}s[2];
void main()
{
	int i;
	for(i=0;i<2;i++)
	scanf("%d.%d.%d.%d",&s[i].x,&s[i].y,&s[i].z,&s[i].m);
	if(s[0].x==s[1].x&&s[0].y==s[1].y)
	printf("TRUE");
	else
	printf("FALSE");
}

在C语言中,我们可以使用结构体来减少if判断语句的使用。具体来说,我们可以定义一个结构体来表示某个对象的状态,然后使用结构体中的字段来判断该对象的状态。 例如,假设我们有一个学生管理系统,需要根据学生的年级来判断该学生是否需要参加某个活动。如果使用if语句来判断,代码可能会变得冗长复杂。而如果使用结构体来表示学生的状态,代码就可以变得更加简洁易于维护。 以下是一个示例代码: ``` #include <stdio.h> typedef struct { int grade; int is_participating; } Student; void check_activity(Student student) { if (student.grade >= 3) { student.is_participating = 1; } else { student.is_participating = 0; } if (student.is_participating) { printf("This student will participate in the activity.\n"); } else { printf("This student will not participate in the activity.\n"); } } int main() { Student student1 = {2, 0}; Student student2 = {3, 0}; check_activity(student1); check_activity(student2); return 0; } ``` 在这个示例中,我们定义了一个名为Student的结构体,其中包含两个字段:grade表示学生的年级,is_participating表示学生是否需要参加活动。然后我们定义了一个check_activity函数来判断该学生是否需要参加活动,并根据结果输出相应的信息。 通过使用结构体,我们可以将复杂的if语句简化为一个简单的赋值操作。同时,由于结构体可以被多次使用,这种方法还可以提高代码的可重用性可读性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值