《C语言程序设计》实验报告

学  号    160809201  姓  名    王浩然专业、班    计科16-2班

学    期  2016-2017 第1学期  指导教师    黄俊莲 吴喆

实验地点    C05 机 器 号  

上课时间    2016年 10 月 8 日    5 周 周六  1-4 节

截止时间    2016年 10 月 13 日   6 周 周三 晚

实验任务清单  1.实验2-6 猜数字游戏。

2.实验2-7 判断能否成为三角形

3.实验2-8 个人所得税计算器

#include <stdio.h>

#include <stdlib.h>
//猜数字游戏
int main()
{
    int myNumber,yourNumber,count=0;
    char c;
    do{
        //指定种子值为现在的时间
        srand((unsigned)time(NULL));
        //产生[1,100]这间的随机数
        myNumber = (rand() % (101 - 1)) + 1;
        do{
            printf("请输入您猜想的数值:");
            scanf("%d",&yourNumber); 
            //请在此输入代码,猜数字,并给予提示,同时记录次数
            //……
 
 
        }while(yourNumber!=myNumber);
        printf("您一共猜了%d次\n",count);
        //请在此输入代码,根据用户猜的次数给予评价
//……
        printf("继续请按Y/y,退出请按N/n:");
        getchar();
        c=getchar();
        system("cls");  //清屏函数
    }while(c=='Y' || c=='y');
    return 0;
}
源码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
//猜数字游戏
int main(void)
{
    int myNumber,yourNumber,count=0;
    char c;
    do{
        //指定种子值为现在的时间
        srand((unsigned)time(NULL));
        //产生[1,100]之间的随机数
        myNumber=(rand()%(101-1))+1;
        do{
            printf("请输入您猜想的数值:");
            scanf("%d",&yourNumber);
            count++;
            if(yourNumber<myNumber)
            printf("数字太小请重新输入!\n");
            else if(yourNumber>myNumber)
            printf("数字太大请重新输入!\n");
            else if(yourNumber==myNumber)
            printf("恭喜您,猜对了!\n");
            else
            printf("您输入的字符不合法,请重新输入!\n");
        }
        while(yourNumber!=myNumber);
        printf("您一共猜了%d次\n",count);
        if(count<3)
        {
            printf("您在第%d次就猜对了!\n",count);
            printf("天才啊!\n");
        }
        if(count>=3&&count<8)
        {
            printf("您在第%d次猜对了!\n",count);
            printf("正常!\n");
        }
        if(count>8)
        {
            printf("您在第%d次猜对了!\n",count);
            printf("笨死了!\n");
        }
        printf("继续请按Y/y,退出请按N/n");
        getchar();
        c=getchar();
        system("cls");
    }while(c=='Y'||c=='y');
    return 0;
}

实验2-7判断能否成为三角形

实验要求:

(1)输入三角形的三条边,判断能否构成三角形,输出其能否成为三角形。

(2)若为三角形,请计算出周长和面积并输出。

源码:

#include <stdio.h>

#include <math.h>

int main()

{

    float a,b,c,p,s,d;

    printf("请输入边长:\n");

    scanf("%f%f%f",&a,&b,&c);

    if(a+b>c&&a+c>b&&b+c>a)

    {
     printf("能够构成三角形\n");

    }

    else{

        printf("不能构成三角形\n");

        return 0;

    }

    p=(a+b+c)/2;

    s=sqrt(p*(p-a)*(p-b)*(p-c));

    printf("面积是:%f\n",s);

    d=(a+b+c);

    printf("周长是:%f\n",d);

    return 0;

}
 

附:个人税率表

2011年9月1日起调整后,也就是2012年实行的7级超额累进个人所得税税率表

应纳个人所得税税额= 应纳税所得额× 适用税率- 速算扣除数

扣除标准3500元/月(2011年9月1日起正式执行)(工资、薪金所得适用)

个税免征额3500元  (工资薪金所得适用)

级数  全月应纳税所得额(含税级距)【税率资讯网提供】 全月应纳税所得额(不含税级距) 税率(%)   速算扣除数

