标题:高手帮忙看看 这段不理解 谢谢
取消只看楼主
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
结帖率:92.86%
已结贴  问题点数:5 回复次数:11 
高手帮忙看看 这段不理解 谢谢
#include <stdio.h>

int isprime(int n)
{
    int i, m;
    m=1;
    for(i=2;i<n;i++)
        if(!(n%i))
        {
            m=0;
            break;
        }
    return m;
}

void main()
{
    int j, k;
    printf("please input an integer number between 2 and 10000: ");
    scanf("%d", &k);
    printf("the prime factor(s) od %d is :", k);
    for(j=2;j<=k;j++)
        if((!(k%j))&&(isprime(j)))
            printf("\n%4d", j);
    getch();

}
我不太理解这段代码的意思   麻烦各位大神解释一下哈  谢谢
if((!(k%j))&&(isprime(j)))
搜索更多相关主题的帖子: between include please number return 
2015-09-16 10:28
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 4楼 voiceshen
!k%j就是说如果k%j=0的话  那么就是真的  就执行咯

不要不要的。。。
2015-09-16 12:08
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 2楼 外部三电铃
  。

不要不要的。。。
2015-09-16 12:09
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 8楼 林月儿
恩恩  

不要不要的。。。
2015-09-16 14:56
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 7楼 林月儿
!k%j就是说如果k%j=0的话  那么就是真的  就执行咯

不要不要的。。。
2015-09-16 14:57
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 12楼 林月儿
恩恩  没事的

不要不要的。。。
2015-09-16 23:08
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
以下是引用林月儿在2015-9-16 21:09:33的发言:

#include  
#include   
int isprime(int n)
{
    int step=4,i;                                这里到
    if(n==2||n==3||n==5)return 1;
    if((n%2==0)||(n%3==0)||(n%5==0))return 0;
    for(i=5;i
谢谢 哈

不要不要的。。。
2015-09-16 23:21
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 15楼 林月儿
#include <stdio.h>
#include <string.h>

void fun(char str[][10], int m, char *pt)
{
    int k, q, i;
    for(k=0;k<m;k++)
    {
        q=strlen(str[k]);
        for(i=0;i<q;i++)
        {
            pt[i]=str[k][i];
        }
        pt+=q;

    }
    pt[0]='\0';
}

void main()
{
    int m, h;
    char s[10][10], p[120];
    printf("please input a m:\n");
    scanf("%d", &m);
    gets(s[0]);      为什么我不要这代码是   我输入的m值为3时    在下面的输入时 只能输两次呢   有了这段代码之后 就能输三次
    printf("please enter %d string :\n", m);
    for(h=0;h<m;h++)
    {
        gets(s[h]);
    }
    fun(s, m, p);
    printf("the result is: %s", p);
    getch();
}

不要不要的。。。
2015-09-17 13:15
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 19楼 林月儿
清空键盘的缓冲区的数据  恩恩  好像有道理   不过我前面只输入一个数子 就读取了  应该缓冲区没有数据才对啊      
  不过为什么还是要了前面的scanf  就能输三次呢;而不要只能两次


不要不要的。。。
2015-09-17 14:57
露营地
Rank: 2
来 自:湛江
等 级:论坛游民
帖 子:150
专家分:23
注 册:2015-6-27
得分:0 
回复 18楼 边小白
恩恩  清了一下 就可以了

不要不要的。。。
2015-09-17 14:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-457346-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.159103 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved