1. 程式人生 > >別太把面試題當回事兒

別太把面試題當回事兒

#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>

typedef 
   struct bignum
   {
      char dig ;
      struct bignum * next ;   
   }
* LIST  ;

LIST get_num( void );
void my_malloc( LIST * );
void output( LIST );
LIST add( LIST ,LIST );
void my_free( LIST );
void move( LIST * ); int get_dig( LIST ); void put( int , LIST * ); int main( void ) { LIST p_num1 , p_num2 ; LIST p_sum ; puts("輸入一個整數:"); p_num1 = get_num(); puts("輸入一個整數:"); p_num2 = get_num(); p_sum = add( p_num1 ,p_num2 ); output(p_sum); putchar('\n'); my_free(p_sum); my_free(p_num1); my_free(p_num2); system(
"PAUSE"); return 0; } void my_malloc( LIST * p ) { if ( ( * p = malloc( sizeof ( * * p ) )) == NULL ) exit(1); } //輸入,建立從低位到高位的連結串列 LIST get_num( void ) { LIST p = NULL ; int c ; while ( ( c = getchar() ) && isdigit( c ) ) { LIST tmp ; my_malloc (
&tmp ); tmp -> dig = c - '0'; tmp ->next = p ; p = tmp ; } return p; } void my_free( LIST p ) { if ( p == NULL ) return ; my_free( p->next ); free(p); } int get_dig( LIST p ) { if ( p == NULL ) return 0; return p ->dig ; } void move( LIST * pp ) { if ( *pp == NULL ) return ; *pp = (*pp) -> next ; } void put( int n , LIST * pp ) { my_malloc( pp ); (*pp)->dig = n ; (*pp)->next= NULL; } LIST add( LIST p1 ,LIST p2 ) { LIST p_res = NULL ; LIST * pp_res = & p_res ; char low , high = 0 ; while ( p1 != NULL || p2 != NULL ) { low = high ; //high為前一次的進位 low += get_dig( p1 ) + get_dig( p2 ) ; high = low / 10 ; //記下進位 low %= 10 ; put( low , pp_res ); //將和放入新結點 pp_res = & (*pp_res)->next ; move( &p1 ) , move( &p2 ) ; } if ( high != 0 ) //處理最高位的進位 put( high , pp_res ); return p_res; } void output( LIST p ) { if ( p == NULL ) return ; output( p->next ); putchar( p -> dig + '0' ); }

相關推薦

試題事兒

#include <stdio.h> #include <ctype.h> #include <stdlib.h> typedef struct bignum { char dig ; struct bignum

學習Python一年,基礎忘記了,看看試題回憶議,Python試題No3

這邊有幾個面試題,好棒 第1題:你如何管理不同版本的程式碼? git,svn兩個都要說到,github,碼雲也要提及,面試官想要的就是版本管理工具,你只要選擇一個你熟悉的,瘋狂的說一通就可以了,最好說一下自己以前做過哪些開源的專案,放在上面,沒有,就另當別論了。 第2題:python中生成隨機整數、隨機小數、

劍指offer - 試題33 - 數組排成最小的數

print offer include .html str 把數組排成最小的數 pri tr1 class #include<iostream> #include<vector> #include<string> #include<

SQL常見的一些試題(有用啦)

ali avatar max 一中 重要 綁定 for ast 狀況 SQL常見面試題 1.用一條SQL 語句 查詢出每門課都大於80 分的學生姓名 name kecheng fenshu張三 語文 81張三 數學 75李

C語言試題分類->調

指向 name 傳輸 join 接口 但是 PE AS 一個數 本文主要講解如果實現回調,特別是在封裝接口的時候,回調顯得特別重要,我們首先假設有兩個程序員在寫代碼,A程序員寫底層驅動接口,B程序員寫上層應用程序,然而此時底層驅動接口A有一個數據d需要傳輸給B,此時有兩種方

從深圳武漢的面試感想以及一些試題

動態分配內存 超過 singleton handler 要求 提高 art html 字段 從深圳回武漢的面試感想以及一些面試題 大家好,我是ITDragon龍,今天分享一些面試中常問的題目,和一些面試感受。我是四月二十五號離職,二十六號上午八點從深圳出發,下午三點到武漢。

試題數組排成最小的數

compare clas 一個 pub tor str 所有 重點 最小 題目描述:輸入一個正整數數組,把數組裏所有數字拼接起來排成一個數,打印能拼接出的所有數字中最小的一個。例如輸入數組{3,32,321},則打印出這三個數字能排成的最小數字為321323。 重點是重寫C

調函數”超難試題!!

代碼執行 代碼 同時 function 這一 his this push use 1 <script> 2 let app = { 3 ary: [], 4 use(fn) { 5 th

支付寶的螞蟻積分用途很多,不當事兒,用得好能省很多錢哦!

便利店 如果 .com 分用 哪些 人的需求 積分兌換 支付寶 轉賬 支付寶是目前最火的一款支付軟件,它可以轉賬、收款、花唄、借唄等功能,這些滿足了很多人的需求,所以用戶群體較大,但是在使用支付寶消費的同時,支付寶也給了我們一些權益,比如說螞蟻積分,其實,它有很多用途,別不

以後綴名為分類檔案分別儲存到數組裡(朋友的一道簡單試題

<?php $dir = scandir('C:\Users\Administrator\Desktop\images'); echo '<pre>'; // print_r($dir); $gif = array(); $png = array(); $jpg = array()

看以往北上廣深各公司iOS試題

回看以往的面試題,總結整理了一番 *面試心聲:總結起來就是把基礎的東西弄好,複雜的東西瞭解就ok了! *此題庫是北上廣深杭各大小公司面試題。 *注:如今社會還是得靠本事,看面試題只是多了一個機會,珍惜機會的同時提高自己硬實力才是真理! 友情提示:題庫過長,全200道只能上傳100道,需要

JavaScript同步、非同步、撥執行順序之經典閉包setTimeout試題分析

初心-楊瑞超個人部落格誠邀您加入qq群(IT-程式猿-技術交流群):757345416 大家注意了,教大家一道口訣: 同步優先、非同步靠邊、回撥墊底(讀起來不順) 用公式表達就是: 同步 => 非同步 => 回撥 有一道經典的面試題: for

試題19——怎樣一個單鏈表反序

(1)反轉一個連結串列。迴圈演算法: List reverse(List n) { if(!n) //判斷連結串列是否為空,為空退出 { return n; } list cur=n.next; //儲存頭結點的下個節點 list pre=n; /

JavaScript同步、非同步、撥執行順序之經典閉包(setTimeout試題分析)

同步、非同步回撥?傻傻分不清楚。 大家注意了,教大家一道口訣: 同步優先、非同步靠邊、回撥墊底! 公式表達:同步=>非同步=>回撥 這口訣的用處是什麼呢?至少應付面試,完全夠用! 例1:(經典面試題) for(var i=0; i<5; i++){ set

劍指offer--試題60:二叉樹列印成多行

題目描述 從上到下按層列印二叉樹,同一層結點從左至右輸出。每一層輸出一行。 python實現: # -*- coding:utf-8 -*- # class TreeNode: #     de

【劍指Offer學習】【試題60:二叉樹打印出多行】

題目:從上到下按層列印二叉樹,同一層的結點按從左到右的順序列印,每一層列印一行。 解題思路   用一個佇列來儲存將要列印的結點。為了把二叉樹的每一行單獨列印到一行裡,我們需要兩個變數:一個變量表示在當前的層中還沒有列印的結點數,另一個變量表示下一次結

一道試題excel的列的名稱轉換為數字

這是一道某公司的上機面試題: microsoft excel 中欄目是用 A,B,C...Z;AA,AB,...ZZ ... ZZZZ ....這樣表示序列的它對應是這樣 0,1,2,...25;26,27...701 ...475253 請寫出這個對應關係。 輸入是多行輸

【奇葩試題】因為難而被禁用的17道Google試題

即使是最成功的公司,它的招聘過程有時也會很不靠譜,經常會出一些奇怪的看似沒有答案的面試問題,但標準答案卻讓應聘者還沒來得及接近「起跑線」就被「退賽」了。Google 曾經就是這樣的公司,招聘人員會出一些難為應聘者的高質量問題。事實上,有些問題實在是太古怪了,最終被完全禁用。2

訪問你的域名的時候會發生什麼情況(試題

好,下面在瀏覽器中輸入你的網站域名(www.xxx.com),之後發生了什麼?(這個問題也是很多公司的面試題)我撿乾的說了啊,基礎不好的童鞋請自己去搜。 瀏覽器在通過域名通過dns伺服器找到你的伺服器外網ip,將http請求傳送到你的伺服器,在tcp3次握手之後(http下面是tcp/ip),通

劍指Offer:試題33——陣列排成最小的數(java實現)(未完待續)

問題描述: 輸入一個正整數陣列,把數組裡所有數字拼接起來排成一個數,列印能拼接出的所有數字中最小的一個。例如輸入陣列{3,32,321},則打印出這三個數字能排成的最小數字為321323。