C语言,谁有空,解释解释,第三个第4个for是不是删除右键多余菜单,不懂啊。大神解释

C语言问题,求大神解决,谢谢啦,我是小白,最好能够解释下原因_百度知道
C语言问题,求大神解决,谢谢啦,我是小白,最好能够解释下原因
b[20];&#47,p2=b,*p2,*p1。最后依次输出数组a;p2=p1;输入一个字符串存入数组a、c中的字符串。#include&lt,*p3,对字符串中的每个字符用加3的方法加密并存入数组b.h&}}此题目该如何改呢;void main(){char a[20],再对b中的字符串解密存入数组c;gets(a);p1=a&#47,c[50];while(*p1){*(p1++)+=3;}while(*p2)puts(*p2++);stdio、b;while(*p3){puts(*p3-3),p3=c
提问者采纳
&#47,c[50];int main(){
char a[20];/ /
puts(a),*p3;\
p2++;//对字符串中的每个字符用加3的方法加密并存入数组b
p1++; &#47,p2=b;串结束符
while(*p1)
*p2 = (*p1)+3.h&
gets(a);,b[20];
p2++,*p1,*p2;0';/puts是输出一个串
puts(b);p2重新指向b的开始位置
while(*p2)
*p3 = (*p2)-3;
}*p3=' &#47,p3=c;/ /
return 0已修改;对b中的字符串解密存入数组c
p3++,看注释#include&
}*p2='0'&#92
p2=b;为什么p2要重新指向b呢?
while(*p1){*p2 = (*p1)+3; //对字符串中的每个字符用加3的方法加密并存入数组bp1++;p2++; //这里p2的值在一直变化}p2= //下面的代码要用p2来完成给p3的赋值,可是,此时的p2在前面的操作后,已经指到了b的结束位置,因此p2需要重新指向b的开始位置while(*p2){*p3 = (*p2)-3; //对b中的字符串解密存入数组cp3++;p2++;}
提问者评价
来自团队:
其他类似问题
为您推荐:
其他2条回答
&#92,p3=c;。讲几个主要的.h&0&#39,*p3,p2=b。第一个while循环*(p1++)+=3,*p1;
while(*p1)
*p2=*p1+3;这个是把a数组里的元素取出来加上3错误比较多;
*p3='0&#39。#include &
*p2=&#39,然后又写入a数组了,不是单个字符输出,*p2;
p2++,单个字符输出是putchar我改了一下,你看看,b[20];
while(*p2)
*p3=*p2-3;\;
puts(b);void main(){
char a[20];
p1++,c[50];
puts(a),没有写入b数组;
p3++。第二个和第三个while循环puts是输出字符串
p2=b;为什么p2要重新指向b呢?
因为p2在前面已经自加到字符串b的结尾了。在给c赋值的过程中,为了从字符串头部开始,所以p2要重新指向b,即指向字符串头。
把这句p2=p1;改为*(p2++)=p1;你试试看
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁C语言的一道题,看不懂题意,求大神讲解,谢谢啦_百度知道
C语言的一道题,看不懂题意,求大神讲解,谢谢啦
/zhidao/wh%3D450%2C600/sign=b6f4c4db222dd42a5f5c09af360b1fe364ded2e738ad4e6a5.hiphotos.hiphotos://b.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="/zhidao/pic/item/b21bb051fe364ded2e738ad4e6a5://b.com/zhidao/wh%3D600%2C800/sign=e69a4f7a1d4c510fae91ea1cbb051fe364ded2e738ad4e6a5;<a href="http.baidu.jpg" esrc="http://b.baidu&nbsp.hiphotos
提问者采纳
number),&number););
continue,2;i++){
if(number%i==0)
sum+=i;%d&;
}}if(sum==number)printf(&,i;scanf(&quot。&%d是完数;printf(&quot,sum=0,i&lt,这个数就是完数了,3 它们的和等于这个数本身;for(i=1就比如6=1+2+3:&quot。请输入一个正整数。有三个因子(不包括6)分别是1
提问者评价
太给力了,你的回答完美地解决了我的问题,非常感谢!
其他类似问题
为您推荐:
其他1条回答
#include &lt,x);
if(sum==x)
printf(&quot,它有约数1、3; x&temp++)
if(x%temp==0)
sum= sum+temp,),其余3个数相加;
printf(&quot、7。第二个完全数是28、4,除去它本身28外,1+2+3=6、6;
for(temp=1;scanf(&quot,n&&#92; x++)
sum= 0.h&gt、28,它有约数1,其余5个数相加1+2+4+7+14=28;,temp。代码;%d&quot,则称该数为“完全数”;;%d
&quot如果一个数恰好等于它的因子之和、2,除去它本身6外;x、2;temp&lt, &num);
for(x=1;void main(){int x、14。第一个完全数是6
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁苹果/安卓/wp
苹果/安卓/wp
积分 137, 距离下一级还需 8 积分
权限: 自定义头衔
道具: 彩虹炫, 雷达卡, 热点灯, 雷鸣之声, 涂鸦板, 金钱卡, 显身卡下一级可获得
道具: 匿名卡
购买后可立即获得
权限: 隐身
道具: 金钱卡, 雷鸣之声, 彩虹炫, 雷达卡, 涂鸦板, 热点灯
尴尬签到天数: 35 天连续签到: 1 天[LV.5]常住居民I
&&各位大神好,小弟最近在研究kmeans源码,但是发现各个包里面的kmeans算法都会调用c语言算法包(既在r中他们会直接调用一些dll文件),但是这些dll文件我只能查看到里面的函数名,没法查看他们c语言的源码,及其这些函数的使用方法,
1)比如kmeans函数中kmeans (x, centers, iter.max = 10L, nstart = 1L, algorithm = c(&Hartiga-Wong&, &Lloyd&, &Forgy&, &MacQueen&
), trace = FALSE) 后面的这参数algorithm的4个值,所代表的方法,分别是那种方法?
2)源码中使用了这个函数 Z &- .C(C_kmeans_Lloyd, x, m, p, centers = centers, k, c1 = integer(m), iter = iter.max, nc = integer(k), wss = double(k))这个.C(C_kmeans_Lloyd,。。。)函数如何使用的?C_kmeans_Lloyd它代表的c子程序是什么呢?如何使用呢,谢谢各位大神指导
支持楼主:、
购买后,论坛将把您花费的资金全部奖励给楼主,以表示您对TA发好贴的支持
载入中......
顶起来。。。。。。。。。。。
如果你不是专门学编程的,建议你还是别花时间在这上面,这些问题这么复杂,估计要同时精通R和C语言编程和k-means原理的人才懂回答,如果你实在感兴趣,你可以自己去查一下:R中所有的C源代码都在该函数所在的包里面一个叫str的文件夹里,至于.C()这个函数你可以看看R本身的帮助文档,或者是《R语言编程艺术》,另外,这本书里有提到k-means,但应该不是你要的答案,祝你能成功解决
-Batistuta- 发表于
如果你不是专门学编程的,建议你还是别花时间在这上面,这些问题这么复杂,估计要同时精通R和C语言编程和k- ...谢谢,只是对这个好奇,因为知道r是开源的原件我想这个还是应该比较好查,只是自己没找到方法,但是我找的很多函数底层都是调用c,所以我就没法再继续深入这些算法,想自己修改和重写都没法做了,所以还是想看看源码,看看自己能否用r自己的语言写出来
R的底层是C C++ FORTRAN 想象下一个数据框调用某行几乎是秒速 不是这种底层语言 R也没法这么普及
katymeala 发表于
R的底层是C C++ FORTRAN 想象下一个数据框调用某行几乎是秒速 不是这种底层语言 R也没法这么普及你说的很正确,我们研究算法时,还是需要对算法的原理需要有一个清楚的认识,所以我才在这里刨根问底的研究
需要下载源码包
soccy 发表于
需要下载源码包谢谢你,请问下具体是怎么操作的呢?或者哪里有相关的资料和你曾经查询过的相关经验过程吗?
你好,请问你的问题解决了吗?我也正在看kmeans和c50的源码,能否加个qq探讨一下呢?
论坛好贴推荐
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
为做大做强论坛,本站接受风险投资商咨询,请联系(010-)
邮箱:service@pinggu.org
合作咨询电话:(010)
广告合作电话:(刘老师)
投诉电话:(010)
不良信息处理电话:(010)
京ICP证090565号
京公网安备号
论坛法律顾问:王进律师只需一步,快速开始
后使用快捷导航没有帐号?
查看: 1351|回复: 17
华为的一道面试题,看了一些答案,发现看不懂啊?求大神解释啊
签到天数: 158 天[LV.7]常住居民III
马上注册加入鱼C,享用更多服务吧^_^
才可以下载或查看,没有帐号?
输入一个正整数X,在下面的等式左边的数字之间添加+号或者-号,使得等式成立。
1 2 3 4 5 6 7 8 9 = X
12-34+5-67+89 = 5
1+23+4-5+6-7-8-9 = 5
请编写程序,统计满足输入整数的所有整数个数。
输入:& && & 正整数,等式右边的数字
输出:& && & 使该等式成立的个数
样例输入:5
样例输出:21
以下是网上的答案,看不懂是怎么算出来的,是怎样的一个思路啊?求大神解读 啊
#include&iostream&&&
#include&cstdio&&&
&&
int ops[21];&&
const char sym[3] = {'+' , '-' , ' '};&&
int result ,&&
&&
void dfs(int layer, int currentResult, int lastOp, int lastSum)&&
{&&
&&lastSum *= (layer & 9) ? 100 : 10;&&
& &lastSum +=&&
& &if(layer == 9)&&
& & {&&
& && &&&currentResult += (lastOp) ? (-1 * lastSum) : lastS&&
& && & if(currentResult == result)&&
& && &&&{&&
& && && &&&++&&
& && && && &printf(&1&);&&
& && && && &for(int i = 2 ; i &= 9 ; ++i)&&
& && && &&&{&&
& && && && && & if(sym[ops[i-1]] != ' ')&&
& && && && && && &&&printf(& %c &, sym[ops[i-1]]);&&
& && && && && &printf(&%d&, i);&&
& && && && &}&&
& && && &&&printf(& = %d\n& , result);&&
& && &&&}&&
& && &&&&&
& & }&&
& & ops[layer] = 2;&&
& & dfs(layer + 1 , currentResult , lastOp , lastSum);& &//Continue&&
& &currentResult += (lastOp)? (-1 * lastSum) : lastS&&
& & ops[layer] = 0;&&
& & dfs(layer + 1 , currentResult , 0 , 0);&&//Plus&&
& &ops[layer] = 1;&&
& & dfs(layer + 1 , currentResult , 1 , 0);&&//Minus&&
}&&
int main(void)&&
{&&
& &while(scanf(&%d&, &result) != EOF)&&
& & {&&
& && &&&num = 0;&&
& && &&&dfs(1 , 0 , 0 , 0);&&
& && &&&printf(&%d\n& , num);&&
& &}&&
& & return 0;&&
}&&
复制代码
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 288 天[LV.8]以坛为家I
同样没看懂
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 158 天[LV.7]常住居民III
额,没有大神来指导指导俺们这些菜鸟啊:cry
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 177 天[LV.7]常住居民III
涉及到算法了,我正打算下学期好好研究算法。我现在试试能不能看得懂
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 177 天[LV.7]常住居民III
可以单步调试研究,,我明天再看看,晚上看不动
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 958 天[LV.10]以坛为家III
基本思想就是依次考察:
1 2 3 4 5 6 7 8 9数字间的8个空格,这些空格要么填+,要么填-,要么不填(和前一个数字合并起来作为一个新的数字)
dfs函数名就暗示是用深度优先遍历来做的,其中和递归相关的参数就是dfs的第一个参数int layer,这个参数表示递归深度(你也可以理解为它表示考察数字layer以及之前的数字的运算结果是否满足要求)。
递归函数dfs
if(layer == 9) 即已经考虑了1~9所有数字的运算情况,这是递归的结束条件
ops[layer] = 2;&&
& & dfs(layer + 1 , currentResult , lastOp , lastSum);& &//Continue&&
& &currentResult += (lastOp)? (-1 * lastSum) : lastS&&
& & ops[layer] = 0;&&
& & dfs(layer + 1 , currentResult , 0 , 0);&&//Plus&&
& &ops[layer] = 1;&&
& & dfs(layer + 1 , currentResult , 1 , 0);&&//Minus&&
是在不满足结束条件时,暴力试探3种填法(即填+,-或不填)
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 158 天[LV.7]常住居民III
基本思想就是依次考察:
1 2 3 4 5 6 7 8 9数字间的8个空格,这些空格要么填+,要么填-,要么不填(和前一 ...
多谢大神救助啊,我得上万再查查资料,依然还是没有完全搞明白,算法这块儿根本一窍不通,得赶紧看了
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 35 天[LV.5]常住居民I
提示: 作者被禁止或删除 内容自动屏蔽
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 158 天[LV.7]常住居民III
确实好难,看不懂,麻竹,慢慢练习
:handshake
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 958 天[LV.10]以坛为家III
多谢大神救助啊,我得上万再查查资料,依然还是没有完全搞明白,算法这块儿根本一窍不通,得赶紧看了
如果只做常规性编程的话,没必要太在意这些的。这些要搞明白要花些时间研究下ACM之类的题目,关键在于很多概念很难明白,然而明白的人会用专业术语直接表达自己的观点(不然要说很多话),所以你很难看明白人家写的东西。最主要的问题在于,你要想清楚你学算法是为了干什么?如果立志于参加国际程序比赛。。。那么OK,上吧。。。如果只是想让自己的程序效率更高。。。那完全是扯蛋。。。稍微专业的领域都已经有非常成熟的算法函数库可以直接调用,你会调用就OK。
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 958 天[LV.10]以坛为家III
就像华为的这些面试。。。为什么要考算法?不是因为工作中需要算法,而是因为来应聘的人太多了,面试之前如何刷掉一批人呢?就考算法。如果你有自己比较成功的作品和项目经历。。。完全不会算法,只要你能找到项目主管,他就一定会收你。
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 163 天[LV.7]常住居民III
好难,看不懂 帮楼主顶下
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 183 天[LV.7]常住居民III
然而我也并没有看懂。。
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 158 天[LV.7]常住居民III
如果只做常规性编程的话,没必要太在意这些的。这些要搞明白要花些时间研究下ACM之类的题目,关键在于很 ...
嗯嗯嗯,谢谢亲啦
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 158 天[LV.7]常住居民III
好难,看不懂 帮楼主顶下
:handshake:hug:
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 7 天[LV.3]偶尔看看II
可以单步调试研究,,我明天再看看,晚上看不动
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 3 天[LV.2]偶尔看看I
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 112 天[LV.6]常住居民II
如果是你自己先不看这个代码,先自己把思路写出来,自己能写出的思路与当前的程序进行类比,应该会清晰一些
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
&#8226;&#8226;&#8226;(
Powered by请问这个程序哪里错了??C语言,求大神解释一下,谢谢(*°&#8704;°)=3_百度知道
请问这个程序哪里错了??C语言,求大神解释一下,谢谢(*°&#8704;°)=3
baidu&nbsp.jpg" esrc="http://b.com/zhidao/wh%3D450%2C600/sign=e251fe2a2ecfc92b6e521/d0a20cf430cba2aacaf9969.hiphotos.baidu./zhidao/pic/item/d0a20cf430cba2aacaf9969:///zhidao/wh%3D600%2C800/sign=329cebcca11ea8d38a777c02a73a1c76/d0a20cf430cba2aacaf9969.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="http://b;<a href="http
提问者采纳
term的初始值?
term也要初值吗
这个老师没有给初值,我照着写的
这个是答案吗
运行结果是这,显然是不对的
为什么要给1呢
你0的话for条件判断都不成立了,根据那个等式要给1
term=term&#47;fac
恩,有问题再找我
提问者评价
太给力了,你的回答完美地解决了我的问题,非常感谢!
其他类似问题
为您推荐:
c语言的相关知识
其他1条回答
把编译器的报错内容拍出来
没有报错啊
警告都没有
只是结果不对
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 c语言删除多余空格 的文章

 

随机推荐