C语言编程题001

有一颗树,一年两个生长周期,春天它长高一倍,夏天长高1m,问N个周期后树有多高?假设从春天开始树高为1m,第0个周期树高为1m。

要求:1、可以同时输入多个生长周期

  如:3//表示下面有几个生长周期

    0

    1

    4

  输出结果为:1

        2

        7

不知道写的对不对,大家看一下啊

 1 #include <stdio.h>
 2 #include <string.h>
 3 #include <math.h>
 4 #include <stdlib.h>
 5
 6 int main() {
 7
 8     /* Enter your code here. Read input from STDIN. Print output to STDOUT */
 9     int num ;//保存周期个数
10     int array[10];//保存具体的周期
11     int height;//树的高度
12     int i,j,k;//循环变量
13     printf("将要输入的周期数:\n ");
14     scanf("%d",&num);//获取输入
15     if(num <1)
16         num =1;
17     if(num >10)
18         num = 10;
19
20    printf("第几个周期?!\n");
21     for(i =0 ; i < num; i++)
22     {
23         scanf("%d",&array[i]);  //获取周期
24     }
25
26   //循环遍历周期
27     for(j = 0;j <num;j++)
28     {
29         height = 1;
30         //计算每个周期内树的高度
31         for(k=1;k<=array[j];k++)
32         {
33             if(array[j] == 0)//如果第0个周期,树高为1
34             {
35                 height = 1;
36             }
37             if(k%2 == 0)//偶数周期加1
38             {
39                 height +=1;
40             }
41             else//奇数周期翻倍
42             {
43                 height *=2;
44             }
45         }
46         //输出树高
47         printf("第%d个周期树高为:%d\n",array[j],height);
48
49     }
50
51     getchar();
52     return 0;
53 }

时间: 2024-08-05 09:23:20

C语言编程题001的相关文章

一道有意思的C语言编程题

最近在看经典的C语言入门书籍K&R,虽然是一本入门书籍,可是其中的精妙之处却需要慢慢体会.其中的经典题很多,仔细琢磨一定会收获良多. 今天看到这样一道题:编写一个删除C语言程序中所有的注释语句.感觉颇有意思,与大家一起分享一下: 我的思路: 找到注释的起始符号 \ 判断紧接着的输入字符,如果是*或者是\,则说明后面全是注释,跳过即可,否则照样输出 其他则直接输出 疑问: 所配套的答案书中提出要考虑引号后面的内容以做出响应,不是很明白这是为什么.个人认为无需考虑引号的影响也能将注释去除,希望有高手

2018.3 江苏省计算机等级考试 C语言 编程题答案

题目要求:给定一个数字范围,输出满足这些条件: 1.能被3整除: 2.包含数字5, 将满足的数字放在特定的数组里输出.输出这些数里5出现的个数.数字的个数. 想起来有点伤心,本来很简单的题,考试的时候程序写错一行,结果成了死循环,最后还没找出来错,下来以后才想起来.以后必须长点心. 代码: #include<stdio.h>int flag(int x0,int x1,int b[],int *p);int main(){int i,intnumber,fivenumber;//数字的个数.5

C语言编程题002

给出两个整数,L和R,其中L<=A<=B<=R,然后求出A^B值最大的数.其中1<=L<=R<=1000. 比如说L = 1;R = 3; L 0001 R 0011 LR中间还有 0010,其中的最大值是0001 ^ 0010 = 0011;输出就是2. 写出一个函数计算这个数: 我写了一个,但是没通过最终测试,只有12分,总分20分,不知道哪里还需要改进? 1 #include <stdio.h> 2 #include <string.h>

C语言编程题

1.递归 汉诺塔是由三根杆子A,B,C组成的.A杆上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小.要求按下列规则将所有圆盘移至C杆:每次只能移动一个圆盘:大盘不能叠在小盘上面.提示:可将圆盘临时置于B杆,也可将从A杆移出的圆盘重新移回A杆,但都必须尊循上述两条规则.问:如何移? void MoveHanoi(int iCnt, char* pSrc, char* pMid, char* pDest) { if (iCnt == 1) { printf(" %s->%s\n&qu

程序设计入门—Java语言 第六周编程题 1 单词长度(4分)

第六周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 1 单词长度(4分) 题目内容: 你的程序要读入一行文本,其中以空格分隔为若干个单词,以'.'结束.你要输出这行文本中每个单词的长度.这里的单词与语言无关,可以包括各种符号,比如"it's"算一个单词,长度为4.注意,行中可能出现连续的空格. 输入格式: 输入在一行中给出一行文本,以'.'结束,结尾的句号不能计算在最后一个单词的长度内. 输出格式: 在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后

中国MOOC_面向对象程序设计——Java语言_期末考试编程题_1细胞自动机

期末考试编程题 返回 这是期末考试的编程题 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩. 1 细胞自动机(30分) 题目内容: 这是细胞自动机的非图形版本.细胞自动机是指在一个二维网格内,每一个网格是一个细胞.每个细胞有活和死两种状态. 初始时刻,有些细胞是活的,有些细胞是死的.自动机的每一步,根据每个细胞周围8个格子内的其他细胞的生存情况决定这个细胞下一步是否存活.具体的规则如下:

中国MOOC_零基础学Java语言_期末考试的编程题_1二进制的前导的零

期末考试的编程题 返回 这是期末考试的编程题,在60分钟内,你可以多次提交,直到正确为止. 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩. 1 二进制的前导的零(10分) 题目内容: 计算机内部用二进制来表达所有的值.一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000.可以看到,从左边数过来,在第一个1之前,有27

C语言程序设计进阶 第1周编程题

第1周编程题 查看帮助 返回 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系统将取其中的最高分作为最终成绩. 1 字符串比对(10分) 题目内容: 题目说起来很简单,你会读到两个字符串,每个字符串占据一行,每个字符串的长度均小于10000字符,而且第一个字符串的长度小于第二个字符串的.你的程序要找出第一个字符串在第二个字符串中出现的位置,输出这些位置,如果找不到

JavaScript编程题(含腾讯2016校招题)

作者:ManfredHu 链接:http://www.manfredhu.com/2016/04/02/15-veryGoodForUsing/ 声明:版权所有,转载请保留本段信息,否则请不要转载 几道觉得挺有意思的编程题,感觉做下来,自己对一些新方法的看法有了新的变化. 比如indexOf,reduce,Array.isArray,forEach这些方法,以前一看到兼容性是IE9+就有点害怕,项目中不敢用,导致后面越来越陌生,不过现在一想的话.其实只要用Polyfill或者提前fix掉就可以了