C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

Similar documents
C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 告别 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 OJ9 - 参考答案 MASTER 2019 年 6 月 7 日 1

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9

C++ 程序设计 OJ4 - 参考答案 MASTER 2019 年 5 月 30 日 1

C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

02

C/C++程序设计 - 字符串与格式化输入/输出

c_cpp

新版 明解C++入門編

Microsoft PowerPoint - string_kruse [兼容模式]

第3章.doc

C/C++语言 - C/C++数据

untitled

C 1

Microsoft PowerPoint - 10 模板 Template.pptx

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

untitled

Microsoft Word - 第3章.doc

C/C++ - 文件IO

extend

Microsoft Word - CPE考生使用手冊 docx

untitled

C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1

《计算概论》课程 第十九讲 C 程序设计语言应用

IO

FY.DOC

第一章

北京大学

C/C++ - 数组与指针

C++ 程序设计 实验 3 - 参考答案 MASTER 2017 年 5 月 21 日 1

XV XV

C/C++ - 字符串与字符串函数

untitled

untitled

C++ 程序设计 实验 1 - 参考答案 MASTER 2017 年 5 月 21 日 1

CC213

新・解きながら学ぶJava

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc

C++11概要 ライブラリ編

C++ 程式設計

AM101-1(中文)11.cdr


Eclipse C C++, or

3.1 num = 3 ch = 'C' 2

提问袁小兵:

CHAPTER VC#

untitled

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2

Microsoft Word cppFinalSolution.doc

Strings

C/C++ - 函数

C++ 程序设计 OJ4 - 参考答案 MASTER 2019 年 5 月 3 日 1

C++ 程序设计 OJ4 - 参考答案 MASTER 2017 年 5 月 21 日 1

Microsoft Word 軟體設計第二部份範例試題_C++_ _1_.doc

Strings

C++ 程序设计 OJ4 - 参考答案 MASTER 2019 年 5 月 30 日 1

Microsoft PowerPoint - 6. 用户定义类型User-defined Datatypes.ppt [兼容模式]

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.07.doc

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

C++ 程序设计 OJ10 - 参考答案 MASTER 2019 年 6 月 17 日 1

nooog

新・解きながら学ぶC言語

C/C++ 语言 - 循环

Microsoft Word - well_game.doc

确定你的人生轨迹

C/C++ - 字符输入输出和字符确认

Chapter12 Derived Classes

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)

新・明解C言語入門編『索引』

第七讲 继承与多态

《C语言程序设计》教材习题参考答案

untitled

untitled

Microsoft PowerPoint - L17_Inheritance_v4.pptx

全国计算机技术与软件专业技术资格(水平)考试

Microsoft Word - 第7章 类与对象.docx

ebook39-5

NOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p

C/C++ - 结构体、共用体、枚举体

_汪_文前新ok[3.1].doc

ebook39-6

试卷代号 ~1075 座位号 E 口 国家开放大学 ( 中央广播电视大学 )20]5 年秋季学期 " 开放本科 " 期末考试 C 十十语言程序设计 试题 同二二十斗 2016 年 1 月 巴叫一 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new D. l

试卷代号 :1075 座位号 rn 国家开放大学 ( 中央广播电视大学 )2015 年秋季学期 " 开放本科 " 期末考试 c+ 十语言程序设计试题 2016 年 1 月 t 问一 Urr-f 斗 士 1 1. 下面的保留字 ( ) 不能作为函数的返回类型 A. void B. int C. new

立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :

(%) ,603,026, , ,604,438, (1) 1 (2) 1 (3) 1 (4) 1 (5) 1 (6) 1 8,603,456, , ,2

untitled

untitled

<4D F736F F D DA5BFA6A1C476C1C92DBEC7ACECB8D5A8F728B57BB35D292E646F63>

mvc

Chapter 9: Objects and Classes

C/C++语言 - 运算符、表达式和语句

untitled

Microsoft PowerPoint - 01_Introduction.ppt

chap07.key

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx

untitled

迅速在两个含有大量数据的文件中寻找相同的数据

Transcription:

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 月 3 日 1

1 INPUTOUTPUT 1 InputOutput 题目描述 用 cin 输入你的姓名 ( 没有空格 ) 和年龄 ( 整数 ), 并用 cout 输出 输入输出符合以下范例 输入 master 999 输出 I am master, 999 years old. 注意 "," 后面有一个空格,"." 结束, 没有其它格式输出 2

1 INPUTOUTPUT 1 #inclu de <iostream> 2 #include<s t r i n g > 3 4 using namespace std ; 6 7 i n t main ( ) 8 { 9 s t r i n g name ; 10 i n t year ; 11 cin >> name ; 12 cin >> year ; 13 cout << "I am " << name << ", " << year << " years old.\n" ; 14 return 0 ; 1 } 3

2 REPLACECHAR 2 ReplaceChar 题目描述 输入字符串 ( 没有空格字符 ), 替换把其中的字符 'c' 替换成 'C' 并使用以下 main 函数 : int main(){ char str[26]; cin >> str; Replace(str, 'c', 'C'); cout << str << endl; return 0; } 输入描述 字符串 输出描述 结果 输入 abcdedgc 输出 abcdedgc 4

2 REPLACECHAR 1 #i n c l u d e <iostream> 2 using namespace std ; 3 4 void Replace ( char * s t r, char chsrc, char chdst ) 6 { 7 while (* s t r ) 8 { 9 i f (* s t r==chsrc ) 10 { 11 * s t r = chdst ; 12 } 13 s t r ++; 14 } 1 } 16 17 i n t main ( ) { 18 char s t r [ 2 6 ] ; 19 cin >> s t r ; 20 Replace ( str, 'c', 'C') ; 21 cout << s t r << endl ; 22 return 0 ; 23 }

