fun(3)输出3,运行两个fun(2),第一个fun(2)输出2运行两个fun(1),输出两个1,
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、雅安服务器托管、营销软件、网站建设、霍邱网站维护、网站推广。
再运行第二个fun(2)输出2运行两个fun(1),输出两个1。
可以参考下面的代码:
#include stdio.h
#include stdlib.h
void print_order_number(unsigned number)
{
printf("%d",number%10);fflush(NULL);
if ( number = 10 )
{
print_order_number(number/10);
}
}
int main(int argc, char**argv)
{
if ( argc != 2 )
{
printf("Usage: rev_print integer \n");
exit(0);
}
unsigned number = atol(argv[1]);
print_order_number(number);
return 0;
}
扩展资料:
printf函数定义
函数声明
int printf(char *format...);
调用格式
printf("格式化字符串", 参量表);
格式化字符串包含三种对象,分别为:
1、字符串常量;
2、格式控制字符串;
3、转义字符。
字符串常量原样输出,在显示中起提示作用。输出表列中给出了各个输出项,要求格式控制字符串和各输出项在数量和类型上应该一一对应。其中格式控制字符串是以%开头的字符串,在%后面跟有各种格式控制符,以说明输出数据的类型、宽度、精度等。
参考资料来源:百度百科-printf
参考资料来源:百度百科-递归函数
以下是使用递归方法实现将输入字符串按反序输出的 C 语言程序:
```c
#include stdio.h
// 递归函数,将字符串 str 按反序输出
void printReverse(char *str) {
if (*str == '\0') { // 判断是否到达字符串结尾
return;
} else {
printReverse(str + 1); // 递归调用,输出下一个字符
printf("%c", *str); // 输出当前字符
}
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
printf("反序输出字符串:");
printReverse(str);
printf("\n");
return 0;
}
```
在上述代码中,我们首先定义了一个递归函数 `printReverse`,该函数接受一个指向字符串的指针作为参数。在函数内部,我们首先判断当前指针所指向的字符是否为字符串结尾,如果是,则直接返回;否则,我们递归调用该函数,并传入指向下一个字符的指针,以实现按反序输出字符串。最后,我们输出当前字符。
在 `main()` 函数中,我们首先使用 `scanf()` 函数获取用户输入的字符串,并将其保存到字符数组 `str` 中。然后,我们调用 `printReverse()` 函数,并传入指向字符串开头的指针,以开始递归输出过程。最后,我们在输出结束后添加换行符,以使输出更加美观。
需要注意的是,在实际应用中,递归函数可能会导致栈溢出等问题,因此需要控制递归深度,以确保程序的健壮性和安全性。另外,也可以使用其他方法(如循环)来实现字符串反转的算法。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款