C语言程序设计:现代设计方法习题笔记《chapter3》

第一题

                   ​

代码示例:

 

#include<stdio.h>int main()
{printf("Enter a date(mm/dd/yyyy): ");int day, month, year;scanf_s("%d/%d/%d", &month, &day, &year);printf("%04d%02d%02d", year, month, day);return 0;
}

 输出:

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

如果输出格式这样设置:

printf("%4d%2d%2d", year, month, day);

输出将为:

        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        

可见"d"前面的数字表示所占的位数,如果小于指定的位数,在前面加数字0,则会在高位补0,如果不加数字0,则为空,保留占位符。

第二题

        ​​​​​​​       

 示例代码:

#include<stdio.h>int main()
{printf("Enter item number: ");int item;scanf_s("%d", &item);printf("Enter uint price: ");float price;scanf_s("%f", &price);printf("Enter purchase date: ");int month, day, year;scanf_s("%d/%d/%d", &month, &day, &year);printf("Item\t\tUint\t\tPurchase\n");printf("\t\tPrice\t\tDate\n");printf("%d\t\t$  %.2f\t%02d/%02d/%04d", item, price, month, day, year);return 0;
}

 输出:

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

第三题

         

示例代码:

 

#include<stdio.h>int main()
{printf("Enter ISBN: ");int prefix, identifier, code, digit;long number;scanf_s("%d-%d-%d-%ld-%d", &prefix, &identifier, &code, &number, &digit);printf("GS1 prefix: %d\n", prefix);printf("Group identifier: %d\n", identifier);printf("Publisher code: %d\n", code);printf("Item number: %ld\n", number);printf("Check digit: %d\n", digit);return 0;
}

输出:

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

第四题

         

示例代码: 

#include<stdio.h>
int main()
{printf("Enter phone number [(xxx) xxx-xxxx]: ");int a, b, c;scanf_s("(%d) %d-%d", &a, &b, &c);printf("You entered %d.%d.%d", a, b, c);return 0;
}

输出:

        ​​​​​​​        ​​​​​​​         

第五题

        

示例代码:

#include<stdio.h>int main()
{int a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p;printf("Enter the numbers from 1 to 16 in any order: \n");scanf_s("%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d", &a, &b, &c, &d, &e, &f, &g, &h, &i, &j, &k, &l, &m, &n, &o, &p);printf("%d\t%d\t%d\t%d\n", a, b, c, d);printf("%d\t%d\t%d\t%d\n", e, f, g, h);printf("%d\t%d\t%d\t%d\n", i, j, k, l);printf("%d\t%d\t%d\t%d\n", m, n, o, p);//row sumint rowSum1, rowSum2, rowSum3, rowSum4;int columnSum1, columnSum2, columnSum3, columnSum4;int diagSum1, diagSum2;rowSum1 = a + b + c + d;rowSum2 = h + e + f + g;rowSum3 = k + i + j + l;rowSum4 = m + n + o + p;//column sumcolumnSum1 = a + e + i + m;columnSum2 = b + f + j + n;columnSum3 = c + g + k + o;columnSum4 = d + h + l + p;//diag sumdiagSum1 = a + f + k + p;diagSum2 = d + j + g + m;printf("Row sums: %d %d %d %d\n", rowSum1, rowSum2, rowSum3, rowSum4);printf("Column sums: %d %d %d %d\n", columnSum1, columnSum2, columnSum3, columnSum4);printf("Diagonal sums: %d %d\n", diagSum1, diagSum2);return 0;
}

输出:

        ​​​​​​​        ​​​​​​​         

上面代码输出是左对齐的,而书中给出的示例是右对齐,虽然没有明确要求,但是这里给出实现代码:

#include<stdio.h>int main()
{int a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p;printf("Enter the numbers from 1 to 16 in any order: \n");scanf_s("%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d", &a, &b, &c, &d, &e, &f, &g, &h, &i, &j, &k, &l, &m, &n, &o, &p);printf("%2d\t%2d\t%2d\t%2d\n", a, b, c, d);printf("%2d\t%2d\t%2d\t%2d\n", e, f, g, h);printf("%2d\t%2d\t%2d\t%2d\n", i, j, k, l);printf("%2d\t%2d\t%2d\t%2d\n", m, n, o, p);//row sumint rowSum1, rowSum2, rowSum3, rowSum4;int columnSum1, columnSum2, columnSum3, columnSum4;int diagSum1, diagSum2;rowSum1 = a + b + c + d;rowSum2 = h + e + f + g;rowSum3 = k + i + j + l;rowSum4 = m + n + o + p;//column sumcolumnSum1 = a + e + i + m;columnSum2 = b + f + j + n;columnSum3 = c + g + k + o;columnSum4 = d + h + l + p;//diag sumdiagSum1 = a + f + k + p;diagSum2 = d + j + g + m;printf("Row sums: %d %d %d %d\n", rowSum1, rowSum2, rowSum3, rowSum4);printf("Column sums: %d %d %d %d\n", columnSum1, columnSum2, columnSum3, columnSum4);printf("Diagonal sums: %d %d\n", diagSum1, diagSum2);return 0;
}

 输出:

        ​​​​​​​        

