第四次实验作业

1.编写程序,输入一个整数x,按照下式输出对应的y值。

     

#include<stdio.h>
int main()
{
    int x,y,i;
    y=0;
    printf("请输入一个整数x\n");
    scanf("%d",&x);
    if(x%2==1)
    {
        for(i=1;i<=x;i+=2)
        {
            y=i+y;
        }
    }
    else if(x%2==0)
    {
        for(i=2;i<=x;i+=2)
        {
            y=i+y;
        }
    }
    printf("%d",y);
    return 0;
} 

  2.编程求1-1/2+1/3-1/4+1/5- … +1/99-1/100,结果保留两位小数。

#include<stdio.h>
int main()
{
    int i,n;
    float y=1;
    for(i=2;i<=100;i=i+2)
    {
        y=y-1.00/i;
    }
    for(n=3;n<=100;n=n+2)
    {
        y=y+1.00/n;
    }
    printf("%0.2f\n",y);
    return 0;
}

  3.输出2000年至3000年所有闰年的年号,每输出10个年号换一行。最后统计一共有多少个闰年。

#include<stdio.h>
int main()
{
    int i,c;
    c=0;
    for(i=2000;i<=3000;i=i+1)
    {
        if((i%4==0&&i%100!=0)||(i%400==0))
        {
            printf("%d ",i);
            c=c+1;
            if(c%10==0)
            {
                printf("\n");
            }
        }
    }
    printf("一共有%d个闰年",c);
    return 0;
}

  4.输入一个实数x和一个整数m,计算xm,不允许调用pow()函数。

#include<stdio.h>
int main()
{
    int m,i;
    float x,y=1;
    printf("请输入一个实数x和整数m\n");
    scanf("%f%d",&x,&m);
    for(i=1;i<=m;i=i+1)
    {
        y=y*x;
    }
    printf("%f\n",y);
    return 0;
}

  5.输入一串字符,分别统计其中字母、空格、数字和其他字符的个数。

#include<stdio.h>
int main()
{
    int a,b,c,d,e,i;
    char c1;
    a=0;
    b=0;
    c=0;
    d=0;
    e=0;
    printf("请输入一串字符\n");
    scanf("%c",&c1);
    while(c1!=‘\n‘)
    {
        if(‘A‘<=c1&&c1<=‘Z‘||‘a‘<=c1&&c1<=‘z‘)
        {
            b++;
        }
        else if(c1==32)
        {
            c++;
        }
        else if(‘0‘<=c1&&c1<=‘9‘)
        {
            d++;
        }
        else
        {
            e++;
        }
        scanf("%c",&c1);
    }
    printf("字母有%d个,空格有%d个,数字有%d个,其他有%d个",b,c,d,e);
    return 0;
}

  6.输入一批数(正数和负数),输入0结束,分别计算其中正数的平均值和负数的平均值,

#include<stdio.h>
int main()
{
    int a,b,c,d,e;
    float f,g;
    b=0;
    c=0;
    d=0;
    e=0;
    printf("请输入一批数\n");
    scanf("%d",&a);
    if(a==0)
    {
        printf("no\n");
    }
    else
    {
        while(a!=0)
        {
            if(a<0)
            {
                b+=a;
                e++;
            }
            else
            {
                d+=a;
                c++;
            }
        scanf("%d",&a);
        }
    }
    f=(float)d/c;
    g=(float)b/e;
      printf("正整数的平均数为%f,负数的平均数是%f",f,g);
    return 0;
} 

  7.输出1000以内的所有素数,每行10个,最后输出一共有多少个素数。(每列对齐)

#include<stdio.h>
int main()
{
    int i,n,z=0,flag=0;
    for(i=2;i<=1000;i++)
    {
        for(n=2,flag=0;n<=i-1;n++)
        {
            if(i%n==0)
            {
                flag=1;
                break;
            }
        }
        if(flag!=1)
        {
            printf("%d ",i);
            z++;
            if(z%10==0)
            {
                printf("\n");
            }
        }
    }
    printf("一共有%d个素数",z);
    return 0;
}

  8.打印下列图形

#include<stdio.h>
int main()
{
    int i,j;
    for(i=1;i<=5;i++)
    {
        for(j=1;j<=i-1;j++)
        {
            printf(" ");
        }
        for(j=1;j<=2*(5-i)+1;j++)
        {
            printf("*");
        }
        printf("\n");
    }
    return 0;
}

本次课知识点总结:

1.循环次数已知的时候用for语句,循环次数未知的时候用whlie语句。

2.break在循环语句和switch语句中,终止并跳出循环体或开关体。

3.break只能终止并跳出最近一层的结构。

4.continue语句只结束本次循环,而不是终止整个的执行。而break语句则是结束整个循环过程,不在判断执行循环的条件是否成立。

实验总结(实验中遇到的问题及解决方法):

1.记住开始时要附初始值。

2.for和whlie语句后边没有分号。

3.明确每个值所代表的意义。

4.循环体中应有是循环趋向结束的语句。

5.写代码前可以先写一个执行流程。

时间: 2024-08-07 11:35:58

