1.输出菱形
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void change(char a[], char b[],int k) //封装函数进行数组内容交换
{
char c;
c = *(a+k);
*(a+k) = *(b+k);
*(b+k) = c;
}
int main()
{
char a[14] = { " " };
char b[14] = { "*************" };
char c;
int r = 0;
int l = strlen(a) - 1; //求出数组长度
int m1 = (r + l) / 2;
int m2 = m1;
while (m1 >= r && m2<=l) //输出菱形上半部分
{
if (m1 == m2) //第一次交换只用交换一次
{
change(a, b, m1);
printf("%s\n", a);
m1--; m2++;
continue;
}
change(a, b, m1); //交换
change(a, b, m2);
printf("%s\n", a);
m1--;
m2++;
}
while (r <= l) //输出菱形下半部分
{
a[r] = b[r];
a[l] = b[l];
printf("%s\n", a);
r++;
l--;
}
system("pause");
return 0;
}
2.查找1000以内的水仙花数
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int i = 0;
int a = 0;
int b = 0;
int c = 0;
int t = 0;
for (i = 100; i <= 999; i++)
{
a = i / 100; //百位
b =( i / 10) % 10; //十位
c = i % 10; //个位
t = a*a*a + b*b*b + c*c*c;
if (t == i) //判断是否为水仙花数
printf("%d ", i); //成立打印数字
}
system("pause");
return 0;
}
3.求a+aa+aaa+aaaa+aaaaa的和
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int a = 0;
int i = 0;
int sum = 0;
printf("请输入索要求得数字:");
scanf("%d", &a);
for (i = 1; i <= 5; i++)
{
sum += a * pow(10, 5 - i)*i;
}
printf("%d", sum);
system("pause");
return 0;
}