首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言】初学C语言经典题目(范围广,内容多)

✨作者:@平凡的人1 ✨专栏:《C语言从0到1》 ✨推荐刷题网站:进入网站 ✨送给各位一句话:既要脚踏实地 又要仰望星空 ✨说明:无论做什么事情,我们既要有高远理想,也要有脚踏实地精神态度...学习C语言同时,我们也要去大量刷题,提高自己编程能力,如果你不太会做题,没有关系,不要害怕,越害怕只会越害怕。...C语言前期我们比较经典一些题目,如果对你有帮助的话,记得点赞关注加收藏哦,希望我们能够一起成长与进步 ---- 下面,让我们开始今天主题吧!...---- 模拟登录操作 实际上登录操作是比较复杂,这里只是觉得模拟一下而已,放在这里,是为了告诉大家字符串比较不能用,而是用strcmp。同时,注意到文件引用。...这自然离不开典型递归题目:斐波那契数列,所以,下面将要说就是我们斐波那契数列数列。

1.5K30
您找到你想要的搜索结果了吗?
是的
没有找到

C语言经典递归题目 -- 汉诺塔问题

目录 题目描述 画图分析 思路总结 代码实现 总结 题目描述 汉诺塔问题起源于一个传说 汉诺塔又被称为河内塔,传说,在世界中心贝拿勒斯(在印度北部)圣庙里,一块黄铜板上插着三根宝石针。...---- 画图分析 由简到繁,我们先从最简单情况来分析: ~~只有一个盘子时候: 只有一个盘子我们直接把它从A柱移到C柱就行,此时移动次数是1,移动顺序是 A->C ~~有两个盘子时候:...有两个盘子时候我们需要先将较小盘子移动到B柱,然后将较大盘子移动C柱,再将B柱上盘子移动到C柱;此时移动次数是3,移动顺序是 A->B A->C B->C ~~有三个盘子时候: 有三个盘子时侯...,我们把最小盘子命名为1,中间为2,最大为3,那么移动顺序应该是:1号移到到C柱,2号移动到B柱,1号移动到B柱,3号移动到C柱,1号移动到A柱,2号移动到C柱,1号移动到C柱;一共移动7次,移动顺序是...所以,n个盘子移动顺序为: 1、把n-1个盘子通过C柱移到B柱上。 2. 把A柱上最后一个盘子移动到C柱上。 3. 把n-1个盘子通过A柱移动到C柱上。

36700

C语言经典递归题目 -- 青蛙跳台阶问题

目录 题目描述 画图分析 思路分析 代码实现 ---- 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级台阶总共有多少种跳法。...---- 画图分析 和上篇文章讲到汉诺塔问题一样,我们还是由简到繁,从最简单情况开始考虑: 只有一级台阶情况: 只有一级台阶时候,显然只有一种跳法。...有两级台阶情况 有两级台阶时候,青蛙有两种跳法。 跳一阶,在跳一阶: 直接跳两阶: 有三级台阶情况: 有三级台阶时候,青蛙有三种跳法。...,就剩下 n-1 级台阶,即剩下跳法是 f(n-1) 种。...我们可以发现青蛙跳台阶规律和斐波那契数列非常相似,仅仅是开始值不一样而已。

43200

C语言经典程序

思考了许久,准备在这些天给大家总结一些经典而且重要C语言程序实例。...选择排序法 选择排序法是每个学编程的人都会接触到排序算法,这个算法思想就和它名字一样,选择出最大值或者最小值放到一边,完成排序。...从第一位开始,每一位都和后面的数据比较,把最大/小值位置记录下来,然后再把这两个数交换位置,速度较快。...02 交换排序法 也称为冒泡排序法,通过这两个名字我们可以大致明白,冒泡说明就像水中气泡一样往上冒,既将较小或者较大数移动到最后边,交换指的是两个数两个数比较,如何符合则要交换。...5 求某一区间内完数 完数指的是这个数所有非本身因数加起来等于它自己数, 总结 小编给大家推荐一个学习氛围超好地方,鼠标放到头像上就能看到 可以看出,循环结构和选择结构非常重要,两者嵌套使用也很重要

