编写函数reverse(int number),它的功能是将number逆序输出,在主函数中输入一个整数并调用该函数。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编写函数reverse(int number),它的功能是将number逆序输出,在主函数中输入一个整数并调用该函数。相关的知识,希望对你有一定的参考价值。

例如:reverse(11233)的返回值是33211。
用C语言,谢谢了!

#include <stdio.h>

int reverse_num(int n)

int m = n%10;

int i = n/10;

while (i > 0)

int a = i%10;

m *= 10;

m += a;

i /= 10;

return m;

int main()

int n = 0;

int m = 0;

printf("Please input a number:\\n");

scanf("%d", &n);

printf("The reverse number is : %d\\n",reverse_num(n));

return 0;

扩展资料

在一个变化过程中,发生变化的量叫变量(数学中,常量为x,而y则随x值的变化而变化),有些数值是不随变量而改变的,我们称它们为常量。

自变量(函数):一个与它量有关联的变量,这一量中的任何一值都能在它量中找到对应的固定值。

因变量(函数):随着自变量的变化而变化,且自变量取唯一值时,因变量(函数)有且只有唯一值与其相对应。

函数值:在y是x的函数中,x确定一个值,y就随之确定一个值,当x取a时,y就随之确定为b,b就叫做a的函数值。

参考技术A 底下是个简单程序。方法很简单,number%10是取number的个位数字,然后将结果加入到res中,再用number = number/10把number的个位数字去掉,进入下一次循环。你可以拿着笔演算一遍,好了解算法的执行过程。
不过这个程序考虑的不全面,比如:负数问题?还有就是以0结尾的数字。比如reverse(10)的结果是1还是01?该程序返回的是1.

int reverse(int number)
int res = 0;
while(number != 0)
res = res * 10 + number % 10;
number = number/10;

return res;


希望可以帮到你!本回答被提问者采纳
参考技术B #include<stdio.h>
#include<stdlib.h>
int reverse(int number)

int len=0,i=0;
char temp[100]=0;
len=strlen(temp);
sprintf(temp,"%d",number);
len=strlen(temp);
for(i=len;i>=0;--i)
printf("%c",temp[i]);
printf("\n");
return 0;

int main()

reverse(11233);
return 0;

先把整数转换成字符串再倒叙输出
参考技术C #include <stdio.h>
#include <string.h>

int reverse(int number)

static int result = 0;
int rest = number % 10;
if (0 != rest)

result += rest;
result *= 10;
reverse(number/10);

else

return result/10;



void main()

int result = reverse(11233);
printf("\n%d\n", result);
参考技术D int reverse(int number)

int rev = 0;
while(number != 0)
rev = rev * 10 + number % 10;
number /= 10;

return rev;

编写函数int count_number_string(char str[])和函数int maxnum_string(char str[])

题目如图:


技术分享



这里不再赘述


代码:


//字符串中统计与查询
//杨鑫
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXN 1000
char Str[MAXN];
/*
 *寻找字符串中最大的整数
 * */
int maxnum_string(char str[])
{
	int i = 0, n = 0, maxNum = 0;
	while(str[i] != ‘\0‘)
	{
		if(str[i] >= ‘0‘ && str[i] <= ‘9‘)
				n = n * 10 + str[i] - ‘0‘;
		else
		{
			if(maxNum < n)
					maxNum = n;
			n = 0;
		}
		i++;
	}
	if(maxNum < n)
			maxNum = n;
	return maxNum;
}

/*
 *功能:统计字符串中的数字
 * */
int count_number_string(char str[])
{
	int i = 0, count = 0;
	while(str[i] != ‘\0‘)
	{
		if(str[i] >= ‘0‘ && str[i] <= ‘9‘)
		{
			if(str[i+1] < ‘0‘ || str[i+1] > ‘9‘)
			{		
					count++;
			}
					
		}
		i++;
	}
	return count;

}

int main()
{
	int i = 0, count_main = 0, max = 0;
	printf("请输入一个字符串: ");
	gets(Str);
	printf("字符串的内容: ");
	puts(Str);
	count_main = count_number_string(Str);
	printf("字符串一共同拥有:%d个数字,", count_main);
	max = maxnum_string(Str);
	printf("最大数字为:%d\n", max);
	return 0;	
}


结果:

技术分享











以上是关于编写函数reverse(int number),它的功能是将number逆序输出,在主函数中输入一个整数并调用该函数。的主要内容,如果未能解决你的问题,请参考以下文章

编写函数int count_number_string(char str[])和函数int maxnum_string(char str[])

python:数组/列表(remove()函数append()函数sort()函数reverse()函数)

从 reverse_iterator 中的用户定义的迭代器继承所有函数

c语言递归函数求逆序数,函数定义如下int reverse(int n)

将列表中的元素转化为数字并排序

内置函数