能否帮我解释几条语句,对我的进步很重要!! 谢谢~ 询问if(i==x) flag=1这一句
程序代码:
#include<stdio.h>//将一个偶数拆分成两个素数
#include<math.h>//这个没有必要吧?
int flag=0;//这里仅仅是将flag 设为全局变量么?
void ss(int x)
{
int i=2;
for(i=2;i<x;i++)
{
if(x%i==0) break;
}
if(i==x) flag=1;//这里是什么意思,flag这里是“=”(这里赋值吧)?还是if括号中的 i==x 什么意思? //i能取到x么? 请看17楼
}
void ss(int x);
void main()
{
int i,j,n;
printf("请输入一个大于4的偶数:");
scanf("%d",&n);
for(i=3;i<=(n/2);i+=2)
{
j=n-i;
ss(i);
if(flag==1)//这里 flag 又变成了 “==” 蒙了,什么意思?
{
flag=0;//唉。。。还是 什么意思?
ss(j);
if(flag==1)//同上 疯了~~
printf("%d能被拆成的两个素数分别为:%d,%d\n",n,i,j);
}
flag=0; //一次输出后,标志位应该归零(必须的么? 因为是循环语句的原因吧?)
printf("\n");
}
}
还请朋友能帮帮忙~ 麻烦你们了!![ 本帖最后由 vvvevvv 于 2010-11-13 15:54 编辑 ]







