//题目28:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第
//3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后
//问第一个人,他说是10岁。请问第五个人多大? #define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h> //分析:经过阅读,发现f(5)=f(4)+2;f(4)=f(3)+2;f(3)=f(2)+2;f(2)=f(1)+2;所以可以使用递归,也可以直接求出
//f(5)=f(4)+2=f(3)+2+2=f(3)+2*2=f(2)+2+2+2=f(2)+2*3=f(2)+2*(5-2)=f(1)+2*(5-1)=18;
//由于太过简单,此处不使用递归 void main(){
printf("第五个人%d岁", + * ( - ));
system("pause");
}

//题目29:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h> //分析:求它是几位数,先除以10得到一个数,num-这个数,逆序将数字存到数组里递归就OK了
char str3[] = { }; void run3(int n){
if (n==)
{
printf("%c", str3[n]);
}
else{
printf("%c", str3[n]);
run3(n-);
}
} void main(){
scanf("%s", str3);
int index = ;
while (str3[index] != '\0'){
index++;
}
printf("这个数字是%d位数\n",index);
printf("逆序排列\n");
run3(index); system("pause");
}

//题目30:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。 

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h> //分析:很简单,分离出个十百千万位就OK了
//设计出万能获取数字各个位的方法 //获取正整数各个位的值
int * Numcount(int num){
//定义静态数组,以便调用
static int arr[] = { };
if (num >= (int)pow(10.0, 9.0))
{
arr[] = num / (int)pow(10.0, 9.0);
num = num - arr[] * (int)pow(10.0, 9.0);
arr[] = num / (int)pow(10.0, 8.0);
num = num - arr[] * (int)pow(10.0, 8.0);
arr[] = num / (int)pow(10.0, 7.0);
num = num - arr[] * (int)pow(10.0, 7.0);
arr[] = num / (int)pow(10.0, 6.0);
num = num - arr[] * (int)pow(10.0, 6.0);
arr[] = num / (int)pow(10.0, 5.0);
num = num - arr[] * (int)pow(10.0, 5.0);
arr[] = num / (int)pow(10.0, 4.0);
num = num - arr[] * (int)pow(10.0, 4.0);
arr[] = num / (int)pow(10.0, 3.0);
num = num - arr[] * (int)pow(10.0, 3.0);
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 8.0)){
arr[] = num / (int)pow(10.0, 8.0);
num = num - arr[] * (int)pow(10.0, 8.0);
arr[] = num / (int)pow(10.0, 7.0);
num = num - arr[] * (int)pow(10.0, 7.0);
arr[] = num / (int)pow(10.0, 6.0);
num = num - arr[] * (int)pow(10.0, 6.0);
arr[] = num / (int)pow(10.0, 5.0);
num = num - arr[] * (int)pow(10.0, 5.0);
arr[] = num / (int)pow(10.0, 4.0);
num = num - arr[] * (int)pow(10.0, 4.0);
arr[] = num / (int)pow(10.0, 3.0);
num = num - arr[] * (int)pow(10.0, 3.0);
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 7.0))
{
arr[] = num / (int)pow(10.0, 7.0);
num = num - arr[] * (int)pow(10.0, 7.0);
arr[] = num / (int)pow(10.0, 6.0);
num = num - arr[] * (int)pow(10.0, 6.0);
arr[] = num / (int)pow(10.0, 5.0);
num = num - arr[] * (int)pow(10.0, 5.0);
arr[] = num / (int)pow(10.0, 4.0);
num = num - arr[] * (int)pow(10.0, 4.0);
arr[] = num / (int)pow(10.0, 3.0);
num = num - arr[] * (int)pow(10.0, 3.0);
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 6.0))
{
arr[] = num / (int)pow(10.0, 6.0);
num = num - arr[] * (int)pow(10.0, 6.0);
arr[] = num / (int)pow(10.0, 5.0);
num = num - arr[] * (int)pow(10.0, 5.0);
arr[] = num / (int)pow(10.0, 4.0);
num = num - arr[] * (int)pow(10.0, 4.0);
arr[] = num / (int)pow(10.0, 3.0);
num = num - arr[] * (int)pow(10.0, 3.0);
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 5.0))
{
arr[] = num / (int)pow(10.0, 5.0);
num = num - arr[] * (int)pow(10.0, 5.0);
arr[] = num / (int)pow(10.0, 4.0);
num = num - arr[] * (int)pow(10.0, 4.0);
arr[] = num / (int)pow(10.0, 3.0);
num = num - arr[] * (int)pow(10.0, 3.0);
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 4.0))
{
arr[] = num / (int)pow(10.0, 4.0);
num = num - arr[] * (int)pow(10.0, 4.0);
arr[] = num / (int)pow(10.0, 3.0);
num = num - arr[] * (int)pow(10.0, 3.0);
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 3.0))
{
arr[] = num / (int)pow(10.0, 3.0);
num = num - arr[] * (int)pow(10.0, 3.0);
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 2.0))
{
arr[] = num / (int)pow(10.0, 2.0);
num = num - arr[] * (int)pow(10.0, 2.0);
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else if (num >= (int)pow(10.0, 1.0))
{
arr[] = num / (int)pow(10.0, 1.0);
num = num - arr[] * (int)pow(10.0, 1.0);
arr[] = num;
}
else{
arr[] = num;
}
return arr;
} void main(){
int num = ;
int *p = Numcount(num);
if ((*(p) == *(p + )) && (*(p+) == *(p + )))
{
printf("%d是回文数\n",num);
}
else{
printf("%d不是回文数\n", num);
}
system("pause");
}

