【C++】实验十四

news2024/9/24 17:19:40

题目:

1、编写程序,输入a,b,c,检查a,b,c是否满足以下条件,如不满足,由cerr输出有关错误信息。

2、从键盘输入一批数值。要求保留3位小数,在输出时上下行小数点对齐

            1.用控制符控制输出格式。

            2.用流成员函数控制输出格式。

3、建立两个磁盘文件f1.dat和f2.dat。编程序实现以下工作:

             1.从键盘输入20个整数。分别存放在两个磁盘文件中(每个文件中放10个整数)。

             2.从f1.dat中读入10个数,然后存放到f2.dat文件原有数据的后面。

             3.从f2.dat中读入20个整数,将它们按从小到大的顺序存放到f2.dat(不保留原来的数据)。

参考代码:

1、

#include<cmath>
#include<iostream>
using namespace std;

int main(){
  int a, b, c;
  int s, area;
  cout<<"输入a , b , c"<<endl;
  cin >> a >> b >> c;
  if( a+b > c && a+c > b && b+c > a){
    s=(a+b+c)/2;
    area = sqrt(s*(s-a)*(s-b)*(s-c));
    cout<<"面积"<<area<<endl;
  }
  else
      cerr<<"不是三角形"<<endl;
  return 0;
}

2、

#include<iostream>
#include<iomanip>
using namespace std;

int main(){
  double a [5];
  cout<<"输入5个浮点数"<<endl;
  for(int i=0; i<5; i++)
      cin>>a[i];
  cout<<setiosflags(ios::fixed)<<setprecision(3);
  for(int j=0; j<5; j++){
    cout<<setw(10)<<a[j]<<endl;
  }
  return 0;
}

3、

#include <iostream>
#include <fstream>
using namespace std;    
 
//fun1函数从键盘输入20个整数,分别存放在两个磁盘文件中
void fun1()
{
    int a[10];
    int i;
    ofstream outfile1("f1.dat"), outfile2("f2.dat");  //分别定义两个文件流对象
    if (!outfile1)                        //检查打开f1.dat是否成功
    {
        cerr << "open f1.dat error!" << endl;
        exit(1);
    }
    if (!outfile2)                        //检查打开f2.dat是否成功
    {
        cerr << "open f2.dat error!" << endl;
        exit(1);
    }
    cout << "输入10个数存到f1:" << endl;
    for (i = 0; i < 10; i++)          //输入10个数存放到f1.dat文件中
    {
        cin >> a[i];
        outfile1 << a[i] << " ";
    }
    cout << "输入10个数存到f2:" << endl;
    for (i = 0; i < 10; i++)           //输入10个数存放到f2.dat文件中
    {
        cin >> a[i];
        outfile2 << a[i] << " ";
    }
    outfile1.close();               //关闭f1.dat文件
    outfile2.close();               //关闭f2.dat文件
}
 
//从f1,dat读入10个数,然后存放到f2.dat文件原有数据的后面
void fun2()
{
    ifstream infile("f1.dat");       //f1.dat作为输入文件
    if (!infile)
    {
        cerr << "open f1.dat error!" << endl;
        exit(1);
    }
    ofstream outfile("f2.dat", ios::app);/*ios::app 追加模式打开文件夹, 以ios::app打开,如果没有文件,那么生成空文件;如果有文件,那么在文件尾追加*/
    //f2.dat作为输出文件,文件指针指向文件尾,向它写入的数据放在原来数据的后面
    if (!outfile)
    {
        cerr << "open f2.dat error!" << endl;
        exit(1);
    }
    int a;
    for (int i = 0; i < 10; i++)
    {
        infile >> a;           //磁盘文件f2.dat读入一个整数
        outfile << a << " ";     //将该数存放到f2.dat中
    }
    infile.close();
    outfile.close();
}
 
