C语言写函数fun求一个整数的逆序数,在main中输入两个整数,求其逆序数之和并输出。如输入32 -71 输出6 1、编写一个函数fun(n),求任意整数的逆序数, 例如:当...

   www.gaoxiao88.net
#include <stdio.h>
int fun(int num);
void main( )
{
int x,y,sum;
sum=0;
printf("请输入两个整数:");
scanf("%d%d",&x,&y);
sum=fun(x)+fun(y); %因为fun()函数有返回值,这里相当于将两个返回值相加
printf("sum=%d\n",sum);
}
int fun(int num)
{
int a,b; %定义 a,b变量
a=0;
while (num!=0) %判断循环的结束条件 此处num以两位数为例
{
b=num%10; %对10取余,即求出num的个位数赋值给b
a=a*10+b;
num=num/10; %将num的末位数去掉
}
return a;
}

b是个位数,num每次循环去掉一个个位数,直到num变为0。
a是逆序数。
sum=fun(x)+fun(y);
是在表达式里调用函数。
当然也可以写成:
int t1=fun(x);
int t2=fun(y);
sum=t1+t2;但是这样效率低些。

C语言编程:输出一个3位整数的逆序数,如输入123,输出321.

#include<stdio.h>
main()
{
int x,b0,b1,b2,s;
printf("inputx:");
scanf("%d",&x);
b2=x/100;
b1=(x-b2*100)/10;
b0=x%10;
s=b0*100+b1*10+b2;
printf("s=%d
",s);
}
运行结果:

扩展资料:main函数用法
C++中的main函数
C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,
不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。
C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。
Java中的main函数
Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。
首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。
其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。
第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。
第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)
Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)
public class MainDemo{
public static void main(String[]args){
//TODO:在此处写入主函数的内容
}
}
Java Applet的运行机制与Java Application完全不同,因此不需要main函数
C#中的main函数
C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,
与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)
另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。
C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)
C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。
class Program{
static void Main(string[]args){

#include
int fun(int);
voidmain()
{
int n;
int i;
for(i=0;i<3;i++) {
scanf("%d",&n);
printf("%d
",fun(n));
}
while(1);
}
int fun(int n)
{
int result = 0;
int sig = 1;//代表正负
if(n<0) {
n = n * (-1);
sig = -1;
}
while(n>0){
result = result*10 + n%10;
n = n/10;
}
return result*sig;
}

相关参考:

C语言 编写fun函数 将数组中的数逆序存放
你是想按倒序重新放到一个数组里 然后将数组地址返回是吧,想法不错 但上面代码实现不了的。因为你的数组r[5]的生命周期是在fun函数运行期间,当函数调用结束返回时,这个函数的栈清空,数组r[5]也就不存在了。

C语言编程,任意输入一个五位正整数,逆序输出每一位上的数 如输入54321...
\/(int) 结果为int 2: 待执行ser函数后,输出结果个位数 12345 % 10 = 5 3: 第二次执行ser函数...类比步骤1 4: 待递归执行ser函数,类比步骤2,输出十位个数 1234 % 10 = 4 5: 类比步骤1 6: 类比步骤2,输出百位个数 123 % 10 = 3 7: 类比步骤1 8: 类比步骤2,输出千位 12 %...

c语言 从键盘输入一个三位数,输出该数的逆序数。
c语言中从键盘输入一个三位数,输出该数的逆序数,可以参考以下的代码:include<stdio.h> int main(){int x;printf("请输入一个三位数:");scanf("%d",&x);printf("%d%d%d\\n",x%10,x\/10%10,x\/100);return 0;}

C语言程序设计 :给定一个整数,求该整数的逆序数。
include<stdio.h> include<math.h> int main(){ int m,n,q,p,k,y=0,a;printf("输入一个数m,范围为10^0--10^10\\n");scanf("%d",&m);for(n=0;n<10;n++){ p=(int)pow(10,n);q=(int)pow(10,n+1);if(p<=m&&m<=q) \/\/确定n { printf("%d\\n",n);break;} ...

编写一个递归函数,将整数的个位上的数字按相反的顺序输出。例如,输入...
include <stdio.h> int main(){ int x;scanf("%d",&x);while(x>9){ int temp=x;x=x\/10;printf("%d\\n",temp-x*10);} printf("%d\\n",x);return 0;}

用c语言编程 求一个数的逆序数。(如 1234 的逆序数是 4321)
include <stdio.h> include <string.h> include <stdlib.h> void main(){ char array[10];int k;scanf("%d", &k);itoa(k, array, 10);k = strlen(array);while(k>=0){ printf("%c", array[k-1]);k--;} \/\/如果想逆序输出数是整型数,可以用atoi()函数转换回来 } ...

C语言求逆序数
include <stdio.h>int main(){int n,m=0;scanf("%d",&n);while(n){m=m*10+n%10;n\/=10;}printf("%d",m);return 0;}运行示例:请自行对照。

...代码 从键盘输入一个正整数 输出它的逆序数 比如输入1234 输出则是...
input "输入一个数:" to srsrc=ALLTRIM(STR(sr))lensr=LEN(src)yxsr=""FOR i=1 TO lensr yxsr=yxsr+SUBSTR(src,lensr-i+1,1)endf?"输入数据的逆序数为:",yxsr

输入正整数n,求出逆序数,并将所有逆序数对分别输出。C语言
include <stdio.h> define NUM 20 void main(){ long n;int data[NUM]={0},len=0;scanf("%d",&n);do { data[len++] = n%10;n\/=10;}while(n!=0);for(n=0;n<len;n++){ printf("%d",data[n]);} }

用C++写一个求逆序数的程序.
cout<<endl<<"输入基本数的一个变序数:";cin>>b;count=0;p2=b;while(*p2){ fg=0;for(p1=a;*p1;p1++)if(*p1==*p2){ fg=1;break;} if(fg){ for(p3=a;p3<p1;p3++)for(p4=p2+1;*p4;p4++)if(*p3==*p4)count++;} p2++;} cout<<"逆序数为:"<<count;system("pause...

相关评论

  • 单巧4498: 用C语言编写一个fun函数 -
    18717111943: #include <stdio.h> void fun(char *s,char *t) { int i,j=0; for(i=0;s[i];i++) if(i%2==0)t[j++]=s[i]; t[j]=0; } void main() { char t[80],s[80]; printf("输入字符串:"); gets(s); fun(s,t); puts(t); }

  • 单巧4498: C语言中:请编写一个函数fun它的功能是计算给定的一个整数n的所
    18717111943: # include int fun(int n) ; //函数的声明int main(){ int n ; int sum ; printf("请输入一个整数: ") ; scanf("%d",&n) ; sum = fun(n) ; printf("%d的所有因子之和是:%d ",n,sum); return 0;}int fun(int n){ int i ; int sum = 0 ; for( i = 2 ; i if( ! ( n % i ) ) //找出n的所有因子 sum = i ; return sum ;}.

  • 单巧4498: C语言问题,请编写函数fun,函数的功能是把字符串中的数字加1 -
    18717111943: 思路:遍历字符数组,判断字符是否是数字,如果是进行相关操作,最后输出字符串数组即可. 参考代码: #include <stdio.h> #include<string.h> void fun(char a[]){ int i; for(i=0;i<strlen(a);i++) if(a[i]>='0'&&a[i]<='8') a[i]++; else if(a[i]=='9') a[i]='0'; } int main() { char a[100]; gets(a); fun(a); puts(a); return 0; } /* 运行结果: abcABd24e9fg abcABd35e0fg */

  • 单巧4498: 急!!!c语言fun函数求字符串长度 -
    18717111943: #include "stdio.h" int Fun(char *str) { char *p=str; while(*p++); return p-str-1; } void main() { char str[80]; gets(str); printf("%d\n",Fun(str)); }

  • 相关话题

    ap在线精英在线最新简短笑话,好笑的段子,搞笑句子,男女朋友校园冷笑话,搞笑歌词对白台词,夫妻搞笑对话,手机流行笑话,逗人笑的动物经典笑话,最新幽默搞笑图文,好笑的视频分享给朋友
    若有事情,请联系电邮
    © <搞笑吧