永发信息网

C语言题目(TC)

答案:3  悬赏:70  手机版
解决时间 2021-04-14 14:28
  • 提问者网友:一抹荒凉废墟
  • 2021-04-13 19:03

定义一个函数fun(n),函数的功能是返回四位的正整数n的逆序数。例如,n为3456时,函数的返回值是整数6543。编写主函数调用该函数。

TC环境下调试,

最佳答案
  • 五星知识达人网友:山有枢
  • 2021-04-13 19:46

上面的方法是可以的,但是明显有些复杂。数组用起来还是比较那个的。


#include<iostream.h>
void num_de(int num);
main(){
int num;
//输入你要求的数
cout<<"请输入数据:";
cin>>num;
//通过调用函数进行求解
num_de(num);
}
void num_de(int num){
int temp1=0,i=0,temp2=0;
while(num!=0){
temp2=(num%10)+temp2*10;
num=num/10;
temp1++;
}
cout<<"位数是:"<<temp1<<endl;
cout<<"倒叙输出:"<<temp2<<endl;

}

全部回答
  • 1楼网友:患得患失的劫
  • 2021-04-13 21:47

c和java的最大优势就是c可以控制程序使用的内存,从而有效的改变算法,让程序的执行效率更高。

  • 2楼网友:神鬼未生
  • 2021-04-13 20:35

#include<stdio.h> int fun(int n) { int a[10]={n%10}, i=1, j=10; while(n/=10) { a[i++]=n%10; j*=10; } i=0; while(j/=10) n+=a[i++]*j; return n; } int main() { int n=3456; printf("%d\n",fun(n)); getch(); return 0; }

其实这个问题的核心就是:

a=i%10;

printf("%d",a);

i=i/10;

i就是那个四位数,只要弄明白了这点,这个问题就迎刃而解了

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