C/C++基础笔试题1.1.1(运算符十问)

本文似乎都是问题,意在引起思考,回忆,主题是运算符,另外这些问题是没有特别的逻辑上的关系,只是我想到的就问了,虽然是随便问,但是你能不能随便答呢?。

运算符,我们在每一个程序中都会用到,也是最最基础的基本功,本系列C/C++基础笔试题等,是没有纲要,没有规律的一系列博文。

为什么这样子,因为作者是渣阿,他只能学一点说一点,力求通俗阿,傻瓜但不失主线阿。

1.0写的是字节对齐,没看过有兴趣的朋友可以戳这里。1.1写的是与运算符相关的内容,你最“熟悉”的“朋友”。

首先,我想先问大家几个问题?

1.你脑海中的运算符有哪些,按优先级排个序?

2.malloc/free 和 new/delete的区别?(我没有跑题!)

3.让你来写一个重载函数++i,i++,你怎么写?

来到这里,可能你还是喜欢读程序吧。

4.来看个程序

#include<iostream>
using namespace std;

int main(){
    int x=3;
    cout<<x+x%2==1<<endl;
     return 0;
}

看看这个程序输出结果跟你想的一样不一样?被坑了吗?

5.再来看一个?跟你想的又一样不一样?

#include<iostream>
using namespace std;
int main(){
    int x=3;
    cout<<((x+x%2)==1)<<endl;
    cout<<(x+(x%2==1))<<endl;

return 0;
}

如果你一直错, 或者基本错的话,那么,你就跟我一样悲剧了。另外,这些题目在哪里来的?其实是我在刷ACM的时候犯的一些小错。放这种题目,其实,我只是想引出优先级。

6.来个难一点的,感觉一下逗号和括号的恶心?

#include<iostream>
using namespace std;

void fun0(int x,int y ,int z){
  cout<<x<<" "<<y<<" "<<z<<endl;
  int a=2,b=3,c=7;
  x=a*b,c;
  y=(a*b+z,z=c);
  cout<<x<<" "<<y<<" "<<z<<endl;
}
void fun1(int x,int y,int z){
  cout<<x<<" "<<y<<" "<<z<<endl;
  int a=2,b=3,c=7;
  y=(x=a+b+z),(z=b+c);
  cout<<x<<" "<<y<<" "<<z<<endl;
}
void fun2(int x,int y,int z){
  cout<<x<<" "<<y<<" "<<z<<endl;
  int a=2,b=3,c=7;
  y=((x=a+b+z),(z=b+c));
  cout<<x<<" "<<y<<" "<<z<<endl;
}
int main(){
    int x,y,z;
    fun0(x,y,z);
    fun1(x,y,z);
    fun2(x,y,z);
}

现在想想,还是做前面几个题目比较和谐。

为了和谐,我还是问一些YES OR NO的问题?

7.我们用%来做余运算,%只能应用于正整数对吗?

8.域运算符::我们常常用到,请问::可以重载吗?

9.运算符重载作为非成员函数重载时必须定义为友元函数?

10. 运算符必须是符号吗?(即只能是+,-,*,/,::之类的吗?)

如果你觉得我问的问题很无理取闹的话,额,的确是的,如果你对细节不追求,是很无理取闹的。(其实是你对基础功不追求)

对于上述十个问题,你有想法可以在评论中提出,好让其他朋友看到一起探究。

至于所谓的解释和标准答案,我会在1.1.2中提到,而1.1.2什么时候出来呢?估计明天或者后天吧?因为我在实习,需求改了,所以很烦呢!哎...暂时确定不下来。

C/C++基础笔试题1.1.1(运算符十问),布布扣,bubuko.com

时间: 2024-08-24 11:11:26

C/C++基础笔试题1.1.1(运算符十问)的相关文章

C/C++基础笔试题1.0(字节对齐)

传说中博文标题带有笔试.面试等点击率都会很高呢?我也试试! 众生皆是码农命,我们这种即将战秋招的渣渣,既没有超凡的能力,也没有流弊的项目,怎么破? 唯独苦苦怒刷基础,笔试题,面试题,因为以前常常刷OJ,所以很多面试题的编程题倒是可以解,但是笔试题或者基础题我就不记得了,唯独慢慢回想. 况且,写这种面试题,谁能写得赢JULY神. 今天首先讲得是字节对齐. 注意:我是一个渣,所以我只能按自己的理解来说了(要不然怎么会这么惨呢?).如果你想看大神的解释,请看这里 来看个题目 #include <ios

