1.請定義乙個巨集,比較兩個數a、b的大小,不能使用大於、小於、if語句
// 這樣轉向定義應該不算違規吧!^_^
#include
"stdafx.h"
#include
#include
using
namespace
std;
#define
cmp(x,y) compare(x,y)
intcompare(
inta,
intb)
int_tmain()
jruv (~~~一葉落而知天下秋~~~) 的答案:
#define compare(a,b) ((a)-(b)) //<0: a0:a>b
2.如何輸出原始檔的標題和目前執行行的行數
cout << "filename " << __file__ << " line " << __line__ << endl;
3.兩個數相乘,小數點後位數沒有限制,請寫乙個高精度演算法
輸入 string a, string b; 計算string c=a*b; 返回 c;
1,紀錄小數點在a,b中的位置l1,l2, 則需要小數點後移動位置數為l=length(a)+length(b)-l1-l2-2;
2,去掉a,b中的小數點,(a,b小數點後移,使a,b變為整數)
3,計算c=a*b; (同整數的大數相乘演算法)
4,輸出c,(注意在輸出倒數第l個數時,輸出乙個小數點。若是輸出的數少於l個,就補0)
du51(鬱鬱思揚)的答案:
變為整數求就行了.輸入的時候記一下,小數點位置..輸出再做點文章就行了.
下面的是大整數的運算.
#include
using namespace std;
#define max 10000
struct node;
void output(node *head)
void mul(char *a,char *b,int pos)
if(*ap==0)temp1=temp;
else
p1->data=temp1%10; //留當前位
temp=temp1/10; //進製以int的形式留下.
p1=p;p=p->next; //被乘數到下一位
} ap=a;bp++;q=q->next; //q進下一位
} p=head;
output(p); //顯示
coutdelete head;
head=p;
} }
int main()
; void output(node *head,int pos)
void mul(char *a,char *b,int pos)
if(*ap==0)temp1=temp;
else
p1->data=temp1%10; //留當前位
temp=temp1/10; //進製以int的形式留下.
p1=p;p=p->next; //被乘數到下一位
} ap=a;bp++;q=q->next; //q進下一位
} p=head;
output(p,pos); //顯示
coutdelete head;
head=p;
} }
int main()
intmain()
5、有a、
b、c、
d四個人,要在夜裡過一座橋。他們通過這座橋分別需要耗時1、
2、5、
10分鐘,只有一支手電,並且同時最多只能兩個人一起過橋。請問,如何安排,能夠在
17分鐘內這四個人都過橋?
solution:關鍵是時間最長的兩個人必須同時過橋
騰訊筆試題及答案
1.請定義乙個巨集,比較兩個數a b的大小,不能使用大於 小於 if語句 這樣轉向定義應該不算違規吧!include stdafx.h include include using namespace std define cmp x,y compare x,y intcompare inta,int...
硬體筆試題及答案
引用 sandy 20008 的 硬體筆試題及答案 1 同步電路和非同步電路的區別是什麼?仕蘭微電子 非同步電路主要是組合邏輯電路,用於產生位址解碼器 或 的讀寫控制訊號脈衝,但它同時也用在時序電路中,此時它沒有統一的時鐘,狀態變化的時刻是不穩定的,通常輸入訊號只在電路處於穩定狀態時才發生變化。也就...
騰訊2016校招筆試題(含答案)
1 父母生了兩個小孩。第乙個是男孩,兩個都是男孩的概率是多少?答案 1 2 解釋 第乙個已經為男孩,第二個只有兩種可能男孩或女孩 概率 1乘二分之一 2 設k1,k2是方陣a的兩個不同的特徵值,a與b是屬於k1,k2的特徵向量,則有a與b是 a 線性相關 b 線性無關 c 對應分量成比例 d 可能有...