解题思路:一种通俗易懂易学,一种是优化后的解法
总体思路就是简单的求位数数字的数学方法,先/后%就行
注意事项:细心就行,主要要把循环结构每一步的循环结构弄明白才行
参考代码:
数组解法入下
#include <stdio.h>
#include <string.h> //C语言字符串头文件,strlen() 函数包含在此内
int main()
{
char str[10];
scanf("%s", str);
int len = strlen(str); //获取字符串长度
printf("%d\n", len);
for (int i = 0; i < len; i++)
{
printf("%c ", str[i]);
}
printf("\n");
for (int i = len - 1; i >= 0; i--)
{
printf("%c", str[i]);
}
return 0;
}
第一种简单易学的解法:
#include<stdio.h>
int main()
{
int a,b,c,d,e;
int i,x,flag=0;
scanf("%d", &x);
for (i = 1; i < 100000; i = i * 10)
if (x / i != 0)
flag=flag+1;
if (flag == 5)
{
a = x / 10000;
b = x / 1000 % 10;
c = x / 100 % 10;
d = x / 10 % 10;
e = x % 10;
printf("%d\n",flag);
printf("%d %d %d %d %d\n",a,b,c,d,e);
printf("%d%d%d%d%d",e,d,c,b,a);
}
if (flag == 4)
{
b = x / 1000 % 10;
c = x / 100 % 10;
d = x / 10 % 10;
e = x % 10;
printf("%d\n",flag);
printf("%d %d %d %d\n",b,c,d,e);
printf("%d%d%d%d",e,d,c,b);
}
if (flag == 3)
{
c = x / 100 % 10;
d = x / 10 % 10;
e = x % 10;
printf("%d\n",flag);
printf("%d %d %d\n",c,d,e);
printf("%d%d%d",e,d,c);
}
if (flag == 2)
{
d = x / 10 % 10;
e = x % 10;
printf("%d\n",flag);
printf("%d %d\n",d,e);
printf("%d%d",e,d);
}
if (flag == 1)
{
e = x % 10;
printf("%d\n",flag);
printf("%d\n",e);
printf("%d",e);
}
return 0;
}
优化后的解法:
#include <stdio.h>
#include <math.h> //C语言数学头文件,pow() 函数包含在此内
int main() {
int num;
scanf("%d", &num);
int n = 0;
if (num == 0) n = 1;
int temp = num; //定义 temp 来代替 num 进行计算
while (temp) { //将temp循环除以 10,到 0 为止
n++;
temp /= 10;
}
printf("%d\n", n);
for (int i = n - 1; i >= 0; i--)
{
temp = num / pow(10, i); //除以 10 的 i 次方
printf("%d ", temp % 10); //输出对 10 取余
}
printf("\n"); //输出回车
for (int i = 0; i < n; i++)
{
temp = num / pow(10, i);
printf("%d", temp % 10);
}
return 0;
}
0.0分
0 人评分
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:567 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:497 |
1197求助浏览:667 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:691 |
C语言程序设计教程(第三版)课后习题9.2 (C语言代码)浏览:646 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:725 |
求圆的面积 (C语言代码)浏览:712 |
1074(纳闷了,答案错误,求指教)浏览:384 |
C语言程序设计教程(第三版)课后习题8.2 (C++代码)浏览:671 |
循环链表与单个结点删除浏览:1115 |