#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main(){
int maxlength;
printf("请输入最长的个数:");
scanf("%d", &maxlength);
int temp = maxlength-2;
int i = 1;
while (2 * i - 1 <= maxlength){
int length = 2*i - 1;
for (int j = (maxlength-length)/2; j > 0; j--){
printf(" ");
}
for (int k=1;k<=length;k++){
printf("*");
}
printf("\n");
i++;
}
while (temp>0){
for (int j = (maxlength - temp) / 2; j > 0; j--){
printf(" ");
}
for (int k = 1; k <=temp; k++){
printf("*");
}
printf("\n");
temp -= 2;
}
system("pause");
return 0;
}
2.求水仙花数。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
//数的各个位n方和
int Narcissistic(int a){
int sum = 0;
int b = a;
int c = a;
int n = 1;
//求数的位数
while (c/10){
c = c / 10;
n++;
}
//求各个位数n方和
for (int i = 0;b>0; i++){
sum = sum+pow(b%10,n);
b = b / 10;
}
return sum;
}
//输出范围内的“水仙花数”
void outNarcissistic(int a, int b){
for (int i = a; i <= b; i++){
int sum = Narcissistic(i);
if (sum==i){
printf("%d\t", i);
}
}
printf("\n");
}
int main(){
int a, b;
printf("请输入要求“水仙花数”的范围(中间用,隔开):");
scanf("%d,%d", &a, &b);
outNarcissistic(a, b);
system("pause");
return 0;
}
3.求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main(){
int sn = 0;
int sum = 0;
int a, n;
printf("请输入a,n:");
scanf("%d,%d", &a, &n);
for (int i = 0; i < n; i++){
sum = sum + a;
sn = sn + sum;
a = a * 10;
}
printf("%d\n", sn);
system("pause");
return 0;
}