4K30

C语言】解决C语言题目多组输入问题

,我们可以利用scanf返回值来作为判断条件,让他和EOF来进行比较,如果不等于EOF我们就继续进行scanf数据录入,当然我们在输入数字这一类型数据时,回车这个东西在我们scanf从缓冲区中拿走数字之后...() { char c=0; while(scanf("%c",&c)!...=EOF) { getchar();//注意scanf输入字符和输入数字可是不一样哦,一个会忽略\n,一个并不会忽略\n哦 if(c=='a'||c=='A'|...|c=='e'||c=='E'||c=='i'||c=='I'||c=='o'||c=='O'||c=='u'||c=='U') { printf("Vowel\...实际上在C++语言cin和scanf是一样,他们在读取缓冲区中字符时候,一旦遇到空格或换行符,则直接过滤并且不会将他们拿出来,然后直到读取完缓冲区字符为止。

2.5K10

C语言经典笔试题

A: main()函数里i是一个未定义值 B: main()函数i为1 C: 编译器不允许这种写法 D: main()里i值为0 解答:当笔试者看到此代码时,可能会觉得古怪。...虽然在C++中编译是可以通过(显然是不合理)。当main()函数里i从定义开始,外部全局变量i就已经被屏蔽掉,所以main()函数里作为右值i值不会0也不会是1,与外部i无关。...而是一个未定义符号。 答案:A 2.以下程序输出结果是什么? A:13 13 B:112 13 C :12 12 D:12 13 解析:本题主要考察指针以及栈概念 。...以下代码说法正确是: A:一定输出-120 B:一定不能输出-120 C:可能输出-120 D:输出%d 解答:本题乍一看,-120木有问题!...没错,那就是大小端存储导致问题,即-120这个数字对应八个位二进制码是放到int变量高位还是低位,所以结果自然不必多说了。 答案:C C语言(clang.cc)研究中心

2K80

一道C语言题目

下午,在上班,读者发来一道题目,问我怎么做。我大概瞄了一眼,看题目也不难。就先让他自己上网查下。 过了一会,他说查不到,问了群里,大家也不太会。 好吧,起码这位读者自己思考过,也问过了。...题目如下,找出代码中错误地方,并改正。...应该改为如下形式。 char a[6]; char *str=a; 有争议地方是 printf(str); 。第一次见这种用法,第一反应是不对。...由于printf支持可变参数,所以后续变量个数就需要通过str中格式化串来确定。...当str串中包含%s,%d,%c等格式化串时,printf就会去栈中找这个格式化串对应变量,但实际上,根本没有向printf压入更多参数,因此就会出现打印失败或者程序崩溃现象。

52130

C语言经典例题100

来源:公众号(c语言与cpp编程),后台回复“100”获取pdf 【程序1】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字三位数?都是多少?...程序分析:我们想办法把最小数放到x上,先将x与y进行比较,如果x>y则将x与y值进行交换,然后再用x与z进行比较,如果x>z则将x与z值进行交换,这样能使x最小。...:对10个数进行排序 程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。...程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。...b.x=20; b.c='y'; } 【程序88】 题目:读取7个数(1—50)整数值,每读取一个值,程序打印出该值个数*。

2.6K41

100例C语言经典编程题 | 浙大版C语言题目集第三版,助力你C语言从入门到精通

获取每道题详细解答请在公众号【C you again】“C语言题目集”栏目查看。 下载pdf版本请在公众号【C you again】回复“c-pdf”自行获取。...1、练习2-1 Programming in C is fun! 本题要求编写程序,输出一个短句“Programming in C is fun!”。 输入格式: 本题目没有输入。...计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。 输入格式: 本题目没有输入。...you again】: 回复 :“浙大版C语言” 查看本题目实现过程和详细解答 回复 :“编程交流群”” 进C/C++/Java编程题交流、问题解答群,和大佬一起进步 27、习题3-2...,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。

3.8K51
领券