1.打印菱形
- 首先打印上半部分(分别打印空格和打印 *号)
int main(){
//打印行数
int line = 0;
int i = 0;
scanf("%d", &line);
for (i = 0; i < line; i++){
//打印上半部分(先打印空格,再打印*号)
int j = 0;
for (j = 0; j < line - i - 1; j++){
printf(" ");
}
for (j = 0; j < 2 * i + 1; j++){
printf("*");
}
printf("\n");
}
打印上半部分结果:
-相同的方法打印下半部分
//相同的方法打印下半部分
for (i = 0; i < line - 1; i++){
int j = 0;
for (j = 0; j < i + 1; j++){
printf(" ");
}
for (j = 0; j < 2 * (line - i - 1) - 1; j++){
printf("*");
}
printf("\n");
}
打印出整个菱形
2.打印水仙花数
#include <stdio.h>
#include <math.h>
int main(){
int i = 0;
for (i = 1; i < 1000000; i++){
//确定i是几位数
int tmp = i;
int sum = 0;
int n = 0;
while (tmp){
n++;
tmp/=10;
}
//计算每一位的n次方之和
tmp = i;
while (tmp){
sum += (int)pow(tmp%10, n);
tmp/=10;
}
//比较
if (sum == i){
printf("%d\n", i);
}
}
return 0;
}
3.求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字(注意a不能发生改变)
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main(){
int a = 0;
int n = 0;
int i = 0;
int sum = 0;
int j = 0;
scanf("%d%d", &a, &n);
for (i = 0; i < n; i++){
j = j * 10 + a;
sum += j;
}
printf("sum = %d", sum);
return 0;
}