c++翻译c语言

#include<iostream>
using namespace std;
int main()
{
int n,i,t;
while(cin>>n>>t)
{
i=t%n;
cout<<i<<endl;
}
return 0;
}
上面一段啥意思啊?请翻译成c语言,急,在线等!!!

下面是等效C代码。C++部分已被注释。
cin在错误时终止while循环,等同于scanf读不到合法的整数时离开while循环。

#include <stdio.h>
//#include<iostream>
//using namespace std;
int main()
{
int n,i,t;
//while(cin>>n>>t)
while((scanf("%d", &n) == 1) && (scanf("%d", &t) == 1))
{
i=t%n;
//cout<<i<<endl;
printf("%d\n", i);
}
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-17
除了cin>>n>>t可以替换成scanf("%d,%d", &n ,&t);
cout<<i<<end;替换成printf("%d\n",i);其他都一样。
第2个回答  2012-11-17
#include<stdio.h>
void main()
{
int n,i,t;
while(1)
{
scanf("%d,%d",&n,&t);
i=t%n;
printf("%d\n",i);
}
}追问

好吧,你翻译的两段代码测试结果不一致,所以您翻译的可能有些小问题~
至于哪里有问题,我也不知道,我看不懂那c++代码~

追答

把你运行的结果贴上来看看看

追问

恩恩,如下图所示

而原c++代码翻译结果如下图



第3个回答  2012-11-17
#include<stdio.h>
int main()
{
int n,i,t;
printf("请输入n,t\n");scanf("%d%d",&n,&t);while(t&&n)
{
i=t%n;
printf("%d\n",i);
printf("请输入n,t\n");scanf("%d,%d",&n,&t);}return 0;
}追问

好吧,c++的代码翻译结果如下图

而您的代码翻译结果是

第一次正确,而第二次输入测试数据2和5的时候就有些小问题了~

追答

我在linux下测试了下 结果是正确的 

 

    

 

 

 
第4个回答  2012-11-17
意思就是循环输入 n 与 t ,在每次循环内,用 t 除以 n 后取余数,赋值给 i ,最后将 i 输出。
最终结果就是输出两个数的余数。
C语言就是一楼那样做。
第5个回答  2012-11-17
等待你输入n,t,输入后计算出i的值追问

哦哦,那好,能不能将他等效翻译成c语言代码呢?

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网