c++笔试题两道,求解其中一道

1.Implement a functionthat prints the numbers from 1 to 100.But for multiples of three(3) print “Zif”insteadof the number and for the multiples of five(5) print “Nab”. For numbers whichare multiples
of both three and five print “ZifNab”.

void printZifNab(int from, int to)
	{
		if (from > to) return;
		for (int i = from; i <= to; i++)
		{
			if ((i % 3 == 0) && (i % 5 == 0))
			{
				printf("ZifNab\n");
			}
			else if ((i % 3 == 0))
			{
				printf("Zif\n");
			}
			else if ((i % 5 == 0))
			{
				printf("Nab\n");
			}
			else {
				printf("%d\n", i);
			}
		}
	}

2. unsigned short ConvertRGB888toRBG565(unsigned int nSourceColor)

Parameters: nSourceColor – 32 Bits RGB color to convert.

Return: The converted color as a 16 Bits RGB color.

This function converts an RGB 32 bits color format to RGB 16 bits color format. The 32 bits formats contains 8 bits of empty padding.8 bits for RED.8 bits for GREEN and 8 bits for BLUE. In that order. Now you have to down convert
this value to 16 bits. By have 5 bits for RED, 6 bits for GREEN and finally 5 bits for the BLUE.

Color Help:

Red = 0x00FF0000

Green = 0x0000FF00;

Blue = 0x000000FF;

White = 0x00FFFFFF;

Black = 0x00000000;

第二题求解。

时间: 2024-08-28 12:57:44

c++笔试题两道,求解其中一道的相关文章

c++笔试题两道,求解当中一道

1.Implement a functionthat prints the numbers from 1 to 100.But for multiples of three(3) print "Zif"insteadof the number and for the multiples of five(5) print "Nab". For numbers whichare multiples of both three and five print "Z

笔试题两道

昨天师兄去参加笔试,回来和我探讨了几题蛮有意思的,现在贴上来两题分享一下. 第一题 char c = 0xff; // 1111 1111 printf("%d",c); //以整数形式输出 有人直接写出是255,其实这是没有深入去研究,我也会经常犯这种错误: 下面我们仔细来探讨下,char是八位的有符号的,所以他的大小范围是在   -128~127  ,然本体我们说255必然是错的了:如果换位unsigned char的话,那么输出255肯定是对的. 下面我们探讨答案是多少,有些人可

百度脚本笔试题两道

1.写脚本实现,可以用shell.perl等.在目录/tmp下找到100个以abc开头的文件,然后把这些文件的第一行保存到文件new中. 2.写脚本实现,可以用shell.perl等.把文件b中有的,但是文件a中没有的所有行,保存为文件c,并统计c的行数. 解答思路: 1:觉得用shell更好一些,代码如下 #!/bin/sh for filename in `find /tmp -type f -name "abc*"|head -n 100` do sed -n '1p' $fil

[笔试题] 两个有趣的问题

有n瓶粉末,一瓶有毒.有毒的粉末融在水里一小时后水会变蓝.你有一些试管,问最少需要多少时间和多少试管就能确定毒粉末呢?不考虑粉末导入试管的时间. 这道题最基本的想法就是时间换空间或者空间换时间,即n个试管用1小时的时间,或者1个试管用n小时依次试验过来.在实际生产中应该偏向于空间换时间,因为硬性资源可以增加,而程序如果找不到好的优化方法运行时间基本也就定了,所以时间比空间重要的多.但是这两个显然都不是什么好办法.另外一个比较好的解决办法就是二分,把瓶子分两组,花一个小时排除掉一半的瓶子,再花一个

经典笔试题:两个线程交替打印奇偶数

一.采用对象的wait() notify()方法实现 package com.gaopeng.programming; import java.util.concurrent.TimeUnit; /** * 经典笔试题:交替打印奇偶数 采用对象的wait() notify()方法实现 * * @author gaopeng * */ public class OddEvenThread { private static volatile Integer counter = 0; public s

传说中的华为Python笔试题——两等长整数序列互换元素,序列和的差值最小(修正)

有两个序列a,b,大小都为n,序列元素的值任意整形数,无序:要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小. 1. 将两序列合并为一个序列,并排序,得到sourceList2. 拿出最大元素Big,次大的元素Small3. 在余下的序列S[:-2]进行平分,得到序列max,min4. 将Small加到max序列,将Big加大min序列,重新计算新序列和,和大的为max,小的为min. 如下,提供递归版本和迭代版本的解体思路: #!/usr/bin/env py

Linux运维工程师经典笔试题30道

1. cat -n file1 file2 命令的意思是? 把文件file1和file2连在一起,然后输出到屏幕上. 2. Linux下查看服务程序占用的端口命令是什么? netstat –apn 3. 对于Linux说法,下列说法正确的是() 线性访问内存非法时,当前线程会进入信号处理函数 4. 在Linux系统上,下面那个命令不可以用来查看文件内容() A cat    B ls     C less   D more 5. 下面哪个命令可以从文本文件的每一行中截取指定内容的数据. A cp

算法--两道百度笔试题

算法--两道百度笔试题 今天看到一位园友写了一篇关于百度的面试题的博客,成了评论头条,再下看了一下,非常感兴趣,那位博主的算法能力跟我一样需要提高,估计他的功力还在我之下,所以再下不才,在这里把自己的源码贴出来. 百度面试题(一):假设一整型数组存在若干正数和负数,现在通过某种算法使得该数组的所有负数在正数的左边,且保证负数和正数间元素相对位置不变.时空复杂度要求分别为:o(n)和o(1).          其实开始的时候我也是一头雾水,在纸上画画之后发现,其实就是一道变形的插入排序.幸运的是

告诉我图样图森破的两道简单C++笔试题

今晚刷了一大堆的笔试题,中规中矩,但是有两道做得很快但是都错了的题目,印象深刻. (要找工作的大四渣有没有共鸣,在学校明明很努力,但是总是跟不上时代,没有厉害的项目,也没有过人的竞赛成绩,内推屡屡失败,前天阿里巴巴在线笔试也被虐死,真心迷惘,唯独刷题搞笔试了.) 第一道题是关于宏定义的. #include<iostream> using namespace std; #define fun(n) (n-1)*n int main() { int x=3; cout<<fun(x+3