C/C++基础笔试题1.1.2(运算符十问之解)

上一节写了一篇不负责任的博文,被踩了呢,导致有点失落呢. 其实纯问问题,的确是不好,因为看博文很大一个优势就是为了更直接看到想看的东西. 好啦,回归整题. 1.你脑海中的运算符有哪些,按优先级排个序?  这个问题明显没有标准答案,但是最基本的还是要有吧. 比如+ ,- ,* ,/ ,%, 前++/--,后++/--,=,<, >, << ,>>,(),&,^,|,~以及逗号","域名符"::",&&,||等

Android开发面试经——4.常见Java基础笔试题

关注finddreams博客:http://blog.csdn.net/finddreams/article/details/44403041 因为Androd使用Java语言来编程的,所以我们做Android开发全面的掌握Java基础是必须的.在面试的过程中,我们发现很多公司发的笔试题有很多知识点都是Java的,搞安卓久了,Java基础的一些知识点也都快忘了,今天就让我们来一起复习一些Java基础,希望能在面试中用到: 1.Overload和Override的区别.Overloaded的方法是

Android开发面试经——2.常见Android基础笔试题

关注finddreams博客: http://blog.csdn.net/finddreams/article/details/44219231 正值跳槽的热季,整理一下Android面试中最常考的笔试题,为下次找工作时做好充分准备,这是Android的基础部分: 1.Android四大组件是什么?作用以及应用场景? Android 的四大组件分别是是Activity,Service,BroadcastReceiver和ContentProvider: Activity: 从字面上理解,Acti

iOS基础笔试题-(2)

12. obj在编译时和运行时分别时什么类型的对象 如下面的代码,obj在编译时和运行时分别时什么类型的对象: 1 2 3 NSString *obj = [[NSData alloc] init]; 参考答案: 在编译时,我们所声明的obj是NSString *类型,因此是NSString类型对象.在运行时,由于指针obj所指向的是NSData类型对象的内存,因此实际上是NSData类型的对象.在编译时,这一行代码会转换成类似这样: 1 2 3 4 NSString *obj = ((id (

基础笔试题

1.在MySQL中,下列关于触发机器的描述正确的是(    ) 正确答案 :AC A    MySQL的触发器只支持行级出发,不支持语句级触发 B    触发器可以调用将数据返回客户端的存储程序 C    在MySQL中,使用new和old引用触发器中发生的记录内容 D    在触发器中可以使用显示或者隐式方式开始或结束事务的语句 2.假如在MySQL中有存储过程proc1(员工编号,月份)用来查询员工的工资,两个参数类型均为字符类型,则下列调用存储过程的方法正确的是(    ) 正确答案 :

iOS开发基础笔试题(3)

前言 以下部分题目来源于网络,笔者在此处收集起来,既是要巩固自我,也希望能够帮助到同样需要的人!参考答案均为笔者所写,其有疑问或者出错之处,请在评论中提出,谢谢!不喜勿喷! 1.即时聊天App不会采用的网络传输方式 1 2 3 4 5 6 A UDP B TCP C HTTP D FTP 参考答案:D FTP:是文件传输协议,是File Transfer Protocol的简称,它的作用是用于控制互联网上文件的双向传输,因此一定不会是即时聊天使用的: UDP:是面向无连接的传输层协议,数据传输是

iOS开发基础笔试题-(1)

前言 以下部分题目来源于网络,笔者在此处收集起来,既是要巩固自我,也希望能够帮助到同样需要的人!参考答案均为笔者所写,其有疑问或者出错之处,请在评论中提出,谢谢!不喜勿喷! 1. #import和#include的区别? 参考答案: #import是Objective-C导入头文件的语法,可保证不会重复导入.#include是C/C++导入头文件的语法,如果是Objective-C与C/C++混编码,对于C/C++类型的文件,还是使用#include来引入,这种写法需要添加防重复导入的语法. 2

Java基础笔试题

一. 选择题(共50题,每题2分,共100分.多选题选不全或选错都不得分.) 1. 以下属于面向对象的特征的是(C,D).(两项) A) 重载 B) 重写 C) 封装 D) 继承 解析:面向对象的三大特性:封装.继承.多态. 2. 以下代码运行输出是(C) public class Person{ private String name="Person"; int age=0; } public class Child extends Person{ public String gra