4.3 4.4

来源:互联网 发布:支付宝接口 返回数据 编辑:程序博客网 时间:2024/05/18 13:09

14
真jb诡异
我遍了个 函数都不行
还不如人家答案简洁。。。

我的:int zs(int i)
{ int j,x,l=0;
for(j=2;j<=i;j++)
    {for(x=2;x<=sqrt(j);x++)
        if(j%x==0)
                {   l=1;
                break;}
        if(l=0)
            {printf("%d/t",j);
            break;}
if(i/j!=1)
zs(i/j);


}
main()
{
 int zs(int i);
int a;
printf("input a num:/n");
scanf("%d",&a);
zs(a);

}

答案:#include "stdio.h"
#include "conio.h"
main()
{
  int n,i;
  printf("/nplease input a number:/n");
  scanf("%d",&n);
  printf("%d=",n);
  for(i=2;i<=n;i++)
    while(n!=i)
    {
      if(n%i==0)
      {
        printf("%d*",i);
        n=n/i;
      }
      else
        break;
    }
  printf("%d",n);
  getch();
}

 

 

15
条件表达试  不用加分号
num>60?(num>90?printf("A"):printf("b")): printf("c")   ;


16
while(b!=0)/*利用辗除法,直到b为0为止*/
  {
    temp=a%b;
    a=b;
    b=temp;
  }
17

while((a=getchar())!='/n')
括号 一定不能少。。。。

 

3
第三题已经由csdn的黄瓜朋友帮忙解决了
sqrt会自动把数转换成double来运算,结果造成很多错误结果  加上(long int )强制转化以下就不同了 嘎嘎

18

循环时又要用a的初始值  又要用他的改变值  结果弄混。。

 

14
今天终于调试出来了,,,
不断的改啊调啊 最后成功运行时  居然感觉就象一直再抽奖  突然中了一样...
什么逻辑啊。。

发下code
main()
{
int zs(int i);
int a;
printf("input a num:/n");
scanf("%d",&a);
zs(a);
getch();

}

int zs(int i)
{

int j,x,l=0;
for(j=2;j<=i;j++)
   {
    for(x=2;x<=j;x++)

        {if(x==j&&i%j==0)
                {
                printf("%d/t",j);
                l=1;
                }
        if(j%x==0)
                break;

        }
        if(l==1)
        break;
   }
if(i/j!=1)
zs(i/j);


}

 

19
未果。。。日后再说。。

例题用了,数组存放结果,思路也很清晰,真78恶心。。。
static sum;
main()
{
int zs(int i);
int y,a;

for(y=2;y<=1000;y++)
    { sum=1;

      zs(y);
      if(sum==y)
      printf("%d/n",y);
    }

getch();

}

int zs(int i)
{

int j,x,l=0;
for(j=2;j<=i;j++)
   {
    for(x=2;x<=j;x++)

        {if(x==j&&i%j==0)
                {

                l=1;
                sum=sum+j;

                }
        if(j%x==0)
                break;

        }
        if(l==1)
        break;
   }
if(i/j!=1)
zs(i/j);


}

 

20

终于一次作对了个。。。