1   不超过1,500元   不超过1455元的   3   0

2   超过1,500元至4,500元的部分  超过1455元至4155元的部分    10  105

3   超过4,500元至9,000元的部分  超过4155元至7755元的部分    20  555

4   超过9,000元至35,000元的部分 超过7755元至27255元的部分   25  1,005

5   超过35,000元至55,000元的部分    超过27255元至41255元的部分  30  2,755

6   超过55,000元至80,000元的部分    超过41255元至57505元的部分  35  5,505

7   超过80,000元的部分    超过57505元的部分 45  13,505

注:

例如:某人某月工资减去社保个人缴纳金额和住房公积金个人缴纳金额后为5500 元,个税计算:(5500-3500)*10%-105=95元

源码(使用if语句完成):

#include <stdio.h>

int main()

{

    float a,tax=0,TaxIncome=0;

    printf("请输入您本月收入总额(元):");

    scanf("%f",&a);

    if(a<=1455)

    {

        tax=(a-3500)*0.03-0;

        TaxIncome=a-tax;

    }

    else if(a>1455 || a<=4155)

    {

        tax=(a-3500)*0.1-105;

        TaxIncome=a-tax;

    }

    else if(a>4155 || a<=7755)

    {

        tax=(a-3500)*0.2-555;

        TaxIncome=a-tax;

    }

    else if(a<7755 || a<=27255)

    {

        tax=(a-3500)*0.25-1005;

        TaxIncome=a-tax;

    }

    else if(a>27255 || a<=41255)

    {

        tax=(a-3500)*0.3-2755;

        TaxIncome=a-tax;

    }

    else if (a>41255 || a<=57505)

    {

        tax=(a-3500)*0.35-5505;

        TaxIncome=a-tax;

    }

    else

    {

        tax=(a-3500)*0.45-13505;

        TaxIncome=a-tax;

    }

    printf("您本月应缴税为:%f\n您本月的税后收入为:%f\n",tax,TaxIncome);

    return 0;

}

源码(使用switch语句完成):

#include <stdio.h>

int main()

{

    float a,tax=0,TaxIncome=0;

    printf("请输入您本月收入总额(元):");

    scanf("%f",&a);

    if(a<=1455)

    {

        tax=(a-3500)*0.03-0;

        TaxIncome=a-tax;

    }

    else if(a>1455 || a<=4155)

    {

        tax=(a-3500)*0.1-105;

        TaxIncome=a-tax;

    }

    else if(a>4155 || a<=7755)

    {

        tax=(a-3500)*0.2-555;

        TaxIncome=a-tax;

    }

    else if(a<7755 || a<=27255)

    {

        tax=(a-3500)*0.25-1005;

        TaxIncome=a-tax;

    }

    else if(a>27255 || a<=41255)

    {

        tax=(a-3500)*0.3-2755;

        TaxIncome=a-tax;

    }

    else if (a>41255 || a<=57505)

    {

        tax=(a-3500)*0.35-5505;

        TaxIncome=a-tax;

    }

    else

    {

        tax=(a-3500)*0.45-13505;

        TaxIncome=a-tax;

    }

    printf("您本月应缴税为:%f\n您本月的税后收入为:%f\n",tax,TaxIncome);

    return 0;

}
实验心得:怎么贴图啊,好像贴不上去我试了好几次。第3个不会今天百度了才知道。有点难啊,拜托老师下次题目不要这么复杂。
第3题是两种都要写吗,忘记switch的写法了。

 


 

  
  
  
  
  
  
  
  
  
  
  
  
 
 
 


