c – ideone不显示任何输出

c – ideone不显示任何输出,第1张

概述这个代码是问题 http://www.spoj.com/problems/BASE/,它在Windows和Linux上运行正常但是当我在ideone上运行它时它没有显示任何输出.谁能告诉我这背后的原因是什么? #include<stdio.h>#include<math.h>#include<string.h>#include<string>#include<iostream>usin 这个代码是问题 http://www.spoj.com/problems/BASE/,它在windows和linux上运行正常但是当我在IDeone上运行它时它没有显示任何输出.谁能告诉我这背后的原因是什么?
#include<stdio.h>#include<math.h>#include<string.h>#include<string>#include<iostream>using namespace std;long int convert_base10(char *num,int base){int len,dig;long int result = 0;len = strlen(num);//    printf("len = %d\n",len);// converting to base 10for(int i=0; i<len; i++){    if((num[len-i-1] >= 'A') && (num[len-i-1] <= 'F'))        dig = num[len-i-1] - 55;    else        dig = num[len-i-1] - 48;    result +=  (dig * pow(base,i));  //        printf("num[%d] = %d\n",len-i-1,dig);}return result;}voID convert_basei(long int num,int base,string &result1){bool error = false;int pos = 6;char result[7],rem;// initially storing space on all positionfor(int i=0; i<7; i++)    result[i] = ' ';while(num){    if((num % base) >= 10)        rem = (num % base) + 55;    else        rem = (num % base) + 48;    result[pos] = rem;//printf("result[%d] = %c\n",pos,rem);    num /= base;//    printf("quotIEnt = %d\n",num);    pos--;    if(pos < 0 && num > 0)    {        error = true;        break;    }}if(error == true)   result1 = "  ERROR";else    result1 = result;//    cout<<"result = "<<result1<<endl;}int main(){char num[7];string result;int base1,base2;while(scanf("%s%d%d",num,&base1,&base2) == 3){//        printf("num = %s\nbase1 = %d\nbase2 = %d\n",base1,base2);    long int temp = convert_base10(num,base1);//        printf("temp = %ld\n",temp);    convert_basei(temp,base2,result);    cout<<result<<endl;}return 0;}
解决方法 替换此代码:
while(scanf("%s%d%d",&base2) == 3){    long int temp = convert_base10(num,base1);    convert_basei(temp,result);    cout<<result<<endl;}

有了这段代码,神秘就会消失:

printf("trying to get input\n");while(scanf("%s%d%d",&base2) == 3){    printf("got some input\n");    long int temp = convert_base10(num,result);    cout<<result<<endl;}printf("got no input\n");
总结

以上是内存溢出为你收集整理的c – ideone不显示任何输出全部内容,希望文章能够帮你解决c – ideone不显示任何输出所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1244222.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存