转c笔试题ndyiu

单向链表的反转是一个经常被问到的一个面试题,也是一个非常基础的问题。比如一个链表是这样的: 1->2->3->4->5 通过反转后成为5->4->3->2->1。

最容易想到的方法遍历一遍链表,利用一个辅助指针,存储遍历过程中当前指针指向的下一个元素,然后将当前节点元素的指针反转后,利用已经存储的指针往后面继续遍历。源代码如下:

还有一种利用递归的方法。这种方法的基本思想是在反转当前节点之前先调用递归函数反转后续节点。源代码如下。不过这个方法有一个缺点,就是在反转后的最后一个结点会形成一个环,所以必须将函数的返回的节点的next域置为NULL。因为要改变head指针,所以我用了引用。算法的源代码如下:

②已知String类定义如下:

class String{public:String(const char *str = NULL); // 通用构造函数String(const String &another); // 拷贝构造函数~ String(); // 析构函数String & operater =(const String &rhs); // 赋值函数private:char *m_data; // 用于保存字符串};尝试写出类的成员函数实现。答案:String::String(const char *str){if ( str == NULL ) //strlen在参数为NULL时会抛异常才会有这步判断{m_data = new char[1] ;m_data[0] = '/0' ;}else{m_data = new char[strlen(str) + 1];strcpy(m_data,str);}} String::String(const String &another){m_data = new char[strlen(another.m_data) + 1];strcpy(m_data,other.m_data);}String& String::operator =(const String &rhs){if ( this == &rhs)return *this ;delete []m_data; //删除原来的数据,新开一块内存m_data = new char[strlen(rhs.m_data) + 1];strcpy(m_data,rhs.m_data);return *this ;}String::~String(){delete []m_data ;}

THE END
0.C++实现字符菱形图案本文介绍如何使用C++编程语言,根据给定字符创建一个对角线长度为5的倾斜菱形图案。内容涉及从终端获取输入、格式化输出、字符变量以及for循环的运用,提供了三种不同方法的实现代码示例。 002:字符菱形 描述 给定一个字符,用它构造一个对角线长5个字符,倾斜放置的菱形。 jvzquC41dnuh0lxfp0tfv8|qaco`n~ta1cxuklqg1fkucrqu1383:9>;;3
1.流程控制使用嵌套for循环显示菱形九九乘法表(一)要显示一个菱形,我们可以先通过一个外层 for 循环来控制行数,然后再通过一个内层 for 循环来控制每一行中的字符数。具体步骤如下: 计算菱形的边长 在菱形的中心,有一个单独的字符,因此菱形的宽度必须是奇数。我们可以通过用户输入来设置菱形的边长,或者直接在程序中指定一个奇数值。 jvzquC41enuvf7ygpekov7hqo1jfxnqqrgx0c{ykenk04;=62;:
2.数字图像处理与机器视觉——VisualC++与Matlab实现(第2版)空域和频域滤波、小波变换、图像复原、彩色图像处理、形态学处理、图像分割、图像压缩以及图像特征提取等;同时对机器视觉进行了前导性的探究,重点介绍了3种目前在工程技术领域非常流行的分类技术——人工神经网络(ANN)、支持向量机(SVM)和AdaBoost,并在配套给出的识别案例中直击光学字符识别(OCR)、人脸识别和性别分类jvzquC41yy}/gyzdkv4dqv4dqqqEg}fknuEjfFS334;8
3.PTA程序设计天梯赛(1~180题)51CTO博客37、 日期格式化 (5 分) 38、 阅览室 (20 分) 39、 稳赢 (15 分) 40、 宇宙无敌大招呼 (5 分) 41、整除光棍 (20 分) 42、 装睡 (10 分) 43、矩阵A乘以B (15 分) 44、 倒数第N个字符串 (15 分) 45、打折 (5 分) 46、 2018我们要赢 (5 分) jvzquC41dnuh0>6evq4dqv4wa3;19<9:81976B=63
4.输出菱形图案第1关:输出菱形字符图案文章浏览阅读2.4k次。输出菱形图案描述牛牛尝试用键盘读入一个字符,然后在屏幕上显示一个用这个字符填充的对角线长5个字符,倾斜放置的菱形。输入描述:输入一个char类型字符输出描述:输出一个用这个字符填充的对角线长5个字符,倾斜放置的菱形示例1解答#include<stdio.h>jvzquC41dnuh0lxfp0tfv8|gkzooa=992::968ftvkimg8igvcomu86453<78@8
5.c++字符菱形字符菱形c++给定一个字符,用它构造一个对角线长55个字符,倾斜放置的菱形。 输入 输入只有一行, 包含一个字符。 输出 该字符构成的菱形。 样例输入 ! 样例输出 c++ AC代码如下: #include<iostream> using namespace std; char a; int main(){ cin>>a; for(int i=1;i<=3;i++){ for(int j=1;j<=4-i;j++jvzquC41dnuh0lxfp0tfv8yv37?299792;=0c{ykenk0fnyckny03=8897>1: