附加题3

1.求技术和。输入一批正整数(以零或负数为结束标志),求其中奇数和。

 #include<stdio.h>
 int main()
 {
     int x,n;
     printf("请输入正整数x;");
     scanf("%d",&x);
     n=0;
     while(x>0)
     {
         //if(x/2!=0)
        //if    (x%2!=0)
        //{
        //    n=n+x;
        //    printf("%d\n",x);
        //printf("请输入正整数x;");
        //scanf("%d",&x);
          //}
          if    (x%2!=0)
             n=n+x;
              printf("请输入正整数x;");
             scanf("%d",&x);
     }
        printf("%d",n);
     return 0;
 }

2.展开式求和。驶入一个实数x,计算并输出下式的和,知道最后一项的绝对值小于0.00001,计算结果保留两位小数。要求定义和调用函数fact(n)计算n的阶乘。

s=x+x^2/2!+x^3/3!+......

#include<stdio.h>
#include<math.h>
double fact(int n);
int main()
{
    int n,i;
    double s,x;
    printf("请输入实数x:");
    scanf("%lf",&x);
    n=1;
    s=0;
    i=1;
    while(pow(x,i)/fact(n)>=0.00001)
    {
        s=s+pow(x,i)/fact(n);
        i++;
        n++;
    }
    printf("%.2lf",s);
    return 0;
}

double fact (int n)
{
    int j;
    double product;
    product=1;
    for(j=1;j<=n;j++)
    {
        product=product*j;
    }
    return product;
}

3.求序列和。输入一个正整数你,输出2/1+3/1+5/3+8/5+.....的前n向和,保留两位小数。该序列从第二项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。

#include<stdio.h>
int main()
{
    int n,i;
    double s,x,y,z;
    s=0;
    x=2;
    y=1;
    printf("输入一个正整数n:");
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
        s=s+x/y;
        z=x;
        x=x+y;
        y=z;
    }
    printf("%.2lf",s);
    return 0;
} 

4.求数列和。输入两个正整数a和n,求a+aa+aaa+aaaa......之和。

#include<stdio.h>
#include<math.h>
int main()
{
    int n,i,j;
    double a,b,s;
    printf("输入一个正整数a:");
    scanf("%lf",&a);
    printf("输入一个正整数n:");
    scanf("%d",&n);
    i=1;
    s=0;
    b=0;
    j=0;
    for(i=1;i<=n;i++)
    {
        for(j=0;j<i;j++)
        {

            b=b+a*pow(10,j);
            printf("中间变量%lf\n",b);
        }
        s=s+b;
        b=0;
        printf("%.0lf\n",s);
    }
    return 0;
}

5.换硬币。将一笔零钱(大于八分,小于一元,精确到分)换成5分、2分、1分的硬币,每种至少一枚。输入金额请问有几种换法?针对每种换法,输出各种面额硬币的数量和硬币的总数量。

#include<stdio.h>
int main()
{
    int x;
    printf("请输入金额x分:");
    scanf("%d",&x);
    int f,t,w,n=0,s;
    for(f=1;f<=2;f++)
        for(t=1;t<=5;t++)
            for(w=1;w<=10;w++)
                if(5*f+2*t+w==x)
                {
                    n++;
                    s=f+t+w;
                    printf("第%d种情况为:\n",n);
                    printf("总共有%d枚\n",s);
                    printf("五分的有%d\n枚",f);
                    printf("两分的有%d\n枚",t);
                    printf("一分的有%d\n枚",w);

                }

return 0;
} 

知识点:

1.do-while无条件运算一次,县运算后判断;while先判断后运算

2.for循环的不同形式

3.·潜逃循环

遇到的问题与解决方法

1.因为基础太次所以经常会出现定义的变量没有赋值,for(   ;    ;    );这种低级错误,通过不断询问老师,老师细心地的引导,多次教材的例题、老师帮助编写的程序的对比发现并改正

心得体会

经过这几天的不断反看教材与老师的引导渐渐发现了编程时出现问题后检查的方法,并且很好的加深了我对基础知识的记忆

时间: 2024-11-09 04:11:46

附加题3的相关文章

结对编程_附加题_博客2

1.界面模块,测试模块和核心模块的松耦合 2.改进程序 结对编程_附加题_博客2

2016届阿里实习生在线笔试附加题3

#include<iostream> using namespace std; int a[1000]; int waiting = 1; int main(){ int temp = 0; int i = 0; while(cin>>temp){ a[temp] = 1; if(temp == waiting){ cout<<waiting; for(i = waiting + 1;a[i] == 1;i++){ cout<<","&l

结对项目(附加题)开发总结