可以发现已经和书中一致。

第六题

        

         

示例代码:

#include<stdio.h>int main()
{int num1, denom1, num2, denom2, result_num, result_denom;printf("Enter two fractions separated by a plus sign: ");scanf_s("%d/%d+%d/%d", &num1, &denom1, &num2, &denom2);result_denom = denom1 * denom2;result_num = num1 * denom2 + num2 * denom1;printf("\nThe sum is: %d/%d", result_num, result_denom);return 0;
}

 输出:

        ​​​​​​​        ​​​​​​​        

这些题都是体力活,主要是慢慢练手感,一起加油。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一款好用的搜索软件——everthing(搜索比文件资源管理器快)

everthing官网链接 在官网选择下载 1.下载后双击打开 2.点击OK&#xff08;需要其他语言自己选择&#xff09; 3.选择安装位置&#xff08;路径最好别带中文和空格&#xff09; 继续点击下一步 4. 点击下一步 5.继续点击安装 6.然后就完成了 7.点击打开然后就可以搜索了

Elastic Stack简介

本文内容参考了田雪松老师编著的《Elastic Stack应用宝典》 从ELK到Elastic Stack ELK是三个单词的首字母缩写&#xff0c;即Elasticsearch、Logstash和Kibana。 Elasticsearch用于数据存储与检索Logstash用于数据传输与清洗Kibana则用于数据可视化等领域 Elasticsearch的第…

AnaTraf | 网络性能监控系统NPM:提升网络性能与业务连续性

AnaTraf 网络性能监控系统NPM | 全流量回溯分析 | 网络故障排除工具 网络系统非常复杂&#xff0c;管理和维护它们也越来越具有挑战性。为了确保网络性能和业务的持续稳定运行&#xff0c;IT运维团队需要对网络进行实时监控、优化和快速排查故障。本文将围绕网络性能监控系统&…

raidrive 访问搭建的ftp服务报错超时的情况

尝试了很久&#xff0c;包括改用户权限和密码&#xff0c;后面根据ftp日志&#xff0c;查到用户登录是正常的 /var/log/vsftpd.log 就知道&#xff0c;不是密码问题也不是服务器端的问题&#xff0c;通过多次尝试发现是被动模式的问题&#xff0c;被动模式会通过其他端口进行交…

ChatGPT实现旅游推荐微信小程序

随着旅游行业的快速发展&#xff0c;个性化推荐已成为提升用户体验的重要手段。通过AI技术&#xff0c;提供一个智能旅游推荐小程序&#xff0c;使用户能够轻松获取定制化的旅行建议。 项目概述 项目目标 开发一个AI旅游推荐小程序&#xff0c;基于用户输入的旅行偏好&#…

前后端请求、返回数据的多种方式

Springboot项目的业务逻辑 &#x1f319;项目基本结构&#xff1a; 通常情况下&#xff0c;我们在搭建后端项目的时候&#xff0c;处理业务逻辑我们需要用到Controller,Service,Mapper(mybatis,mybatis-plus)&#xff0c;Entry各层之间的相互调用来完成&#xff0c;还有就是我…

Docker部署MySQL主从复制

1. 主从复制概念及优势 1.1 概念 MySQL主从复制是一种数据库复制技术&#xff0c;它允许将一个数据库服务器&#xff08;主服务器&#xff09;上的数据更改复制到一个或多个数据库服务器&#xff08;从服务器&#xff09;。这种技术在数据库管理和维护中扮演着重要的角色&…

Ubuntu 2张4090,显卡安装,无法双屏显示

项目场景&#xff1a; 提示&#xff1a;这里简述项目相关背景&#xff1a; Ubuntu20.04 安装nvidia显卡 在已经安装好nvidia显卡的情况下&#xff1a; 单屏幕无法修改屏幕分辨率 无法双屏显示 问题描述 提示&#xff1a;这里描述项目中遇到的问题&#xff1a; 单屏幕无法…

【Origin科技绘图】最新Origin2024中文版软件安装教程

