有三道c语言源程序看不太懂,找高手求翻译求分析,越详细越好,求教过程和思路啊大神们

还有一题:
#include<stdio.h>
#include <string.h>
zdc()
{ int i,j,m=0,r,startpoint1,startpoint2,endpoint;

char a[100];
printf("请输入短文:\n");
gets(a);
for(i=0;i<100;i++) {
j = 0;
startpoint1=i;

while((a[i] != ' ') && (a[i] != ',') &&(a[i] != '.') && (i<strlen(a))) {
i++;
j++;
}
if(j>= m) {
m = j;
endpoint = i-1;
startpoint2=startpoint1;
}
}

//printf("startpoint=%d;endpoint=%d",startpoint2,endpoint);
/*for(i=0;;i++)
{
for(j=0;;j++)
{
scanf("%s",&a[i][j]);
if(a[i][j]==','||a[i][j]==' '||a[i][j]=='.')
{
if(j>=m)
{
m=j;
r=i;
}
break;
}
}
if(a[i][j]=='.')
break;
}*/
printf("最长单词为:");
for(i=startpoint2;i<=endpoint;i++)
printf("%c",a[i]);
printf("最长长度为%d",endpoint-startpoint2+1);
}

首先第一个 先看qcj吧 里面前两句 就是输出 input num 然后第二句接收键盘的的输入的数存入 num里 第三句是输出fun()的返回值这样就调用了fun(),再来看fun()里面就是 运算(x - x%10)/10 当x=0时退出 因为你x是int 所以当x-x%10小于10的时候就退出来,具体去看int 和doule 的区别,然后当这个结果等于0时返回r 我估计这个目的是就是一个数各个位上的乘积 至于为什么 自己拿笔按照公式算一下吧,
第二道是接收两个字符串,然后判断两个字符串是否相同,不相同的就复制相同的就不复制也就是最后你等到的src里面都是和d里面不相同的也就达到了删除src里和d相同的部分,指针就是地址,其实iter pos src 是一个东西你可以看成是一个东西的三个名字,
第三道目的是求一个短文中最长的单词是哪个同时求出长度 而且那个zdc()
首先是第一个for()你接收的字符串存在a里面 然后呢当 遇到 空格 逗号 和句号 跳出while 循环,这个就说明当你遇到这三个符号代表一个单词结束了,所以i是 这个单词 在整个句子中的位置,而j是长度而i-1就是结束的位置 startpoint1是你一个单词起始的位置,而m其实就是 max就是你储存最长单词的长度,每当有更长的单词是,就覆盖,直到找到最长的为止,这个其实就是最简单的冒泡算法。就是我首先认为第一个最大,然后和第二个比,如果第二个比第一个大那就替换它,认为第二个最大然后在和第三个比如此类推,这个最简单的算法,。
好了,给分吧,...
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-09-05
慢慢想啊

我是个菜鸟,求学习方法!
我初学C语言,发现很多东西即使别人给我很详细的讲了我也学不懂.然后和我一起的同学却可以很快的适应.今天做了试卷,一塌糊涂!心里很着急.想请教学习方法.我的情况是:给我代码我基本能看... 我初学C语言,发现很多东西即使别人给我很详细的讲了我也学不懂.然后和我一起的同学却可以很快的适应. 今天做了试卷,...

高手们帮我看看c语言程序,请给每行代码和功能注释
例如;a = 3,b = 5,现交换a,b的值,这个问题就好像交换两个杯子水,这当然要用到第三个杯子,假如第三个杯子是c,那么正确的程序为: c = a; a = b; b = c; 执行结果是a = 5,b = c = 3如果改变其顺序,写成:a = b; c = a; b = c; 则执行结果就变成a = b = c = 5,不能达到预期...

求高手分析一下这个电路图 ,有点看的不太懂!详细点再加分!
3、右边两个三角形是两块TDA2030组成的两个声道的功放,电路是一样的,我接下来就分析上面的2030给你听 4,、C1 是耦合电容 ,信号从这里通过(电容隔直通交,信号是交流,然后把不要的直流隔断滤掉)5、R1,R2,R3, 这个电路是单电源供电(一个正极,一个地),由于某些原因,运放(2030其实...

自学c语言 零基础 看什么书 该怎么学
链接:https:\/\/pan.baidu.com\/s\/1aEXrb1oxnRmMWUlafELpfQ 提取码:pusr啊哈C语言:小学生坐在马桶上都可以读懂的C语言编程入门书

这些都看不懂啊,小女子求大师帮解说~~~解说命理。最好是详细点~谢谢...
能继承,且对自己的发展有助益。 文昌加会能继承祖业,喜购置田宅。 擎羊加会\/陀罗对照祖业难留承,破财卖田宅。 火星加会\/铃星加会继承的祖业留不住,会变卖。 天梁化禄同宫能得祖荫,继承家业。所居住的房子,住的习惯,不太会搬迁。 擎羊加会\/陀罗对照\/火星加会\/铃星加会自己与家产无缘,要顺利继承变数大。

C语言求向量夹角的程序部分看不懂 高手帮看看分析 红字部分不懂
另外, 这个程序为了表示是3维向量, 定义了一个常数#define VECSIZE 3 但是在这里又直接写3, 不一致.这样虽然不会出错, 但是给理解造成困惑.vectorNorm 也一样.double x[VECSIZE] = {0.0,1.0,0.0};这个是这里作为示例, 求两个向量的夹角的第一个向量的变量,变量名是x, 而不是X轴, 而这个...

关于单片机数码管显示的程序。看不太懂,求大神帮忙分析一下每一步在
程序:void main() \/\/主函数 这一讲的主要内容: 按键检测主函数 功能描述: 按键检测主函数 输 入:输 出:全局变量:调用模块:作 者: 吴鉴鹰 日 期: 14.04.12 备注:有什么错误的地方,欢迎各大烧友指正,感谢电子发烧友提供这个平台能跟各大烧友一同分享,一同进步 O(∩_∩)O~...

...加减乘除整数运算混合运算的计算器,要求写思路,越详细越好...
用C语言编写可以进行加减乘除整数运算混合运算的计算器,要求写思路,越详细越好,初学者,不要很复杂的。200 实现整数的算术运算(加、减、乘、除)。程序只接受界面上显示的字符输入。用户每按一个数值或一个运算符后按回车键,最后用户按=键后输出运算结果。运算需先乘除后加减。输入时要检查... 实现整数的算术...

如何学好C语言?
我相信,只要你理解了指针,C语言便不再神秘。 如果你已经啃完了一本C语言教材,想要更进一步,那么有两本书你一定要看。首先是《C Traps and Pitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。要注意一点,这本书是二十多年前写成的,里面提到的很多C语言的缺陷都已被改进,不过能够了解...

一个C语言程序求分析
分析一:这个程序的输入是变量"_",因为标准C中是允许下划线开头的变量的,仅有下划线也满足变量命名的要求;分析二:双下划线"__"这里不能理解为变量,我猜测"__TIME__"是C语言中的一个宏定义,是一个整体;分析三:断句。仔细从“乱码”中能一眼看出两个关键字"main"和"putchar"。main函数里面...

相似回答
大家正在搜