没有合适的资源?快使用搜索试试~ 我知道了~
首页C++编程实战:数组操作与闰年判断
C++编程实战:数组操作与闰年判断
需积分: 44 17 下载量 106 浏览量
更新于2024-07-18
1
收藏 302KB DOC 举报
这段代码提供了三个C++编程题目,分别涉及基础的数组操作和条件判断。 1. 第一题要求用户输入4个数字并计算它们的两个平均值。在这个程序中,首先定义了一个长度为4的`double`类型的数组`a`,通过`cin`从用户处获取输入。然后,通过循环分别计算第1个和第4个元素(索引为0和3)的平均值,以及第2个和第3个元素(索引为1和2)的平均值,并使用`cout`打印结果。这是一个简单的数学练习,展示了如何在C++中处理基本的算术运算和数组访问。 2. 第二题涉及数组的逆序打印。这里使用了`<ctime>`库中的`srand(time(0))`函数来初始化随机数生成器,生成一个长度为12的整型数组`a`,每个元素是随机数。接着,首先按顺序打印原数组,然后用另一个循环从数组末尾到开头(索引从`N-1`到0),逆序输出数组。这个例子演示了数组的遍历和随机数生成的基本应用。 3. 第三题则结合了条件判断和数组索引操作。程序首先定义了一个包含每个月天数的数组`j`,其中`j[2]`代表闰年的2月天数。`runnian`函数用于判断输入的年份是否为闰年,如果是,则增加`j[2]`的值。在主函数中,用户输入年份和月份,程序会调用`runnian`函数检查闰年情况,然后输出对应月份的天数。这个部分展示了如何实现条件逻辑,以及如何根据条件修改数组元素。 这些题目旨在帮助初学者熟悉C++语言的基本语法,包括输入输出、数组声明与操作、条件判断,以及函数的使用。通过解决这些问题,学习者可以提升对C++编程的理解和实践能力。
资源详情
资源推荐
using namespace std;
void main()
{
int x, y;
bool f, g;
double a[5];
x=10, y=20;
int *xp=&x, *yp=&y;
cout<<"x: "<<*xp<<'\t'<<xp<<endl;
cout<<"y: "<<*yp<<'\t'<<yp<<endl;
f=true, g=false;
bool *fp=&f, *gp=&g;
cout<<"f: "<<*fp<<'\t'<<fp<<endl;
cout<<"g: "<<*gp<<'\t'<<gp<<endl;
/* 存储一个 double 型数据需要 8Byte 空间,
因此元素 a[0]与 a[4]的地址相差应为 4*8Byte,即 32Byte。
需注意的是:显示的地址是一个十六进制数,
所以下面打印出的两个地址应相差 0x20。*/
cout<<"a[0]: "<<&a[0]<<endl;
cout<<"a[
2.将字符串常量"pointer"保存在一个字符数组中,打印以下三行内容:(1)
该数组的首地址;(2)该字符串;(3)请使用指针变量输出该字符串,要求
每个字符之间空一个格
#include<iostream>
using namespace std;
void main()
{
char str[ ]="pointer"; // 定义字符数组 str 存储该字符串
cout<<(void *)str<<endl; // 打印输出数组的首地址
cout<<str<<endl; // 打印输出字符串
char *p=str; // 定义字符指针 p 指向数组中的第一个字符
while(*p){
cout<<*p<<' '; // 循环打印数组中的每个字符,并以空格间隔
p++;
}
cout<<endl;
}
3.试用指针实现:判断一个数组是否是对称的。如{1,2,3,5,7,7,5,3,2,1}
是对称的,而{1,2,3,5,7,5,3,2,1}或{1,2,3,5,7,5,3}都不是对称的
要求:数组的元素个数定义为常量 N,N 的值以及数组各元素的值自定
#include <iostream>
using namespace std;
void main( )
{
const int N=10;
int a[N]={1,2,3,5,7,7,5,3,2,1};
// 其他试验值 int b[ ]={1,2,3,5,7,5,3,2,1}; int c[ ]={1,2,3,5,7,5,3}; 等等
for(int i=0; i<N; i++) // 打印数组所有元素
cout<<a[i]<<" ";
cout<<endl;
if(N%2==0)
{
int *headp=a; // 定义首指针,指向数组第一个元素
int *tailp=a+N-1; // 定义尾指针,指向数组最后一个元素
while(headp<tailp)
{
if( *headp!=*tailp) // 如果两个指针指向的数不相等
{
cout<<"该数组不对称。\n";
break;
}
headp++; // 首指针增 1,即向后移动,指向下一个元素
tailp--; // 尾指针减 1,即向前移动,指向前一个元素
}
if(headp>=tailp) // 如果首指针已大于或等于尾指针
cout<<"该数组对称。\n";
}
else
cout<<"该数组不对称。\n";
}
1.试编写一个实现三位正整数数字拆分功能的函数 ChaiFen,其函数原型
如下:
bool ChaiFen( int n, int &n2, int &n1, int &n0);
要求:函数检查参数 n 是否是正数,若是则进行拆分,并将百、十、个位
分别保存在引用型参数 n2、n1 和 n0 中,函数返回 true 表示拆分成功;否则不
进行拆分,函数返回 false。
#include<iostream>
using namespace std;
bool ChaiFen( int, int &, int &, int &);
void main()
剩余46页未读,继续阅读
消失的铁盒
- 粉丝: 1
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- JDK 17 Linux版本压缩包解压与安装指南
- C++/Qt飞行模拟器教员控制台系统源码发布
- TensorFlow深度学习实践:CNN在MNIST数据集上的应用
- 鸿蒙驱动HCIA资料整理-培训教材与开发者指南
- 凯撒Java版SaaS OA协同办公软件v2.0特性解析
- AutoCAD二次开发中文指南下载 - C#编程深入解析
- C语言冒泡排序算法实现详解
- Pointofix截屏:轻松实现高效截图体验
- Matlab实现SVM数据分类与预测教程
- 基于JSP+SQL的网站流量统计管理系统设计与实现
- C语言实现删除字符中重复项的方法与技巧
- e-sqlcipher.dll动态链接库的作用与应用
- 浙江工业大学自考网站开发与继续教育官网模板设计
- STM32 103C8T6 OLED 显示程序实现指南
- 高效压缩技术:删除重复字符压缩包
- JSP+SQL智能交通管理系统:违章处理与交通效率提升
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功