Origin是由OriginLab公司开发的一个科学绘图、数据分析软件,支持在MicrosoftWindows下运行。Origin支持各种各样的2D/3D图形。Origin中的数据分析功能包括统计,信号处理,曲线拟合以及峰值分析。Origin中的曲线拟合是采用基Levernberg-Marquardt算法(LMA)的非线性最小二乘法拟合…

理工科考研想考计算机,湖南大学、重大、哈工大威海、山东大学,该如何选择?

C哥专业提供——计软考研院校选择分析专业课备考指南规划 计算机对理工科同学来说&#xff0c;还是性价比很高的&#xff0c;具有很大的优势&#xff01; 一、就业前景广阔 高需求行业 在当今数字化时代&#xff0c;计算机技术几乎渗透到了各个领域&#xff0c;无论是互联网…

LabVIEW提高开发效率技巧----插入式架构

随着LabVIEW项目规模的扩大和系统复杂性的增加&#xff0c;传统的单一代码架构难以应对后期维护和功能扩展的需求。插入式架构&#xff08;Plug-In Architecture&#xff09;作为一种模块化设计方式&#xff0c;通过动态加载和运行子VI&#xff0c;使系统功能更加灵活、模块化&…

Django从请求到响应

视图 一个视图函数&#xff0c;简称视图&#xff0c;是一个简单的Python函数 def view_name() 定义视图函数view_name() URL的常用配置 path函数&#xff1a; path(route,view,name,**kwargs) route&#xff1a;RUL匹配规则 view&#xff1a;视图函数 name&#xf…

【部署篇】RabbitMq-03集群模式部署

一、准备主机 准备3台主机用于rabbitmq部署&#xff0c;文章中是在centos7上安装部署rabbitmq3.8通过文章中介绍的方式可以同样在centos8、centos9上部署&#xff0c;只需下载对应的版本进行相同的操作。 主机IP角色说明192.168.128.31种子节点192.168.128.32普通节点192.16…

React 分装webSocket

背景 AI 实时对话 需要流式数据 React Hooks 写法。新建WebSocket.tsx 放在根目录components import { useCallback, useRef, useState } from react;type MessageHandler (message: MessageEvent) > void; type ErrorHandler (event: Event) > void;export functi…

技术成神之路:设计模式(二十二)命令模式

介绍 命令模式&#xff08;Command Pattern&#xff09;是一种行为设计模式&#xff0c;允许将请求&#xff08;命令&#xff09;封装为对象&#xff0c;从而使您可以使用不同的请求、队列或记录请求日志&#xff0c;以及支持可撤销操作。 1. 定义 命令模式将一个请求封装为一个…

S32DS for ARM GPIO实践

S32DS操作&#xff1a; 一、新建项目 打开S32DS&#xff0c;FIle–>NEW–> S32DS Application Project选择对应芯片&#xff0c;写入项目名然后下一步 选择对应的SDK&#xff0c;Debugger选带有PE字眼的&#xff0c;点击完成 配置GPIO&#xff0c;双击Components界面下的…

【MySQL】详解MySQL数据类型

一、数据类型 各类型的数值范围&#xff1a; 在MySQL中&#xff0c;整型可以指定是有符号的和无符号的&#xff0c;默认是有符号的。 可以通过UNSIGNED来说明某个字段是无符号的。对于int类型可能存放不下的数据&#xff0c;尽量不使用unsigned&#xff0c;unsigned int 同样可…

pytorch dataloader学习

import torch from torch.utils.data import Dataset, DataLoader import numpy as np torch.manual_seed(1) # 自定义数据集 class CustomDataset(Dataset):def __init__(self):# 创建一些示例数据&#xff08;100个样本&#xff0c;每个样本包含10个特征&#xff09;self.dat…

推荐一个开源非线性视频编辑器:Kdenlive

Kdenlive是一个开源的视频编辑软件&#xff0c;项目始于约2003年。它基于Qt和KDE框架库构建&#xff0c;大部分视频处理由MLT框架完成&#xff0c;同时依赖其他开源项目如FFmpeg、frei0r、movit、ladspa、sox等。 软件特点&#xff1a; - 多轨视频编辑&#xff1a;支持多个音频…

MongoDB Shell 基本命令(三)生成学生脚本信息和简单查询

一、生成学生信息脚本 利用该脚本可以生成任意个学生信息&#xff0c;包括学号、姓名、班级、年级、专业、课程名称、课程成绩等信息&#xff0c;此处生成2万名学生&#xff0c;学生所有信息都是给定范围后随机生成。 生成学生信息后&#xff0c;再来对学生信息进行简单查询。…