//从f2.dat中读入20个整数,将它们按从小到大的顺序存放到f2.dat 
void fun3()
{
    ifstream infile("f2.dat"); //定义输入文件流infile,以输入方式打开f2.dat 
    if (!infile)
    {
        cerr << "open f2.dat error!" << endl;
        exit(1);
    }
    int a[20];
    int i, j, t;
    for (i = 0; i < 20; i++)
        infile >> a[i];        //从磁盘文件f2.dat读入20个数放在数组a中
    for (i = 0; i < 19; i++)     //用起泡法对20个数排序
        for (j = 0; j < 19 - i; j++)
            if (a[j] > a[j + 1])
            {
                t = a[j]; a[j] = a[j + 1]; a[j + 1] = t;
            }
    infile.close();                //关闭输入文件f2.dat
    ofstream outfile("f2.dat", ios::out);/*或ofstream outfile("f2.dat");*/
    // f2.dat作为输出文件,文件中原有内容删除
    if (!outfile)
    {
        cerr << "open f2.dat error!" << endl;
        exit(1);
    }
    cout << "f2.dat:" << endl;
    for (i = 0; i < 20; i++)
    {
        outfile << a[i] << " ";      //向f2.dat输出已排序的20个数
        cout << a[i] << " ";
    }        //同时输出到显示器
    cout << endl;
    outfile.close();
}
 
int main()
{
    fun1();                     //分别调用3个函数
    fun2();
    fun3();
    return 0;
}
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1966258.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

成都夏光汝网络科技有限公司抖音小店品质与创新的完美结合

在数字经济蓬勃发展的今天&#xff0c;电商行业以其独特的魅力和无限的可能性&#xff0c;正深刻改变着我们的消费习惯与生活方式。其中&#xff0c;抖音小店作为短视频与电商结合的典范&#xff0c;更是以其独特的优势迅速崛起&#xff0c;成为广大消费者喜爱的购物渠道。成都…

企业版邮箱如何确保全球畅邮

企业版邮箱如何确保全球畅邮呢&#xff1f;一邮箱通过多项国际隐私认证&#xff0c;加密技术保障数据安全。二是全球网络部署确保邮件畅通。三提供灵活价格方案&#xff0c;支持用户定制化和跨平台。四是第三方工具集成&#xff0c;提升效率。 一、Zoho邮箱的安全保障 1.1 高…

【Stable Diffusion】影楼再也赚不到你的钱,让SD帮你“拍摄”艺术写真

前言 点击上方「蓝字」关注我们 你能看出下图是一张经过AI技术处理过的写真吗&#xff1f; 通过原图AI合成&#xff0c;简单几步操作&#xff0c;一个无需摄影无需后期的0成本摄影工作室就诞生了。 今天就来教大家怎么用Stable Diffusion做出这样的写真效果。 操作过程 第一…

IDEA使用Docker打包镜像

IDEA使用Docker打包镜像 Docker服务器 想要使用idea直接打包docker镜像&#xff0c;需要一个docker服务&#xff0c;你可以安装windows版本的docker&#xff0c;或者安装Linux版本的docker到虚拟机中&#xff0c;这个根据个人想法即可。本篇文章使用的是Linux&#xff01; W…

一图搞懂,全流程项目管理实践地图,驱动:市场-研发-售后

如何共同协作驱动 市场研发售后&#xff1f; 软件项目交付需要一段时间和长周期&#xff0c;而由于产品研发团队前与市场部门脱节、后又与售后支撑服务团队脱节的话&#xff0c;整体上会加剧项目管理的成本和内部跨部门协作的难度。 如何高效共同协作驱动 市场运营产品研发售…

C# Solidworks二次开发------设置按键打开模型查询

一、代码 public void Open_File(string FileNmae) {Process.Start("explorer.exe", FileNmae); }Open_File("路径"); 二、内容 这个代码很简单&#xff0c;我使用其主要的作用是设置一个按键&#xff0c;可以快速的查看我们已生成的三维模型&#xff0…

2000-2023年上市公司融资约束指数-KZ指数(含原始数据+计算结果)

2000-2023年上市公司融资约束指数-KZ指数&#xff08;含原始数据计算结果&#xff09; 1、时间&#xff1a;2000-2023年 2、来源&#xff1a;上市公司年报 3、指标&#xff1a;证券代码、证券简称、统计截止日期、是否剔除ST或*ST或PT股、是否剔除上市不满一年、已经退市或被…

js数据类型基础

最近投了几家公司面试&#xff0c;其中有一家公司面试官面试我非常感谢他&#xff0c;感觉他像一位老师的角色对于我回答不上来的问题以及回答错误的问题耐心指导。js基础真的很重要&#xff01;&#xff01;面完之后我觉平常我只是看到了问题的表面&#xff0c;并没有深度的了…

基于SpringBoot的电商购物平台设计与实现-计算机毕设 附源码 06411

