(篇一)作为一个程序猿,这些C语言实例你必须会!


本篇主要简单介绍一下C语言。因为本人最近有C语言的相关考试,在漫长的复习过程,总得有点乐趣吧,就顺便总结出一些有趣的C语言经典实例。

C语言简介

C语言是面向过程的一们编程语言,属于结构化语言,与目前较流行Python、C++、Java等不同,这几种是面向对象的高级语言。

但是,由于C语言是底层语言,所以占用内存少;编译快;兼容性极强,C语言程序能在大部分平台运行;非常稳定,我们用的操作系统都是C语言写的。

另外,还是因为C语言是底层的结构化语言,所以结构性非常强,像线性链表、指针、结构体等,都是C语言的特色,它们对逻辑和结构化思维的要求是相当高的。

也正是因为如此,相对于Python、C++、Java等,C语言被一些人认为是非常难学的编程语言。

下面就是我分享复习过程中的一些C语言实例……

八层灯塔数量问题

1、题:
有一个八层灯塔,每层的灯数都是上一层的2倍,共有756盏灯,求最上层与最下层的灯数。

2、分析:
(1)这个实例需要用到穷举法,假设第一层的灯数是n,第二层的灯数就是2×n,第三层就是2×2×n,以此类推。

(2)然后我们需要使用两层循环,外层循环属于穷举法,从第一层(n=1)开始,内层循环用于计算八层灯数之和。

(3)如果八层灯数之和>756则无解;<756则进入下一轮n值的循环;==756则设的n值是正确的
3、测试代码:

#include <stdio.h>
#include <math.h> 
#include <stdlib.h> 
main()
{
   
	int n= 1, m, sum, i;	
	//n第一层的假设值,m每一层的灯数,sum所有灯数,i遍历八层楼以求得总灯数
	while(1)
	{
   
		m= 	n;
		sum= m;
		for(i=1; i<8; i++)	//遍历7次,求总灯数sum 
		{
   
			m *= 2;
			sum+= m;
		}
		if(sum>=765)	//题中总灯数为765个
		{
   
			break;
		}
		n++; 
	} 
	if(sum== 765)
	{
   
		printf("第一层有%d盏灯,最后一层有%d盏灯。",n,m);
	}else
	{
   
		printf("此题
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

鸿蒙Next

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

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

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

打赏作者

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

抵扣说明:

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

余额充值