教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

山东科技大学OJ集锦(4)

来源:网络收集 时间:2026-10-05
导读: Append Code (2_3) 题目描述 输出1~k之间是m的倍数或n的倍数、但不是m和n的公倍数的数,其中1 输入三个整数,依次为k、m、 n。 输出 从小到大输出符合题意的所有整数,两数之间用一个空格分开。 样例输入 15 2 3

Append Code

(2_3) 题目描述

输出1~k之间是m的倍数或n的倍数、但不是m和n的公倍数的数,其中1<=m,n

输入三个整数,依次为k、m、 n。 输出

从小到大输出符合题意的所有整数,两数之间用一个空格分开。 样例输入 15 2 3 样例输出

2 3 4 8 9 10 14 15 提示

难点在于输出格式的控制:空格在数的中间,学会用循环时边界情况的特殊处理。 #include int main() {

int k,m,n,a,b,i,c,d;

scanf(\ if (m>n) c=m,d=n; else c=n,d=m; printf(\

for (i=d+1;i<=k;i++) { a=i%m; b=i%n; if (a==0&&b!=0||a!=0&&b==0) printf(\ }

printf(\ return 0; }

(2_4)Description

计算a+b,0<=a,b<1000。 Input

输入有多对整数a和b组成,每对a和b占一行,a,b用空格分开。 Output

每行输出一个a+b的值,顺序与输入对应。 Sample Input 1 2 10 20

Sample Output 3 30 HINT

OJ系统上测试输入结束符为EOF(End Of File),其值为-1。用scanf()把文件所有内容读完后,会读到EOF,所以可以用来判断输入是否完成,测试时可以用Ctrl+Z产生EOF。本题解法参看FAQ。 #include int main() {

int a,b;

while(scanf(\ printf(\ return 0; }

Append Code

(2_5)问题 E: A+B Problem (II) : Input/Output Pratice 时间限制: 1 Sec 内存限制: 2 MB 提交: 242 解决: 177 [提交][状态][讨论版] 题目描述

计算a+b,0<=a,b<1000。 输入

输入的第一行是一个整数N,后面有N对整数a和b,每对a和b占一行,a,b用空格分开。 输出

每行输出一个a+b的和,顺序与输入对应。 样例输入 2 1 2 10 20 样例输出 3 30 提示

#include int main() {

int a[1000],b[1000],N,i; scanf(\ for (i=1;i<=N;i++) scanf(\ for (i=1;i<=N;i++)

printf(\ return 0; }

N给出了测试样例数,用for循环处理方便。

(2_6)问题 F: A+B Problem (III) : Input/Output Pratice 时间限制: 1 Sec 内存限制: 2 MB

提交: 250 解决: 154 [提交][状态][讨论版] 题目描述

计算a+b,0<=a,b<1000。 输入

输入有多对整数a和b组成,每对a和b占一行,a,b用空格分开。当测试样为0 0时表示输入结束,0 0不参与运算。 输出

每行输出一个a+b的值,顺序与输入对应。 样例输入 1 2 10 20 0 0

样例输出 3 30 提示

练习break的使用。 #include int main() {

int a,b,sum;

while (scanf(\ { if (a==0&&b==0) break; else { sum=a+b; printf(\ } }

return 0; }

(2_7)问题 G: A+B Problem (IV) : Input/Output Pratice 时间限制: 1 Sec 内存限制: 2 MB 提交: 284 解决: 151 [提交][状态][讨论版] 题目描述

计算a+b,0<=a,b<1000。 输入

输入有多对整数a和b组成,每对a和b占一行,a,b用空格分开。 输出

每行输出一个a+b的值,顺序与输入对应。每个格式样例之间用一个空行分隔开。 样例输入

1 2 10 20 15 35 样例输出 3 30 50 提示

由于输出的和比空行多一个,所以全部计算放在一个循环里是不行的,必须要特殊处理开头或者结尾。

#include int main() { int a,b,sum; scanf(\ printf(\ while (scanf(\ { sum=a+b;

printf(\ } }

(2_8)问题 H: n个数的最大值和最小值 时间限制: 1 Sec 内存限制: 2 MB 提交: 304 解决: 159 [提交][状态][讨论版] 题目描述

找出n个数中最大的数和最小的数,并将它们的值输出出来。 输入

输入为n+1个整数,都在int类型范围内。这些数可能用若干空格或者换行符分隔开。 输入的第1个数为n,表示后续有n个数输入。从输入的第2个数开始,求出直到第n+1个数中最大的数和最小的数。 输出

输出为两行,格式见sample。 样例输入 3 0 1 -1 样例输出

The maximum number is 1. The minimum number is -1. 提示

分隔符是空格还是回车都是空白符,对scanf(\来说没有区别;先读入n,然后用for循环就很容易控制读入n个数的过程。 #include int main()

…… 此处隐藏:322字,全部文档内容请下载后查看。喜欢就下载吧 ……
山东科技大学OJ集锦(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/612115.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)