之前有程序员说:C语言快要被淘汰了,因为它太老了。
c++快要被淘汰了,因为它太复杂了。
c#快要被淘汰了,因为它太少应用了...
不过,至今这些编程语言还没被淘汰,这就尴尬啦!相对于C++来说,C语言更简单、好学。
1、带着需求学习编程
有些小伙伴学习编程没有任何目标,只是一味啃书,做编程练习,学院式的学习方法难免让人觉得枯燥乏味。
如果你可以找到编程需求,再学习编程,学习的成就感将让你全身的每个细胞兴奋起来。
2、设计算法
在c语言中,为了能编写程序,必须学会设计算法,一个有效的算法应该具备以下特点:
有穷性.一个算法应该包含有限的操作步骤,而不能无限的。
确定性.算法中的每一个步骤都应当是确定的,而应当是含糊的,模棱两可的。
零个输入或多个输入所谓输入是指在执行算法时需要从外界取得必要的信息。
有一个或多个输出. 算法的目的是为了求解,“解”就是输出。
有效性. 算法中的每一个步骤都应当能有有效地执行,并得到确定的结果。
输出hello,world!
#include // : 头文件访问方式 stdio.h : C语言标准库中的 stdio.h 头文件,定义输入和输出函数。
int main() { // int : C语言中数据类型,表示整型 main() {}: 主函数,函数从这里执行1234
printf("hello, world!"); //printf("hello, world!"); printf() : 格式化输出 函数 "hello, world!" : 字符串1234
return 0; //return 0 : 程序结束,返回0
}
想要学习和了解的更多的小伙伴们,可以加下小编的C/C++编程学习群: 666+295+498,邀请码(怀念)不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2018最新的C/C++资料和0基础入门教程,欢迎初学和进阶中的小伙伴。
每天晚上20:00我都会开直播给大家分享C/C++编程学习知识和路线方法,群里会不定期更新最新的教程和学习方法(进群送2018C/C++游戏编程学习教程),大家都是学习C/C++的,或是转行,或是大学生,还有工作中想提升自己能力的前端党,如果你是正在学习C/C++的小伙伴可以加入学习。最后祝所有程序员都能够走上人生巅峰,让代码将梦想照进现实,非常适合新手学习,有不懂的问题可以随时问我,工作不忙的时候希望可以给大家解惑。
3、return 用法
A. 返回值,这个返回值是和函数的类型有关的,函数的类型是什么,他的返回值就是什么
比方主函数int main()
{}这里就必须有一个return,只有void时可以不用返回值。
B.功能函数
int fun()
{
return 1;
}
这个时候fun函数的作用就是返回一个int 类型的值,可以直接拿来用比方int a=fun();
这里就相当于int a=1;
另外一个作用return后面的语句不会执行,我们可以用它来结束程序
比方找出三个数种最大的一个数
void main
{
int a,b,c;
{
return printf("最大值为%d",a);
}
.....
}
在这里if(b>c)
我们就可以直接得出a是最大了,就没必要执行下面的语句了,return这里就起到了终止语句的作用了
所以通过我们以上的举例可以看出:
第一.return是用来终止被调函数,向主调函数返回表达式值;
第二.如果表达式为空,则只终止函数,不向主调函数返回任何值;
第三.beark是用来终止循环和switch的,return是用来终止函数的;
4、c语言中break的用法
一:break如果用于循环那么它是用来终止循环。
二:break如果用于switch则是用于终止switch.
三:break不能直接用于if语句,除非if属于循环内部的一个句子。
5、C语言实现猴子吃桃问题(循环、递归两种方法)
【问题描述】
猴子第一天摘下若干个桃子,当即吃了一半,不过瘾,又多吃了一个;第二天,吃剩下的桃子的一半,还不过瘾,又多吃了一个;以后每天都吃前一天剩下的一半多一个,到第十天,只剩下一个桃子。求第一天猴子摘的桃子个数。顺便推荐下我自己的C/C++学习群:598131849,不管你是小白还是大牛,小编我都挺欢迎,不定期分享干货,包括我自己整理的资料和零基础入门教程,送给大家,欢迎初学和进阶中的小伙伴。
【基本思路】
采取逆向思维的方法,从后往前推断,可得到递推公式。
令:X10=1,根据题意容易得出
X9=2*(X10+1)
X8=2*(X9+1)
…
Xn=2*(Xn+1+1)
【采用循环实现】
#include
int main(void)
{
int day,x1,x2=1; //第10天1个桃子
for(day=10;day>=1;day--)
{
printf("第%d天的桃子数为:%d\n",day,x2);
x1=2*(x2+1);
x2=x1;
}
}
采用递归实现】
根据题意,可得到递归式及递归结束条件。
X(n)=2*(X(n+1)+1) (x
X(10)=1 (x=1)
#include
int func(int n) //返回第n天时的桃子数
{
if(n==10)
return 1;
else
return 2*(func(n+1)+1);
}
int main(void)
{
int i;
for(i=1;i
printf("第%d天的桃子数:%d \n", i, func(i));
return 0;
}
领取专属 10元无门槛券
私享最新 技术干货