C语言 百炼成钢10的更多相关文章

  1. C语言的10大基础算法

    C语言的10大基础算法 算法是一个程序和软件的灵魂,作为一名优秀的程序员,只有对一些基础的算法有着全面的掌握,才会在设计程序和编写代码的过程中显得得心应手.本文包括了经典的Fibonacci数列.简易 ...

  2. Go语言Windows 10开发环境搭建:Eclipse+GoClipse

    Intel Core i5-8250U,Windows 10家庭中文版,go version go1.11 windows/amd64, Eclipse IDE for C/C++ Developer ...

  3. C语言基础 (10) 变量作用域,生命周期 内存结构

    01 课程回顾 1.指针数组 注意: 对于数组来说,在使用sizeof的时候a和&a[0]是不一样的, 虽然以%x打印出来他们都是地址 2.值传递 int a; fun(a); int *** ...

  4. C语言基础(10)-数组

    一.数组的定义 数组就是在内存中连续的相同类型的变量空间. 二.数组在内存中的存储方式 同一个数组所有的成员都是相同的数据类型,同时所有的成员在内存中的地址是连续的,数组名是一个地址的常量,代表数组中 ...

  5. C语言 百炼成钢3

    //题目7:用*号输出空心菱形图案 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> # ...

  6. C语言 百炼成钢2

    //题目4:输入某年某月某日,判断这一天是这一年的第几天? #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<st ...

  7. C语言 百炼成钢1

    //题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> ...

  8. C语言 百炼成钢19

    /* 题目55: 有一个字符串符合以下特征(”abcdef,acccd,eeee,aaaa,e3eeeee,sssss,";),要求写一个函数(接口),输出以下结果 1) 以逗号分割字符串, ...

  9. C语言 百炼成钢18

    //题目52:用递归打印以下图形 //* //*.*. //*..*..*.. //*...*...*...*... //*....*....*....*....*.... #include<s ...

随机推荐

  1. 推荐几个优秀的java爬虫项目

    java爬虫项目   大型的: Nutch apache/nutch · GitHub 适合做搜索引擎,分布式爬虫是其中一个功能. Heritrix internetarchive/heritrix3 ...

  2. 【读书笔记】iOS-AppKit简介

    一,IBOutlet和IBAction.它们实际上只是AppKit提供的#defines.IBOutlet的含义没有任何作用,因此将不对对它时行编译.IBAction定义为void,这意味着在AppC ...

  3. UITableView小知识点总结

    1.UITableView去除空的cell,多余不用的 在viewdidload方法里加上这一句即可 self.tableView.tableFooterView = [[UIView alloc]  ...

  4. window下使用vnc远程登录阿里云ECS/ubuntu图形界面

    通常我们都使用putty.secureCRT等软件来远程登录linux系统,但这些软件仅提供字符终端界面,若要像windows的远程桌面连接那样登录linux的图形界面,我们可以使用VNC这类的软件. ...

  5. SQL之 CAST 和 CONVERT

    原文来自于: http://bbs.csdn.net/topics/330251394 CAST 和 CONVERT将某种数据类型的表达式显式转换为另一种数据类型.CAST 和 CONVERT 提供相 ...

  6. HTTPAnalyzer截获SoapUI发送的接口报文

      一.截获过程 1. 开启HTTPAnalyzer报文截获工具. 2. 通过SoapUI工具发送报文. 3. HTTPAnalyzer报文截获工具自动截获. 二.SoapUI报文准备 准备工作是:打 ...

  7. JQ插件

    什么是插件 插件(plugin)是JQuery的扩展(Extension),以JQuery的核心代码为基础,是一种遵循一定规范的应用程序接口编写出来的程序. 插件的引入 引入jquery.js文件 引 ...

  8. gdb 远程调试 android native 程序

    ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 先看一张原理图: 我是 Linux 和 Android 双料 0 基础,目前对 gdb 了解的很浅显.(注意 ...

  9. python Quicksort demo

    __author__ = 'student' ''' quicksort step 1, choose one pivot, such as pivot=la[0] step 2, scan the ...

  10. WEB安全--CSRF防御

    CSRF漏洞防御主要可以从三个层面进行,即服务端的防御.用户端的防御和安全设备的防御. 服务端的防御 目前服务器端防御CSRF攻击主要有5种策略(我知道的就这么多):验证HTTP Referer字段, ...