结对项目(附加题)开发总结 这次附加题的任务就是把两个小组写的独立的UI和CORE模块打乱重组,拼接成一个新的APP. 我们小组选择了大神刘乾所在小组和我们合作交换.一拿到乾神的核心代码,我不得不说,乾神就是乾神,代码一出,直接把我镇住了,各种参数看不懂咋办?咋写UI? 还好我们的乾神同志给我们提供了帮助文档,介绍了各个参数的作用,现摘录如下: 对于计算表达式的值(CALC模式): AnswerGet(string s)其中s是给定的算式,以等号结尾. 调用生成器时,使用: public Gen

结对项目附加题

我们与刘乾组进行了互换.附加题目遇到的问题比较多,且有些直到最后也难以解决. 其中最主要的问题在于,刘乾组的代码在给我们的时候并没有完全封装成dll的样子,虽然文档里列出了一些接口,但实质上都是一些可以直接使用的类.虽然能实现所有的功能,但形式上并不是我们想象中接口的样子.我们尝试将他们的数据结构转换为我们的数据结构,之后再做一个适配层,利用他们提供的接口,实现我们所定义的几个接口.然而,由于在接口的设计上大相径庭,完成这一转换所需的工作量相当大.于是,最终的适配层放弃了进行数据结构及接口的转换

结对项目(附加题)

结对项目成员:徐丞(13061203) 赖彦谕(13061212) [附加题]第四阶段目标 - 界面模块,测试模块和核心模块的松耦合. 我们小队是和付帅,赵庶宏组进行了交换测试,我们导出的静态链接库(.lib),然后在界面里include来调用.我们两个组都是用C++写的程序,用MFC写的界面.遇到的主要的问题,就是因为我们的想法有一些不同, API接口的设计和他们设计的接口有些不一致,所以导致我们的模块和他们的界面模块不能很好的连接. 为了解决这一问题,如果要修改我们设计好的API,那么就会修

[附加题] 结对项目对接的苦痛

[附加题] 结对项目对接的苦痛 本次很荣幸地,我的程序作为很多程序员队伍的备胎计算模块被加入了各大程序的附加题参考中,有以下几位同学都曾与我进行模块的对接: GNU_Linuxer 马克斯 kanelim PocketPanacea kibbon ruoyuwang 夜微凉evol 先来谈谈我作为计算模块的提供者的感受吧: 总的感受就几个字:请别吐槽我了... 我的代码质量我觉得还是可以的,但是在这过程中出现的最严重的问题是啥呢,是设计的问题,是设计者对于需求的理解和框架.接口统一与否的问题.

北京地铁_结对项目_附加题

地铁出行项目(续)- 附加题 团队成员:杨金键 谢振威 金豪 要求描述: 使程序支持不同城市的地图.请让程序能处理上海的地铁地图,或者其它城市的地图.把程序由 “固定处理一个地图” 升级为 “能处理多个地图”, 程序的什么模块需要变化? 其实,在我们设计程序之初就已经考虑到了程序将来的可扩展性,所以无论是地图储存文件还是代码我们都是从这个角度出发考虑的. 具体来说: 取消所有对于北京地图的特殊化处理,针对特殊的地方,例如环线或者单行线则定义关键词统一处理 所有地图相关信息都靠文件读取,避免地图相

结对项目——博客记录(附加题)

结对项目内容:http://www.cnblogs.com/jiel/p/4830912.html 结对成员:康家华,马腾跃(http://www.cnblogs.com/summerMTY) [附加题]第四阶段目标 - 界面模块,测试模块和核心模块的松耦合. 对于这个附加题,我们小队(A)决定和刘乾小队(B)的模块进行交换,于是在拿到对方的代码时,我们立刻就傻眼了. 不是说对方写的很差,相反,B小队的代码有刘乾的保证,质量很高.让我们傻眼的是因为我们的想法不是完全相同的,而我们设计的接口的要求

结对编程项目(除附加题)开发过程

结对编程项目(除附加题)开发过程 结对同伴:李云涛 一.照片 结对同伴在家,等回校后补上. 二.结对编程评价 优点: 1.两个人的编程思想.算法.代码风格可以互相借鉴和学习,对于两人的编程水平的提高都很有帮助. 2.两个人可以分工写不同的相对独立的模块,加快开发的进度. 3.自己程序的bug可能自己怎么找都找不到,而自己的同伴就能很快找到. 缺点: 有些工作必须得两人在一起才能进行,而两人都空闲的时间不是太多,很多时候需要通过线上进行交流,导致工作被耽搁. 我自己的优点:做事认真.有恒心.有学习

阿里巴巴集团2015年秋季校招在线笔试附加题分析

刚做完,选择题做吐血,好多智力题....附加题有两道编程题.题面是回忆的内容. 1.在text中查找子串quary,返回符合匹配的quary中连续的最大的子串长度,例如 quary = "acbac",text = "acaccbabb",quary 中 "cba"是最大的连续子串,返回3. [分析] 两重循环获得quary的所有连续子串,使用KMP算法在text 查找匹配,如果匹配,则记录子串长度,最后返回最大的子串长度. 代码如下,编译通过