基于SpringBoot的电商购物平台设计与实现 摘 要 该电商购物平台基于SpringBoot开发&#xff0c;旨在为用户提供便捷的购物体验。注册功能允许用户通过提供账号、密码、昵称、邮箱等信息注册账户&#xff0c;而已注册用户可以使用用户名和密码登录系统。普通用户可以在首页查看…

钉钉机器人调度

钉钉机器人调度 流程操作钉钉开发者后台配置01 添加机器人获取APPKEY和APPSECRET获取权限开启消息推送 02 接收“问题”搭建接口 03 转发到服务器服务器的管理界面机器人配置界面将代码上传到服务器 04 API调度影刀提取数据配置信息--合法性 05 生成答案06 回传到服务器 流程 操…

WPF中添加布局拖拽功能 (添加GridSplitter)

1. 思想&#xff1a; 使用GridSplitter加到布局中&#xff0c;作为控件。 2. Xaml代码&#xff1a; <Windowx:Class"TestWPF_Func1207.TestRichTextBox"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schema…

牛客JS题(十五)参数解析器

注释很详细&#xff0c;直接上代码 涉及知识点&#xff1a; decodeURIComponent(URL解码函数)new URL正则exec 题干&#xff1a; 我的答案 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /></head><body&…

光流传感器 - 从零开始认识各种传感器【第二十二期】

光流传感器|从零开始认识各种传感器 1、什么是光流传感器 光流传感器是一种用于测量物体相对于周围环境的运动的设备。它通过检测周围光线的变化来计算出物体的运动方向和速度&#xff0c;广泛应用于机器人导航、无人机飞行控制、虚拟现实等领域。 2、光流传感器是如何工作的…

java8通用启动参数

由于默认的jvm参数不够合理&#xff0c;一般使用前都建议按需调整&#xff0c;这里尝试抛砖引玉&#xff0c;给出我个人工作中总结的经验&#xff0c;欢迎大家一起讨论 服务类型 http应用dubbo应用 java版本 使用java8支持容器化的版本&#xff1a;Java 8 Update 261 (8u26…

【吊打面试官系列-Dubbo面试题】Dubbo 如何优雅停机?

大家好&#xff0c;我是锋哥。今天分享关于 【Dubbo 如何优雅停机&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; Dubbo 如何优雅停机&#xff1f; Dubbo 是通过 JDK 的 ShutdownHook 来完成优雅停机的&#xff0c;所以如果使用 kill -9 PID 等强制关闭指令&am…

小区来了个磨刀的

昨天下午&#xff0c;小区来了个磨刀磨剪子的。 我听见了喇叭吆喝声&#xff0c;就拿着一把菜刀下去了。 磨一把刀5块钱。 在磨刀的过程中&#xff0c;这位师傅就聊他的技术如何高超&#xff0c;什么水磨法远远超过磨刀石&#xff0c;总之让人感觉找他磨刀是正确的选择。 哎…

springboot宠物用品商城系统-前端-计算机毕业设计源码74346

摘要 基于微信小程序的宠物用品商城系统是一个集商品展示、在线购物、支付结算、用户管理等功能于一体的综合性电商平台。该系统充分利用微信小程序的便捷性和用户基础&#xff0c;为宠物爱好者提供了一个方便、快捷的购物体验。 同时&#xff0c;该系统还具备完善的用户管理功…

Windows Subsystem for Linux——安装桌面版Ubuntu

大纲 安装非桌面版操作系统安装桌面软件进入默认账号更新系统安装桌面软件安装xrdp查看IP地址 远程连接参考资料 在《Windows Subsystem for Linux——安装和使用》一文中&#xff0c;我们看到WSL只能安装非桌面版的Linux。 wsl --list --online但是桌面版的Linux其实是在非桌…

如何利用AI创作PPT?

最强AI视频生成&#xff1a;小说文案智能分镜智能识别角色和场景批量Ai绘图自动配音添加音乐一键合成视频百万播放量https://aitools.jurilu.com/ 你要是做一张只需要交差用的PPT&#xff0c;用ChatGPT连一分钟都用不了&#xff0c;你看我画的这个流程图的黄色的箭头&#xff0…

【STM32】STM32单片机入门

个人主页~ 这是一个新的系列&#xff0c;stm32单片机系列&#xff0c;资料都是从网上找的&#xff0c;主要参考江协科技还有正点原子以及csdn博客等资料&#xff0c;以一个一点没有接触过单片机但有一点编程基础的小白视角开始stm32单片机的学习&#xff0c;希望能对也没有学过…