作业-10.19

一、尝试配置虚拟机桥接网络

    第一步:在VM的菜单栏中选择编辑,在下拉菜单中选择虚拟网络编辑器,在弹出的窗口中选择

                        桥接模式,可以自动,也可以根据自己的主机网络信息选择物理的网卡进行桥接。作业-10.19_第1张图片         第二步:在VM菜单栏中选择虚拟机菜单,在下拉菜单汇总选择设置,会弹出设置窗口,

                        在其中选择网络适配器,选择桥接模式或者自定义选择VMnet0即可。       作业-10.19_第2张图片

         第三步:在Ubuntu中如图操作就可以进入网络设置界面了

作业-10.19_第3张图片

         第四步:配置网络,一般来说自动可以完成网络的配置,就可以上网了。但是有的时候自动

                        并不能解决问题,就需要手动来分配IP地址。

作业-10.19_第4张图片

         第五步:首先WIN+R弹出允许,在允许中输入cmd,弹出命令行窗口,输入ipconfig/all

                        即可查看主机的网络信息。需要注意的是,在图中圈出的三条信息除了ip地址

                        最后一组数字,其他的虚拟机应当和主机一致。

作业-10.19_第5张图片

 作业-10.19_第6张图片

 

作业-10.19_第7张图片

         都设置好了之后就可以上网了

二、上课的代码:

        (1)利用##完成输入整形就整形的比大小,浮点型就浮点型比大小

#include 

#define MAX(T) T  max_##T(T a,T b) {printf("%f.\n", (a>b?a:b));}
#define max(T) max_##T

int main(int argc, const char *argv[])
{
	MAX(float);
	max(float)(10.5,11.25);
	//printf("%f.\n", max(float)(11.5,10.2));
	return 0;
}

       (2)typedef的练习以及回调函数实现输出“helloworld”

#include 

typedef unsigned int uint;
typedef int *    		p;
typedef int arr1[5];
typedef void (*pnt)(void);
typedef char *arr2[5];
typedef int (*arr3)[5];

void hdhs(pnt hdhs)
{
	hdhs();
}
void hello_pnt(void)
{
	printf("Hello World!!!\n");
}
void china(void)
{
	printf("I Love China!!!\n");
}

int main(int argc, const char *argv[])
{
	arr1 str;	
	str[0] = 100;
	
	printf("str[0] = %d.\n", str[0]);
	
	pnt p1 = hello_pnt;
	
	hdhs(p1);

	uint a = 100;
	printf("a = %d.\n", a);
	
	arr2 point = {NULL};
	point[0] = "I Love China";
	printf("%s.\n", point[0]);


	return 0;
}

        (3)malloc申请一个长度为10的数组,输入十个数,冒泡排序,输出

#include 
#include "test1.h"
#include 

int main(int argc, const char *argv[])
{
//	printf("a = %d, b = %d", a, b);	
	int *p = (int *)malloc(10*sizeof(int));
	printf("p = %p.\n", p);

	if (p)
	{
		for (int i=0; i<10; i++)
		{
			scanf("%d", p+i);
		}
		for(int i=0; i<9; i++)
		{
			for(int j=0; j<9-i; j++)
			{
				if(p[j]>p[j+1])
				{
					p[j] ^= p[j+1];
					p[j+1] ^= p[j];
					p[j] ^= p[j+1];
				}
			}
		}
		for(int i=0; i<10; i++)
		{
			printf("s[%d] = %d\t", i, p[i]);
			if((i+1)%5==0)
			{
				putchar(10);
			}
		}
		putchar(10);
	}else{
		printf("空间申请失败");

		return -1;
	}
	free(p);
	printf("p = %p.\n", p);
	p = NULL;
	printf("p = %p.\n", p);

	return 0;
}

        (4)enum 分文件 控制LED亮灭

               LED.c

#include
 enum leds
 {
     LED1=1,
     LED2,
     LED3
 };
enum con
{
     LED_OFF=1,
     LED_ON
};
void led_con(enum leds led, enum con key)
{
    switch (led)
    {
	    case (LED1):
		    if(key==LED_OFF)
		    {
		        printf("LED1 is OFF\n");
		    }
		    else
		    {
		        printf("LED1 is ON\n");
		    }
		break;
	  
	    case (LED2):
		    if(key==LED_OFF)
		    {
		        printf("LED2 is OFF\n");
		    }
		    else
		    {
		        printf("LED2 is ON\n");
		    }
		break;

	    case (LED3):
	   		if(key==LED_OFF)
		    {
		        printf("LED3 is OFF\n");
		    }
		    else
		    {
		        printf("LED3 is ON\n");
		    }
		break; 
	    
	    default:
		    printf("输入错误·");
		    break;
    }
}

main.c

#include
#include "LED.h"
int main(int argc, char const *argv[])
{
    printf("选择一个LED:\n");
    scanf("%u",&led);
    printf("选择开关:1.OFF,2.ON\n");
    scanf("%u",&key);

    led_con(led, key);
    return 0;
}

三、思维导图

作业-10.19_第8张图片

 

你可能感兴趣的:(作业,c语言,linux)