cpp语言程序设计教程第七章的一道编程题
按下列要求实现一个有关学生成绩的操作。
该类名为Student。
(1)每个学生的信息包含有姓名(字符数组)和成绩(int型)。
(2)共有5个学生,用对象数组表示。
(3)计算出5个学生中的最高分,并输出姓名及分数。
课后答案是这么写的:
- #include <iostream.h>
- #include <string.h>
- class Student
- {
- public:
- Student(char s[],int gr)
- { strcpy(name,s); grade=gr; }
- friend void fun();
- private:
- char name[10];
- int grade;
- };
- Student ss[5]={Student("马力",85),Student("王欣",96),Student("李明",82),
- Student("赵亮",78),Student("张京",80)};
- void fun()
- {
- int k=0;
- for(int i=0;i<5;i++)
- if(ss[i].grade>ss[0].grade)
- k=i;
- cout<<"最高分的学生姓名和成绩如下: \n"<<ss[k].name<<','<<ss[k].grade<<endl;
- }
- void main()
- {
- fun();
- }
看了答案,我去,真的没话说了,太牛了,对象还搞成了全局的,还要按个赋值,一次一次打student很爽么?然后又搞了个友元函数,是你这么用的?
鄙人也写了一个感觉还行,原来静态成员函数是这么用的啊:
- #include <iostream>
- #include<stdio.h>
- #include<string.h>
- #include<Shlwapi.h>
- using namespace std;
- class student
- {
- int _id;
- char _name[64];
- int _grade;
- public:
- void ipt(char* name,int id,int grade)
- {
- StrCpyN(_name,name,64);
- _id=id;
- _grade=grade;
- }
- student() {}; //如果定义一个有参数的构造函数,系统就不会给你分配空参数的构造函数;
- static void TopMost(int count_t,student stu[])
- {
- student largest=stu[0];
- for(int k=0; k<count_t; k++)
- {
- if(largest._grade<stu[k]._grade)largest=stu[k];
- }
- cout<<"the most top stu is "<<largest._name<<endl;
- cout<<"his score is "<<largest._grade<<endl;
- cout<<"his id is "<<largest._id<<endl;
- }
- };
- int main()
- {
- student sss[5];
- char name[64][5]= {"a","b","c","d","e"};
- int score[5]= {44,33,22,55,61};
- for(int i=0; i<5; i++)
- {
- sss[i].ipt(name[i],i+1,score[i]);
- };
- student::TopMost(5,sss);
- cout<<"this is only a test for win32-code::blocks"<<endl;
- return 0;
- }
好坏自己判断吧~
cpp语言程序设计教程第七章的一道编程题的更多相关文章
- 《C语言程序设计教程》学习笔记
<C语言程序设计教程>--朱鸣华.刘旭麟等 第一章 C语言概述 1.C语言的特点: 1)兼具高级.低级语言的双重能力(C语言允许直接访问物理地址,能够进行位操作,能实现汇编语言的大部分功能 ...
- Objective-C 基础教程第七章,深入理解Xcode
目录 Object-C 基础教程第七章,深入理解Xcode 0x00 前言 0x01 创建工程界面 0x02 主程序界面 ①顶部 Top Test(测试) Profile(动态分析) Analyze( ...
- 2017.2.12 开涛shiro教程-第七章-与Web集成
2017.2.9 开涛shiro教程-第七章-与Web集成(一) 原博客地址:http://jinnianshilongnian.iteye.com/blog/2018398 根据下载的pdf学习. ...
- [ABP教程]第七章 作者:数据库集成
Web开发教程7 作者:数据库集成 关于此教程 在这个教程系列中,你将要构建一个基于ABP框架的应用程序 Acme.BookStore.这个应用程序被用于甘丽图书页面机器作者.它将用以下开发技术: E ...
- Cobalt Strike系列教程第七章:提权与横向移动
Cobalt Strike系列教程分享如约而至,新关注的小伙伴可以先回顾一下前面的内容: Cobalt Strike系列教程第一章:简介与安装 Cobalt Strike系列教程第二章:Beacon详 ...
- python 教程 第十七章、 网络编程
第十七章. 网络编程 1) FTP客户端 import ftplib import os import socket HOST = '127.0.0.1' DIRN = 'menus' FILE ...
- 全国计算机等级考试二级教程-C语言程序设计_第8章_地址和指针
面试: unsigned int *p1 = # int *p2 = # #define _CRT_SECURE_NO_WARNINGS #include<std ...
- 全国计算机等级考试二级教程-C语言程序设计_第16章_文件
写入一段文本到文件 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> main() { ...
- 全国计算机等级考试二级教程-C语言程序设计_第15章_位运算
位运算,不适用于实数,仅仅适用于整数.字符. C语言的位运算只能操作整数.字符,实数是指数方式表示的,不适用于位运算. #define _CRT_SECURE_NO_WARNINGS #include ...
随机推荐
- 让网页显示ajax的查询数据
今天下午做一个项目小练习.需要把查询日志的内容显示到网页上来.一开始陷入了一个误区. 一直以来我这个小项目需要访问ashx来生成html的代码.后台用的Razor模板引擎. 刚开始显示用户列表时.因为 ...
- mysql replace()用法
mysql replace实例说明: UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def'); 释:表tb1中字段f1中为abc的值更新为def.一般用于某字段中值存在 ...
- LeetCode13.罗马数字转整数 JavaScript
罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并 ...
- 分享一个带有合计行功能的DataGridView扩展
因为一个Winform的项目中需要用到带有合计行的表格,并且需要满足以下需求: 合计行可自动对需要求和的列进行求和计算; 合计行必须固定(冻结)在表格的最底部,且其位置不受滚动条的滚动而移动; 可以设 ...
- CentOS 7 安装oracle 11.2.0.4 Error in invoking target 'agent nmhs' of makefile
%86时出现报错 Error in invoking target 'agent nmhs' of makefile 解决方案在makefile中添加链接libnnz11库的参数修改$ORACLE ...
- HTML页面常用的编辑框
public class FormInputUtil { /** * 获取表单中的InputText * * @param name * @param rs * @return */ public s ...
- javascript 中数组的创建 添加 与将数组转换成字符串 页面三种提交请求的方式
创建js数组 var array=new Array(); Java中创建数组 private String[] array=new String[3]; 两个完全不同的,js中是可变长度的 添加内容 ...
- zepto 基础知识(1)
1.$() 的用法. 获取元素 $('div') //获取所有页面中的div元素 $('#foo') // 获取ID 为"foo"的元素 创建元素 $("<p> ...
- PHPStorm+Xdebug断点远程调试PHP xdebug安装
一.xdebug安装 wget http://www.xdebug.org/files/xdebug-2.2.3.tgz #下载Xdebug tar xzf xdebug-2.2.3.tgz cd x ...
- php GD图片四角圆形处理
<?php /** * blog:http://www.zhaokeli.com * 处理四角圆图片 * @param string $imgpath 源图片路径 * @param intege ...