第四次实验作业的相关文章

SDN2017 第四次实验作业

实验目的 1.使用图形化界面搭建拓扑如下并连接控制器 2.使用python脚本搭建拓扑如下并通过命令行连接控制器 3.使用任一种方法搭建拓扑连接控制器后下发流表 实验步骤 建立以下拓扑,并连接上ODL控制器. 利用ODL下发流表,使得h3在10s内ping不通h1,10s后恢复. 借助Postman通过ODL的北向接口下发流表,再利用ODL北向接口查看已下发的流表. 原文地址:https://www.cnblogs.com/tr3e/p/8074616.html

Linux内核实验作业四

实验作业:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 20135313吴子怡.北京电子科技学院 [第一部分]使用库函数API来获取用户标识号.库函数为getuid() 代码如下: 编译运行之后,将用户id号1000打印输出在屏幕上. [第二部分]使用汇编方式触发系统调用来获取用户标识号.库函数依旧为getuid() 代码如下: 可以看出,打印出来的用户id和之前的一样都是1000. [第三部分]系统调用的工作机制学习总结 我认为系统调用的工作机制就是系统调用经过封装包装成为

实验作业:使gdb跟踪分析一个系统调用内核函数

实验作业:使gdb跟踪分析一个系统调用内核函数(我使用的是getuid) 20135313吴子怡.北京电子科技学院 [第一部分] 根据视频演示的步骤,先做第一部分,步骤如下 ①更新menu代码到最新版 ②在代码中加入C函数.汇编函数 ③在main函数中加入makeconfig ④make rootfs ⑤可以看到qemu中增加了我们先前添加的命令: ⑥分别执行新增的命令 [第二部分]gdb跟踪分析一个系统调用内核函数 ①进入gdb调试 ②设置断点,继续执行: ③相对应的得到这样的结果: ④查看我

第四章家庭作业4.45

第四章家庭作业---4.45 题目要求: A 用指针索引的方式编写相同的数组索引的冒泡程序C代码 B 将所得的C程序用Y86程序表述出来 解题思路: 1 将题目所给的数组元素代码转换成指针索引的代码 具体方法为:将指针赋给数组的头地址,然后按位移动指代 C格式:int *data=a; *(data+i); 2 将程序复写,并加入头文件以及主函数使其能正常调用以及相应传参 3 将所得的C程序汇编一下获得相应的汇编代码 格式:gcc -S xxx.c  -o  xxx 4 利用所得的汇编代码,用正

SDN第四次上机作业

SDN第四次上机作业 实验目的 1.使用图形化界面搭建拓扑如下并连接控制器 2.使用python脚本搭建拓扑如下并通过命令行连接控制器 3.使用任一种方法搭建拓扑连接控制器后下发流表 实验步骤 1.建立以下拓扑,并连接上ODL控制器. 2.利用ODL下发流表,使得h3在10s内ping不通h1,10s后恢复. 3.借助Postman通过ODL的北向接口下发流表,再利用ODL北向接口查看已下发的流表.

lamp实验作业详细过程

1.请描述一次完整的http请求处理过程:由客户端发起请求给服务端,服务端接收到请求后解析http报文内容,把处理完成后的内容反馈给客户端,再将每次请求记录在日志中.2.httpd所支持的处理模型有哪些,他们的分别使用于哪些环境.prefork:多进程模型,一个进程响应一个请求:worker:多进程多线程模型,一个线程响应一个请求:event:事件驱动模型,一个进程响应n个请求:3.源码编译安装LAMP环境(基于wordpress程序),并写出详细的安装.配置.测试过程.一.编译安装httpd2

数据结构与算法 第四次实验报告 图

数据结构与算法 第四次实验报告 姓名:许恺 学号:2014011329 班级:计算机14-1     中国石油大学(北京)计算机科学与技术系 1.图的定义,文件为"Graph.h" #ifndef GRAPH_H//定义头文件 #define GRAPH_H #include<string>//引入标准库中的头文件 using namespace std; const int MaxSize=12; struct ArcNode//定义边表结点 { int adjvex;/

2016福州大学软件工程第四次团队作业-系统设计成绩汇总

第四次团队作业--系统设计打分统计结果如下: 学号 组别 团队分数 贡献比例 个人分数 031401433 606notconnected 14 16 13.83 031402606 606notconnected 14 14 13.33 031402618 606notconnected 14 18 14.34 031402629 606notconnected 14 14 13.33 031402631 606notconnected 14 19 14.59 031402632 606not

20135239益西拉姆第四次实验报告

北京电子科技学院(BESTI) 实验报告 课程:JAVA第四次实验报告 班 级: 1352 姓 名:益西拉姆 学 号:20135239 成 绩: / 指导教师: 娄嘉鹏 实验日期: 2015.06.09 实验密级: / 预习程度: / 实验时间:15:00--18:00 仪器组次:39 必须/选修: 选修 实验序号:04 实验名称: 第四次实验 实验仪器: 名称 型号 数量 PC机 DELL 1 实验内容: 1:编写网络通信程序.(基于TCP) 2:对通信内容使用对称加密算法进行加密. 3:使用