第3次作业,c语言的更多相关文章

  1. 第四周作业——C语言自评

    1.你对自己的未来有什么规划?做了哪些准备?以目前的现状来说,希望至少能够掌握专业所要求的基本操作,然后一步步去深入.提升,毕业之后不会灰溜溜的一次次求职失败.目前更多的是利用闲暇时间补回过去老师同学 ...

  2. 2019-暑假作业-Java语言程序设计

    本文于2017年创建,最后更新2019-07-16 任务列表 1.学会使用Markdown做笔记 本篇随笔就是使用的Markdown语法.养成做笔记的习惯! 参考资料: 极简MarkDown排版介绍( ...

  3. 提交作业 C语言I作业11

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 http://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10127 我在这个课程的目标 ...

  4. 2017-暑假作业-Java语言程序设计

    任务列表 1.学会使用Markdown做笔记 本篇随笔就是使用的Markdown语法.养成做笔记的习惯! 参考资料: 极简MarkDown排版介绍(How to) stackedit:在线Markdo ...

  5. Java第一次作业——Java语言基础

    <Java技术>第一次作业 学习总结 1.Scanner类实现基本数据输入方法 Scanner input=new Scanner(System.in); int num = input. ...

  6. 《Java技术》第一次作业——Java语言基础

    学习总结 Scanner类实现基本数据输入的方法 Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配.然后可以使用不同的 next 方法将得到的标记转换为不同类型的值. ...

  7. C语言I作业12-学期总结

    一.我学到的内容 二.我的收获 我完成的作业: 第一次作业 C语言I博客作业02 C语言I作业004 C语言I博客作业05 C语言I博客作业06 C语言I博客作业07 C语言I博客作业08 C语言I博 ...

  8. PTA第五次作业

    #include<stdio.h> #include<math.h> int main () { int n,m,i,j,a; scanf("%d",&am ...

  9. 2017《Java技术》预备作业01

    2017<Java技术>预备作业 1.学习使用MarkDown 本学期的随笔都将使用MarkDown格式,要求熟练掌握MarkDown语法,学会如何使用标题,插入超链接,列表,插入图片,插 ...

  10. OO——JML作业总结

    目录 第三单元博客作业 JML语言理论基础 1.注释结构 2.JML表达式 3.方法规格 4.类型规格 应用工具链 JMLUnitNG使用实例 作业架构设计 第一次作业 第二次作业 第三次作业 BUG ...

随机推荐

  1. MySQL下全文索引

    一种特殊的索引,它会把某个数据表的某个数据列出现过的所有单词生成一份清单. alter table tablename add fulltext(column1,column2) 只能在MyISAM数 ...

  2. ClassLoader 详解及用途(写的不错)

    ClassLoader主要对类的请求提供服务,当JVM需要某类时,它根据名称向ClassLoader要求这个类,然后由ClassLoader返回 这个类的class对象. 1.1 几个相关概念Clas ...

  3. nginx常用命令

    ps -ef | grep nginx在进程列表里面找master进程,它的编号就是主进程号了. 步骤2:发送信号 从容停止Nginx: kill -QUIT 主进程号 快速停止Nginx: kill ...

  4. angularjs中ng-selected使用方法

    ng-selected只能应用在option标签上,就像ng-submit只能应用在form标签上一样. ng-selected指令为select设置了指定的选中值,HTML规范不允许浏览器保存类似s ...

  5. ubuntu-E:Encountered a section with no Package: header的解决办法 (转)

    E:Encountered a section with no Package: header, E:Problem with MergeList /var/lib/apt/lists/cn.arch ...

  6. docker中启动mysql报错

    [root@5416ec39653b init.d]# /etc/init.d/mysqld start /etc/init.d/mysqld: line 23: /etc/sysconfig/net ...

  7. xcode

    1: info.plist IOS之Info.plist文件简介 http://www.apkbus.com/android-130240-1-1.html 在Xcode项目中读取plist文件 ht ...

  8. MYSQL 免安装版(windows 7/64)

    本文介绍在本地安装MYSQL数据库,免安装版相关配置 一.下载 mysql下载地址1:http://dev.mysql.com/downloads/mysql/ 二.解压MySQL压缩包 将已下载的M ...

  9. Quagga服务器安装和配置

    使用本地源 一.安装软件包 # yum install quagga-0.99.15-7.el6_3.2.x86_64.rpm 或rpm   # ls /etc/quagga/ bgpd.conf.s ...

  10. WebGrid with filtering, paging and sorting 【转】

    WebGrid with filtering, paging and sorting by Jose M. Aguilar on April 24, 2012 in Web Development A ...