HomeWork0925.4

//1.在屏幕上输出以下图案:
//*1
//***3
//*****5
//*******7
//*********9
//***********11
//*************13
//***********11
//*********9
//*******7
//*****5
//***3
//*1
int main() {
 int N;
 scanf("%d", &N);
 int tmp = N / 2, flag = 0;
 char a = '*';
 for (int i = 0, t = 1; i < N; i++) {
  if (i < tmp) {
   int p = t;
   while (p--) printf("%c", a);
   printf("%d", t);
   t += 2;
   printf("\n");
  }
  else {
   if (flag == 0 && N % 2 == 0) flag = 1, t -= 2;
   int q = t;
   while (q--) printf("%c", a);
   printf("%d", t);
   t -= 2;
   printf("\n");
  }
 }
 system("pause");
 return 0;
}
/*2.求出0~999之间的所有“水仙花数”并输出。
“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身如;153=1+5+3 ? ,
则153是一个“水仙花数”。在数论中,水仙花数(Narcissistic number)也称为自恋数、自幂数、
阿姆斯壮数或阿姆斯特朗数(Armstrong number)是指一N位数,其各个数之N次方和等于该数。
例如153、370、371及407就是三位数的水仙花数,其各个数之立方和等于该数:
153 = 1^3 + 5^3 + 3^3。
370 = 3^3 + 7^3 + 0^3。
371 = 3^3 + 7^3 + 1^3。
407 = 4^3 + 0^3 + 7^3。
*/
int main() {
 for (int i = 100; i < 10000000; i++) {
  int x = i;
  int num = 0, tmp = x, a = 0, n = 0;
  for (; x != 0;) { 
   num = x % 10;
   x /= 10;
   n++; }
  x = tmp;
  for (; x != 0;) {
   num = x % 10;
   a += pow(num, n);
   x /= 10;
  }
  x = tmp;
  if (a == x) printf("%d\n", a);
 }
  system("pause");
  return 0;
  }
//3.求Sn = a + aa + aaa + aaaa + aaaaa的前5项之和,其中a是一个数字,
//例如:2 + 22 + 222 + 2222 + 22222
int main() {
 int a = 0,i = 1,num = 0,n = 0;
 printf("请输入项数和数字\n");
 scanf("%d%d", &n,&a);
 //第一个for为了输出前n项数字,第二个for为了输出
 for (i = 1; i <= n; i++) {
  int k = pow(10, i) - 1;
  int j = k / 9 * a;
  num += j;
 }
 printf("和为:%d\n", num);
 system("pause");
 return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值