3 REPLACECHAR2 3 ReplaceChar2 题目描述 输入 string 字符串 str( 可以包含空格字符 ), 替换把其中的字符 'c' 替换成 'C' int main(){ string str; // 补充输入 Replace(str, 'c', 'C'); cout << str << endl; return 0; } 输入描述 字符串 输出描述 结果 输入 abcdedgc 输出 abcdedgc 6

3 REPLACECHAR2 1 #i n c l u d e <iostream> 2 #i n c l u d e <s t r i n g > 3 using namespace std ; 4 6 void Replace ( s t r i n g &str, char chsrc, char chdst ) 7 { 8 f o r ( i n t i =0; i<s t r. length ( ) ; i++) 9 { 10 i f ( s t r [ i ]==chsrc ) 11 { 12 s t r [ i ] = chdst ; 13 } 14 } 1 } 16 17 i n t main ( ) { 18 s t r i n g s t r ; 19 g e t l i n e ( cin, s t r ) ; 20 Replace ( str, 'c', 'C') ; 21 cout << s t r << endl ; 22 return 0 ; 23 } 7

4 DYNAMICARRAY 4 DynamicArray 题目描述 计算输入小数的和 输入第一行为小数个数, 第二行为小数 ( 空格隔开 ), 输出这些小数的和 输入 第一行为小数个数, 第二行为小数 ( 空格隔开 ) 输出 这些小数的和 输入 1.1 2.2 3.3 4.4. 输出 16. 8

DYNAMICARRAY DynamicArray 题目描述 计算输入小数的和 输入第一行为小数个数, 第二行为小数 ( 空格隔开 ), 输出这些小数的和 输入 第一行为小数个数, 第二行为小数 ( 空格隔开 ) 输出 这些小数的和 输入 1.1 2.2 3.3 4.4. 输出 16. 9

DYNAMICARRAY 1 #i n c l u d e <iostream> 2 #i n c l u d e <s t r i n g > 3 using namespace std ; 4 6 double Sum( double arr [ ], i n t n) 7 { 8 double sum = 0. 0 ; 9 f o r ( i n t i =0; i<n ; i++) 10 sum += arr [ i ] ; 11 return sum ; 12 } 13 14 double * Input ( i n t n) 1 { 16 double * arr = new double [ n ] ; 17 f o r ( i n t i =0; i<n ; i++) 18 cin >> arr [ i ] ; 19 return arr ; 20 } 21 22 23 i n t main ( ) 24 { 2 i n t n ; 26 cin >> n ; 27 double * arr ; 28 arr = Input (n) ; 29 cout << Sum( arr, n) << endl ; 30 d e l e t e [ ] arr ; 31 return 0 ; 32 } 10

6 ARRAY 6 Array 题目描述 计算输入小数的和 输入第一行为小数个数, 第二行为小数 ( 空格隔开 ), 输出这些小数的和 并使用以下 main 函数 int main() { int n; cin >> n; vector<double> arr; Input(arr, n); cout << Sum(arr) << endl; return 0; } 输入 第一行为小数个数, 第二行为小数 ( 空格隔开 ) 输出 小数的和 输入 1.1 2.2 3.3 4.4. 输出 16. 提示需要使用引用 以及 vector 的常用方法 如增加元素 push_back(), 向量的长度 size() 等 11

6 ARRAY 1 #i n c l u d e <iostream> 2 #i n c l u d e <vector> 3 using namespace std ; 4 6 double Sum( vector<double> &a r r ) 7 { 8 double sum = 0. 0 ; 9 f o r ( i n t i =0; i<arr. s i z e ( ) ; i++) 10 sum += arr [ i ] ; 11 return sum ; 12 } 13 14 void Input ( vector<double> &arr, i n t n) 1 { 16 17 f o r ( i n t i =0; i<n ; i++) 18 { 19 double temp ; 20 cin >> temp ; 21 arr. push_back (temp) ; 22 } 23 } 24 2 26 i n t main ( ) 27 { 28 i n t n ; 29 cin >> n ; 30 vector<double> arr ; 31 Input ( arr, n) ; 32 cout << Sum( arr ) << endl ; 33 return 0 ; 34 } 12

7 STRUCT 7 Struct 题目描述 Vector2D 为二维坐标, 输入两个向量, 计算这两个相邻的和 并使用以下 main 函数测试 int main() { Vector2D v1,v2; Input(v1); Input(&v2); Vector2D v = Sum(v1, v2); } cout << v.x << " " << v.y << endl; return 0; 输入 第一行第一个向量, 第二行为第二个向量 输出 向量的和 输入 1.1 3.3 4.4 6.6 输出. 9.9 13

7 STRUCT 1 #i n c l u d e <iostream> 2 #i n c l u d e <vector> 3 using namespace std ; 4 s t r u c t Vector2D 6 { 7 double x, y ; 8 } ; 9 10 void Input ( Vector2D &v ) 11 { 12 cin >> v. x >> v. y ; 13 } 14 1 void Input ( Vector2D *v ) 16 { 17 cin >> v >x >> v >y ; 18 } 19 20 21 Vector2D Sum( const Vector2D &v1, const Vector2D &v2 ) 22 { 23 Vector2D v ; 24 v. x = v1. x+v2. x ; 2 v. y = v1. y+v2. y ; 26 return v ; 27 } 28 29 30 i n t main ( ) 31 { 32 Vector2D v1, v2 ; 33 Input ( v1 ) ; 34 Input(&v2 ) ; 3 Vector2D v = Sum( v1, v2 ) ; 36 37 cout << v. x << " " << v. y << endl ; 38 return 0 ; 39 } 14