上一页 1 2 3 4 5 6 7 8 ··· 48 下一页
摘要: 谁给说说这几个函数的内存问题到底是怎么回事。。。题目一:void GetMemory( char *p){ p = (char *) malloc( 100 );}void Test(void){ char *str=NULL; GetMemory(str); strcpy( str, "hello world" ); puts(str);}调用GetMemory(); 函数的时候,把str指针赋值给了指针p,然后在函数内部,动态申请了一个空间,让指针p指向了这块空间,但是str并没有指向这块空间,GetMemory函数内部操作的是指针p,并不是指针str,所以调用strc 阅读全文
posted @ 2011-08-23 16:59 新技术 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 24点是一种老少皆宜的游戏,它的具体玩法如下:给玩家4张牌,每张牌的面值都在1---13之间,允许其中有数值相同的牌。采用加、减、乘、除四则运算,允许中间运算存在小数,并且可以使用括号,但每张牌只能使用一次,尝试构造一个多项式,使其运算结果为24.输入:n1,n2,n3,n4。输出:若能得到运算结果为24,则输出一个对应的计算表达式。输入:11,8,3,5输出:(11-8)*(3+5) = 24分析与解法最直接的想法就是采用穷举法,因为运算符号只有4种,每个数字只能使用一次,所以通过穷举4个数所有可能的表达式,并分别计算出各表达式的值,就可以得到答案。那么如何穷举所有可能的表达式呢?先不考虑使 阅读全文
posted @ 2011-08-23 16:46 新技术 阅读(1336) 评论(0) 推荐(1) 编辑
摘要: 题目:有这样一个包含9个圆圈的数阵,如下图所示:外层8个圈,内层一个圈;将1~8这8个数随机的填写到该数阵的外层的圆圈中,只剩下中间的一个空圆圈。规定每个数字只能按照数阵中的直线从一个圆圈移动到另一个空的圆圈中。通过若干步骤移动,要求将数阵中的数字移动成下图所示状态:【样例】输入:[1]—[2]—[4] | \ | / | [8]—[ ]—[3] | /| \ | [7]--[5]--[6]输出: 3#——》0# 4#——》3# 0#——》4# 5#——》0# 6#——》5# 0#——》6#[1]—[2]—[3] | \ | / |[8]-- [ ]--[4]| /| \ |[7]-... 阅读全文
posted @ 2011-08-22 22:16 新技术 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 方法:这里用了数据结构栈,实际上栈更方便实现高精度加法。步骤:1、第一个数据加数按输入顺序(高位到低位)入栈1。此时栈顶为最低位 2、‍第二个数据加数按输入顺序(高位到低位)入栈2。此时栈顶为最低位 3、将栈1、栈2均pop出栈顶做加法,并考虑进位,结果入栈3,这时栈3正好是低位入栈。 4、处理多余的栈1、栈2。 5、直接pop出栈3,即正好的从高位到低位的结果。完整的实现代码如下:#include "iostream"#include "stack"using namespace std;stack<int>s1;stack<int& 阅读全文
posted @ 2011-08-22 16:54 新技术 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 【问题描述】 输入一个正整数N(N最大是4位数),输出它的英文表达。 【样例】输入:1输出:one又输入:12输出:twelve右输入:135输出:one hundred thirty five 思路:1、首先19以内的数字,可以直接输出。。2、20~~~99以内的数字,整十的整数可以直接输出。否则,除以10输出十位数字,与10取模输出个位数字。3、100~~~999以内的数字,除以100输出百位数字,与100取模得到一个两位的数字,转到24、1000~~~9999以内的数字,除以1000输出千位数字,与1000取模得到一个三位的数字,转到3完整的实现代码如下:#include "i 阅读全文
posted @ 2011-08-22 16:17 新技术 阅读(513) 评论(0) 推荐(0) 编辑
摘要: 【问题描述】 对于任意给定的n值(n为整数,且1<=n<=100),计算并显示n!(阶乘)的值。 【样例】输入:n= 10输出: 3628800又输入:n= 20输出: 2432902008176640000使用整型数组来存储大数类的每一位,并模拟手工乘法的全过程。。#include "stdio.h"#include "stdlib.h"const unsigned int MAX = 10000; //整型数组的最大长度 const long long WIDTHMAX = 1000000000; //整型数组val[MAX]的元素上限 阅读全文
posted @ 2011-08-22 15:51 新技术 阅读(727) 评论(0) 推荐(0) 编辑
摘要: char* get_str(void){ char str[] = {"abcd"}; return str;} char str[] = {"abcd"};定义了一个局部字符数组,尽管是数组,但它是一个局部变量,返回它的地址肯定是一个已经释放了的空间的地址。 此函数返回的是内部一个局部字符数组str的地址,且函数调用完毕后 此数组被销毁,所以你返回的指针也就指向一块被销毁的内存,这种写法是错误的。char* get_str(void){ char *str = {"abcd"}; return str;} char* str = { 阅读全文
posted @ 2011-08-21 18:46 新技术 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 最近需要解决一个多线程问题,将这个问题抽象说来就是这个情况。有A B两个方法同时完成F工作,A B操作均比较耗时,且 B操作需要A操作完成后才能执行。现 要 A 和B同时运行n个线程。用数学化的语言描述一下/*************************** * 现有线程 A1,A2……Ai……Ak * 线程B1,B2,B3……Bi……Bk * Ai和Bi需要顺序执行,共同完成F操作 * Ai和Bi+1之间无干扰 * Bi和Bi+1之间无干扰 * Ai和Bi+1之间无干扰 * A B操作都比较耗时 ************************/ 最初在思考解决方案的时候,想的是 为每一 阅读全文
posted @ 2011-07-28 01:05 新技术 阅读(402) 评论(0) 推荐(0) 编辑
摘要: google+Google+是Google高管维克·冈多特拉(Vic Gundotra)和布拉德利·霍洛维茨(Bradley Horowitz)负责的一项社交服务项目,其用户界面出自苹果前Mac软件团队设计师安迪·赫兹菲尔德(Andy Hertzfeld)之手。Gundotra和Horowitz认为Google+不只是一个产品,也不是一种战略方案,而是一个扩展后的Google。Google+目的是让Google在线资产在日常生活中更普及,而不只是网上冲浪时偶然点击、搜索一个网站。Google+于2011年6月28日亮相,仍处于测试阶段。Wired 刊发的长篇文章《 阅读全文
posted @ 2011-07-25 14:39 新技术 阅读(551) 评论(0) 推荐(0) 编辑
摘要: 谷歌社交网络服务Google+ 新浪科技讯 北京时间7月25日上午消息,据美国IT网站PCworld报道,由于实名制政策等原因,Google+账户猛增的势头近来已开始放缓。而且,一些Google+账户被禁的用户还无法登陆其他谷歌产品账户,此举引发了用户的强烈不满。 谷歌要求Google+帐户使用实名制,不允许隐藏姓名和性别。但有些人觉得使用化名的好处有很多。美国IT资讯网站CNET撰稿人史蒂芬·沙克兰(Stephen Shankland)最近写道:“不同政见者可能想要避免遭受政治迫害。那些有过被骚扰经历的用户可能不希望这一幕重演。还有不少用户希望在互动的同时还能保留自己的隐私权。” 阅读全文
posted @ 2011-07-25 13:57 新技术 阅读(163) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 48 下一页