c语言程序设计第五章

例5.1

代码

#include<stdio.h>
#include<math.h>
int main() {
 int n = 13, year;
 double number, rate = 0.02;
 for (year = 1;year <= 10;year++) {
  number = n * pow((1 + rate), year);
  printf("%2d年后,人数为:%.2f亿\n",year,number); 
 }
 return 0;
}

运行结果

 5.2

代码

#include<stdio.h>
#include<math.h>
int main() {
 double sum, item, flag, denominator;
 sum = 0;
 item = 1;
 flag = 1;
 denominator = 1;
 while( fabs(item) >= 1e-6) {
  sum = sum + item;
  flag = -flag;
  denominator = denominator + 3;
  item = flag / denominator;
 }
 printf("sum=%f\n",sum);
 return 0;
}


运行结果 使用for语句实现循环结构

for的一般式为

for(表达式1;表达式2;表达式3)

循环体语句

5.3

代码

#include<stdio.h>
int main() {
 int i, n, sum;
 scanf_s("%d",&n);
 sum = 0;
 for (i = 1;i <= n;i++) {
  sum = sum + i;
 }
 printf("由1到%d的和是:%d\n", n, sum);
 return 0;
}


运行结果

5.4

代码 

#include<stdio.h>
int main() {
 int i, j;
 for (i = 1;i <= 5;i++) {
  for (j = 1;j <= 20-i;j++) {
   printf(" ");
  }
  for (j = 1;j <= 2 * i - 1;j++) {
   printf("*");
  }
  printf("\n");
 }
 return 0;
}

运行结果

 5.35

流程图

5.35

流程图 

 

#include<stdio.h>
#include<stdlib.h>
int main() {
 int m, n, count = 0;
 m = rand() % (80 - 10 + 1) + 10;
 printf("请输入一个10-80之间的整数:");
 while (1) {
  scanf_s("%d",&n);
  count++;
  if (m==n) {
   printf("恭喜!你猜对了,你真棒!\n");
   break;
  }else if (m > n && count < 5) {
   printf("对不起,你猜小了,再来一次!");
  }
  else if (m < n && count < 5) {
   printf("对不起,你猜大了,再来一次!");
  }
  if (count==5) {
   printf("对不起,你没有机会了!\n这个数是:%d游戏结束!\n",m);
   break;
  }
 }
 return 0;
}


运行结果

 

5.36

流程图

 代码

#include<stdio.h>
#include<math.h>
int main() {
 int x,i, j = 0, n, k = 0;
 for (x = 100;x < 1000;x++) {
  k = sqrt(x);
  for (i = 2;i <= k;i++) {
   if (x % i == 0) {
    break;
   }
   if (i > k) {
    k = x;
    n = 0;
    while (k > 0) {
     n = n * 10 + k % 10;
     k /= 10;
    }
    if (x == n) {
     printf("%d\t", x);
     if (++j % 5 == 0) {
      printf("\n");
     }
    }
   }
  }
 }
   return 0;
 }

 运行结果


 

5.37

流程图

 

代码 

#include<stdio.h>
int main() {
 int x, t;
 printf("i\tpower\n");
 for (x = 100;x < 1000;x++) {
  t = x * x;
  while (t != 0) {
   if (x == t % 1000) {
    printf("%d\t%d\n", x, x * x);
    break;
   }
   else {
    t = t / 10;
   }
  }
 }
 return 0;
}

运行结果

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值