C语言程序实现:
输入两个整数,输出二者之和
# include <stdio.h>
int main()
{
int a,b,lineNumber=0;
while(scanf("%d %d",&a,&b)!=EOF){
printf("Line# %d\t %d + %d=%d\n",lineNumber,a,b,a+b);
}
return 0;
}
java程序:
主进程调用exe文件,新建一个线程向exe文件写入输入数据,然后主进程输出
package bjfu.wzz;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
public class my_javac {
public static void main(String[] args) {
try {
final Process proc=Runtime.getRuntime().exec("D:\\code\\C\\muy_c\\Debug\\myc.exe");
new Thread() {
public void run() {
OutputStream stdin=proc.getOutputStream();
for(int i=0;;i++) {
try {
Thread.sleep(1);
stdin.write((i + " " + i + "\n").getBytes());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}.start();
BufferedReader stdout = new BufferedReader(new InputStreamReader(proc.getInputStream()));
for (String line; null != (line = stdout.readLine()); )
System.out.println(line);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}