第四次c语言题

上传人:20****03 文档编号:179303893 上传时间:2021-04-09 格式:DOC 页数:18 大小:52KB
返回 下载 相关 举报
第四次c语言题_第1页
第1页 / 共18页
第四次c语言题_第2页
第2页 / 共18页
第四次c语言题_第3页
第3页 / 共18页
第四次c语言题_第4页
第4页 / 共18页
第四次c语言题_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《第四次c语言题》由会员分享,可在线阅读,更多相关《第四次c语言题(18页珍藏版)》请在金锄头文库上搜索。

1、问题 A: Sequence Problem : Array Pratice时间限制: 1 Sec内存限制: 4 MB提交: 1842解决: 403提交状态讨论版题目描述整数序列是一串按特定顺序排列的整数,整数序列的长度是序列中整数的个数,不可定义长度为负数的整数序列。两整数序列A、B的和定义为一个新的整数序列C,序列C的长度是A、B两者中较长的一个,序列C的每个位置上的整数都是A、B对应位置之和。若序列A、B不等长,不妨假设A比B整数多,那么序列C中多出B的那部分整数视作A的对应位置上的整数与0相加。你的任务是计算符合某些要求的整数序列的和,这些序列中的整数都是小于1000的非负整数。输入输

2、入为多行,直到文件末尾结束。每行第一个整数为N(N=1000),后接一个长度为N的整数序列。输出对输入的整数序列两两相加:第1行和第2行相加、第3行和第4行相加按顺序输出结果:每行输出一个整数序列,每两个整数之间用一个空格分隔。若序列数目不为偶数,则视作补一个长度为0的整数序列相加。值得注意的是一个长度为0的整数序列也应该有输出,即使没有整数输出,也应该占有一行,因为“每行输出一个整数序列”。样例输入3 1 2 35 10 15 20 30 504 100 200 300 400样例输出11 17 23 30 50100 200 300 400提示这里最少要用到一个数组来存数整数序列或整数序列

3、的和。#include int main()int a1000=0,b1000=0;int m,i,j=0,p,k;while(scanf(%d,&m)!=EOF) j=j+1;if(j%2!=0)for(i=0;im;i=i+1)scanf(%d,&ai);else for(p=0;pm;p=p+1)scanf(%d,&bp);if(j%2!=1)if(i=p) for(k=0;kp;k=k+1) if(k=0)printf(%d,ak+bk);ak=0;bk=0; else printf( %d,ak+bk);ak=0;bk=0; printf(n);elsefor(k=0;ki;k=k+

4、1)if(k=0)printf(%d,ak+bk);ak=0;bk=0;elseprintf( %d,ak+bk);ak=0;bk=0;printf(n);if(m!=0&j%2=1)for(i=0;i0),后面有M行输入。每行输入为不超过1000个整数的整数序列,每个整数序列的输入均以0结束。输出对输入的整数序列两两相加:第1行和第2行相加、第3行和第4行相加按顺序输出结果:每行输出一个整数序列,每两个整数之间用一个空格分隔。若序列数目不为偶数,则视作补一个长度为0的整数序列相加。值得注意的是一个长度为0的整数序列也应该有输出,即使没有整数输出,也应该占有一行,因为“每行输出一个整数序列”。

5、样例输入31 2 3 010 15 20 30 50 0100 200 300 400 0样例输出11 17 23 30 50100 200 300 400提示这里最少要用到一个数组来存数整数序列或整数序列的和。一个省事的做法是把数组定义的稍微大一点,因为有时你的程序可能会边界处理的不是太好。Append Code提交状态讨论版#include void main() int i,j,m,n,g,k,q;n=0; scanf(%d,&m);if(m%2=0)for(k=0;kj)j=i;for(i=0;ij;i+)if(i=0)printf(%d,a0+b0);elseprintf( %d,a

6、i+bi);printf(n);elsefor(k=0;k1)for(j;j+)scanf(%d,&aj);if(aj=0)break;for(i=0;i+)scanf(%d,&bi);if(bi=0)break;if(ij)j=i;for(i=0;ij;i+)if(i=0)printf(%d,a0+b0);elseprintf( %d,ai+bi);printf(n);elsefor(j=0;j+)scanf(%d,&aj);if(aj=0)break;for(i=0;i0),后面有M行输入。每行第一个整数为N(N=1000),后接一个长度为N的整数序列。输出对输入的整数序列两两相加:第1行

7、和第2行相加、第2行和第3行相加按顺序输出结果:每行输出一个整数序列,每两个整数之间用一个空格分隔。若最后序列不足两个,则视作补一个长度为0的整数序列相加。值得注意的是一个长度为0的整数序列也应该有输出,即使没有整数输出,也应该占有一行,因为“每行输出一个整数序列”。样例输入33 1 2 35 10 15 20 30 504 100 200 300 400样例输出11 17 23 30 50110 215 320 430 50100 200 300 400提示这里最少要用到两个数组来存储整数序列。#include #define N 1001 int main() int i,j,y,m,n,x,aN=0,bN=0; scanf(%d,&n); for(i=1;i=n;i+) if(i%2!=0) scanf(%d,&y); for(j=0;jm?y:m; if(x=0) printf(n); else for(j=0;jx;j+) if(j=0)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号