关于c、vfp、c#的问题~!~!~!

biser 2004-05-14 08:43:28
昨天一个朋友那来了一个vfp题:求100--200的素数。
我顺手把c语言的书那了出来,找到c语言的版本,并把它翻译成了
vfp版的程序,结果运行后没反映,经过分析后发现在输出打印时的if语句
有点不同,虽然问题是解决了,但是不明白为什么,另外我有试了
一下c#版的,结果和vfp版的if语句一样,不知道为什么?请求大家帮忙!!!


// 以下是c语言版的:
#include "math.h"
#include "stdio.h"

main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
if(n%10==0) printf("\n");
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break;
if(i>=k+1) //就是这里!!!
{
printf("%d ",m);
n++;
}
}
}
// 以下是vfp语言版的:
for m=101 to 200 step 2
k=sqrt(m)
for i=2 to k
if m%i==0
exit
endif
endfor
if i>k &&就是这里!!!!!
? m
endif
endfor
// 以下是c#语言版的:
using System;

namespace ConsoleApplication1
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class Class1
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
double m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
if(n%10==0) Console.WriteLine();
k=Math.Sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break;
if(i>k) //就是这里!!!
{
Console.Write(m+" ");
n++;
}
}
Console.Read();
}
}
}

...全文
38 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cngdzhang 2004-05-14
  • 打赏
  • 举报
回复
c语言版的是
if(i>=k+1)

vfp和C#版的都是
if(i>k)

这两者是等价的呀!

i>=k+1>k
那么
i>k+1就是i>k了(整数)
saoyu 2004-05-14
  • 打赏
  • 举报
回复
不好意思,上面笔误写错了,是k=(int)Math.sqrt(m);
cancer001 2004-05-14
  • 打赏
  • 举报
回复
不懂VFP
saoyu 2004-05-14
  • 打赏
  • 举报
回复
如果要照C翻译过来的话必须做强类型转换,我没用过C#和VFP,我用java做了个测试,做转化后没问题

import java.math.*;

public class Su
{
public static void main(String[] args)
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
if(n%10==0) System.out.println();
k=(int)Math.sqrt((int)m); //这里有两个类型转换
for(i=2;i<=k;i++)
if(m%i==0) break;
if(i>=k+1)
{
System.out.println(m+" ");
n++;
}
}
}
}
独狼VFP游戏开发工具 独狼VFP游戏开发工具包含三部分库函数构成,OpenGL库, DxInput库,DxAudio库等三部分,这三部分合并到DLGame.fll库文件中。 OpenGL(全写Open Graphics Library)是定义了一个跨编程语言、跨平台的编程接口,它用于三维图象(二维的亦可)。 OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。 OpenGL不是语言,是专业的图形程序接口。现在Windows系统的主流编译环境有Visual C++/C#,Broland C++ Builder,Dev-C++等,它们都是支持OpenGL的。今天我把他移植到了Visual Foxpro9中,为喜爱图形设计的狐友带来福音。 OpenGL原函数为C函数,我们通过FLL库,封装到了DLGame.fll库中,大多数函数的名称和定义都和原C函数相同,因此具有很强的移植性。 DxInput库是封装了微软DirectX的DirectInput开发工具库,使键盘,鼠标,游戏杆的控制编程更加高效和简单。这些函数也封装到了DLGame.fll库中 DxAudio库是封装了微软DirectX的DirectAudio开发工具库,DirectAudio包含两部分,DirectMusic和DirectSound。DirectMusic用于播放音效的mid格式文件,通常用于背景音乐。DirectSound用于播放wav格式的音乐文件,一般用于音效效果。通过我们的封装,对音乐编程更加高效和简单。这些函数也封装到了DLGame.fll库中 一般编程语言必须先编译再运行,调试麻烦。VFP有先天的优势,边解释边运行。可以说,程序编写完成就可以通过DO命令运行程序。 完整例子,可以在我们帮助中点红色感叹号运行。

70,024

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