1.求水仙花数
cpp
#include <stdio.h>
int main() {
//求水仙花数:1.三位数 2.个位的立方+十位的立方+百位的立方=该数
int unit, tens, hundreds;
for (int i = 100; i < 1000; i++)//i表示该水仙花数
{
unit = i / 1 % 10;
tens = i / 10 % 10;
hundreds = i / 100 % 10;
if (unit*unit*unit+tens*tens*tens+hundreds*hundreds*hundreds == i)
{
printf("水仙花数有:%d\n", i);
}
}
return 0;
}
2.判断一个数是几位数
思路:
cpp
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
//求一个数是几位数
int num,count=0;
printf("请输入一个数:");
scanf("%d", &num);//scanf函数每次别忘了取地址值
while (num > 0) {//直接用while,不用for,因为不知道起始条件、终止条件、和下一次循环执行的依据
num /= 10;
count++;//除一次,计数一次,条件是大于0
}printf("该数是%d 位数\n", count);
return 0;
} 快夸夸我,不要吝啬,来吧!!!!!!!!!
cpp
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
//求和
int sum=0,s=0,a,i,n;//例如:s=0时,a=2时,2=0*10+2 22=2*10+2
printf("请输入一个数,然后输入个数:");
scanf("%d%d", &a,&n);//scanf函数每次别忘了取地址值 n是个数 a是对应的数值
for ( i = 1; i <=n; i++)
{
s = s * 10 + a;
sum += s;
}printf("求和为:%d", sum);
return 0;
}
思路二:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
//求和(思路二)
int sum=0,s=0,a,i,n,t=1;//例如:s=0时,a=2时,2=0*10+2 22=2*10+2
printf("请输入一个数,然后输入个数:");
scanf("%d%d", &a,&n);//scanf函数每次别忘了取地址值 n是个数 a是对应的数值
for ( i = 1; i <=n; i++)
{
s = a * t + s;
t *= 10;
sum += s;
}printf("求和为:%d", sum);
return 0;
}
4.输出前40项斐波那契数列
cpp
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
//输出前40项斐波那契数列
int a=1, b=1, c;//设a是第一项,b是第二项,c是第三项
for (int i = 1; i <= 40; i++)//i是项数
{
if (i == 1 || i == 2) {
c = 1;
}if (i>2)
{
c = a + b;
a = b;
b = c;
}
printf("%d ", c);
if (i%5 == 0)
{
printf("\n");//我希望的是,每输出5项数列,就换一行
}
}
return 0;
}
6.求和
cpp
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main() {
//求和
int i, tag = 1,n;//tag用来处理正负号,i表示项数同时表示分母,s表示累加的结果
double s = 0;
printf("请输入你想要的项数n:");
scanf("%d", &n);
for ( i = 1; i <= n; i++)
{
s = s + 1.0/i * tag;
tag = -tag;
}printf("前%d项的结果是%lf", n, s);
return 0;
}