实验6.1
//程序功能:输入一个整数n,求1/1-2/3+3/5-4/7+5/9-6/11+……的前n项之和
#include <stdio.h>int main()
{int i, n;float sum = 0, flag = 1.0;printf("Input n:");scanf("%d", &n);for (i = 1; i <= n; i++) //循环n次{sum = sum + flag * i / (2 * i - 1); //累加一项flag = -flag;                       //改变累加项的符号}printf("Sum = %f\n", sum);system("pause");return 0;
}
实验6.2
//程序功能:求前n项阶乘之和
#include <stdio.h>int main()
{int n, i;double sum = 0, product = 1; //声明并赋初值printf("Input n:");scanf("%d", &n);for (i = 1; i <= n; i++){product = product * i; //计算阶乘sum = sum + product;   //累加一项}printf("sum = %Lf\n", sum);system("pause");return 0;
}
实验6.3
//利用级数n(n<=1e-6),求cos(x)的值
#include <stdio.h>
#include <math.h> //引入头文件
#define EPS 1e-6  //宏定义EPS=1e-6int main()
{double n = 1, cosx, t;float x;printf("Please input x:");scanf("%f", &x);t = 1;cosx = 0;do{cosx = cosx + t;t = -t * x * x / ((2 * n) * (2 * n - 1)); //计算第n项的阶乘n = n + 1;} while (fabs(t) > EPS); //循环终止条件:第n项的绝对值小于1e-6printf("cos(%f)=%0.8f\n", x, cosx);system("pause");return 0;
}
实验6.4
/*程序功能:统计输入字符中,英文(letters),空格(space),数字(digit)
和其他字符(other的个数)*/
#include <stdio.h>
int main()
{char ch;int letters = 0, spaces = 0, digit = 0, other = 0;printf("Please input some characters: \n");while ((ch = getchar()) != '\n') //输入回车键终止循环{if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))letters++; //计算字母else if (ch == ' ')spaces++; //计算空格else if (ch >= '0' && ch <= '9')digit++; //计算数字elseother++; //计算其他字符}printf("letters = %d, spaces = %d\n", letters, spaces);printf("digit=%d, others = %d\n", digit, other);system("pause");return 0;
}
实验6.5
//程序功能:求e的近似值
#include <stdio.h>
#define EPS 1e-8int main()
{double e = 1, fact = 1;long n = 0;do{n++;fact *= n;e = e + 1 / fact;} while ((1 / fact) > EPS);//当(1/fact)< EPS 时,假,跳出循环printf("e=%0.8f\n", e);system("pause");return 0;
}
实验6.6
//输入一个整数,判断该数是否是完数(真因数之和等于数本身),如6,28,496
#include <stdio.h>int main()
{int m, sum = 0, n = 1;printf("Please input a integer(>1): ");scanf("%d", &m);do{if (m % n == 0) //判断是否为因子sum = sum + n;n++;} while (n <= m - 1);if (sum == m) //满足此条件为完数printf("%d is a complete number.\n", m);elseprintf("%d isn't a complete number.\n", m);system("pause");return 0;
}
实验6.7
//输入任意字符串,将其中字母直接输出,数字逆序输出
#include <stdio.h>int main()
{char ch;long m = 0, n = 0, nx = 0;while ((ch = getchar()) != '\n'){if (ch >= '0' && ch <= '9')m = m * 10 + (ch - '0');else{putchar(ch);}}//printf("%d", m);n = m;while (m != 0){nx = (nx * 10) + (m % 10);m = m / 10;}printf("\n%ld reverse number is %ld\n", n, nx);system("pause");return 0;
}
实验6.8
//从键盘输入一批学生的成绩(以负数结束),计算平均分,并统计不及格成绩的个数
#include <stdio.h>int main()
{int num, n;float score, total = 0;num = 0;n = 1;printf("Please input score # %d(0~100): ", n);scanf("%f", &score);for (; score >= 0; n++){if (score < 60)num++;total = total + score;printf("Please input score # %d(0~100): ", n + 1);scanf("%f", &score);}printf("The average score is %.2f.\n", total / (n - 1));printf("The numbers between 0 and 59 is %d.\n", num);system("pause");return 0;
}
实验6.9
//从键盘输入一行以回车结束的字符,统计并输出字符的个数
#include <stdio.h>int main()
{int i = 0;char ch;while ((ch = getchar()) != '\n'){putchar(ch);i++;}printf("\nThere are %d characters.\n", i);system("pause");return 0;
}
实验6.10
//从键盘输入一个整数,计算并输出它是几位数
#include <stdio.h>int main()
{int i = 0, num, k;方法1:do{printf("Please enter a integer(>0): \n");scanf("%d", &num);} while (num < 0); //输入负数要求重新输入//   //方法2://input://    {//     printf("Please enter a integer(>0): \n");//        scanf("%d", &num);//  }// if (num < 0)goto input;  //输入负数要求重新输入k = num;while (k > 0){k /= 10;i++;}printf("%d is a %d-digit number.\n", num, i);system("pause");return 0;
}
实验6.11
//计算级数的值
#include <stdio.h>
#include <math.h> //引入头文件
#define EPS 1e-8  //宏定义EPS=1e-6int main()
{float total = 1, t = 1, x;long n = 0;printf("Please input x: ");scanf_s("%f", &x);do{n++;t = -t * (x / n);    //求每部分total = total + t;  //求和} while (fabs(t) > EPS); //跳出循环条件printf("total = %0.8f\n", total);system("pause");return 0;
}
实验7.1
//输出100以内能被3整除且个位数为6的所有整数
#include <stdio.h>int main()
{//方法一//int i,j;//for (i=0; i<10; i++)//{//   j=i*10+6;//   if (j%3!=0)//      continue;// printf("%d\n",j);//}//方法二int i;for (i = 6; i < 100; i++)if (i % 3 == 0 && i % 10 == 6)printf("%d\n", i);getchar();return 0;
}
实验7.2
//求大于2且满足下列条件的最小偶数: 该数被3,4,5,6除时余数均为2
#include <stdio.h>int main()
{int i = 4;while (1){if ((i % 3 == 2) && (i % 4 == 2) && (i % 5 == 2) && (i % 6 == 2)){printf("%d\n", i);break;}i = i + 2;}getchar();return 0;
}
实验7.3
//输出四位整数中满足: 该数的9倍恰好是其反序数的数(如1234→4321)
#include <stdio.h>int main()
{int i, n, m, nx;for (n = 1000; n < 10000; n++){m = n; //将n赋值给mnx = 0;for (i = 0; i < 4; i++){nx = nx * 10 + m % 10; //求m的逆序数m /= 10;}if (n * 9 == nx) //判断9n是否等于n的逆序数printf("%8d-->%8d\n", n, nx);}getchar();return 0;
}
实验7.4
//输出即是素数又是回文数的三位整数
#include <stdio.h>
#include <math.h>int main()
{int i, j = 0, n, m, k, flag;for (n = 100; n < 1000; n++){flag = 0; //标志置0k = sqrt(n * 1.0);for (i = 2; i <= k; k++) //判断是否为素数{if (n % i == 0){flag = 1; //标志置为1,非素数break;}if (flag)continue; //判断下一个数k = n;m = 0;while (k > 0) //求其反序数{m = m * 10 + k % 10;k /= 10;}if (m == n) //条件满足,则是要找的数{printf("%d\t", n);if (++j % 5 == 0)printf("\n");}}}getchar();return 0;
}//素数: 一个大于1的自然数,除了1和它本身外,不能被其他自然数整除
//回文数: 如123321
实验7.5
//输出0~200000范围内具有如下特征的数:组成该数的各位数字阶乘之和等于该数本身(如145=1!+4!+5!)
#include <stdio.h>int main()
{long n, m, sum, p;int i, j = 0, k;for (n = 1; n < 200000; n++){m = n;sum = 0; // 累加和置零while (m){k = m % 10; //取出一位数字p = 1;for (i = 2; i <= k; i++) //求阶乘p *= i;sum += p; //累加阶乘和m /= 10;}if (sum == n) //阶乘与原数相等,则满足条件{printf("%ld\t", n);if (++j % 2 == 0)printf("\n");}}getchar();return 0;
}
实验7.6
//输出两位正整数的"平方镜反数"(该数的平方与该数的反序数的平方互为反序数,如12*12=144,21*21=441)
#include <stdio.h>int main()
{int i, j, n, m, t;for (i = 10; i < 100; i++){j = i % 10 * 10 + i / 10; //求两位数的反序数m = i * i;n = j * j;t = 0;while (n) //求平方数的反序数{t = t * 10 + n % 10;n /= 10;}if (m == t)printf("(%d,%d)\n", i, j);}getchar();return 0;
}
实验7.7
//输入级数n, 使用嵌套循环求e值
#include <stdio.h>int main(void)
{int i, j, n;double e = 1, fact;printf("Input n:");scanf("%d", &n);for (i = 1; i <= n; i++){fact = 1;for (j = 1; j <= i; j++)fact = fact * j;e = e + 1.0 / fact;}printf("e=%.2f\n", e);getchar();getchar();return 0;
}
实验7.8
//将一个整数分解为质因数相乘{注:每个合数都可以写成几个质数(也可称为素数)相乘的形式}
#include<stdio.h>int main()
{int n;  // 输入的整数int i;  // 最小质数printf("输入一个整数:");scanf("%d",&n);printf("%d=",n);// n>=2才执行下面的循环for(i=2; i<=n; i++){while(n!=i){if(n%i==0){printf("%d*",i);n=n/i;}else break;}}printf("%d\n",n);getchar();getchar();return 0;
}
实验7.9
// 输出*的菱形图
#include <stdio.h>int main()
{for (int i=1;i<=4;i++)//打印前4行{for (int m = i; 4 - m > 0; m++)//控制行首的缩进printf("  ");for (int k=1;k<=(2*i-1);k++)//打印字符{printf("%s"," *");}printf("\n");}for (int i = 3; i > 0; i--)//打印后3行{for (int m = i; 3-m>=0 ; m++)//控制行首的缩进printf("  ");for (int k = 1; k <= (2 * i - 1); k++)//打印字符{printf("%s", " *");}printf("\n");}system("pause");return 0;
}

实验五 循环结构程序设计 → 张玉生《C语言程序设计实训教程》双色版 配套实验书答案 (纯手打, 仅供参考)相关推荐

  1. 实验六 数组程序设计 → 张玉生《C语言程序设计实训教程》双色版 配套实验书答案 (纯手打, 仅供参考)

    实验8.1 //取出正整数中的偶数字,并用这些数字构成一个最大数 #include <stdio.h> #define N 10int main() {int i, j, k = 0, t ...

  2. 实验七 函数程序设计 张玉生《C语言程序设计实训教程》双色版 配套实验书答案 (纯手打, 仅供参考)

    实验10.1 //求任意两个正整数的最小公倍数 #include <stdio.h>int gbs(int m, int n) {int r, p;p = m * n;while ((r ...

  3. 实验二 数据类型、运算符与表达式→ 张玉生《C语言程序设计实训教程》双色版 配套实验书答案 (纯手打, 仅供参考)

    实验2.1 #include<stdio.h>int main() {printf("What's "); /*输出 What's */printf("you ...

  4. 实验五——循环结构学习总结

    1.本次课学习到的知识点: (1)循环结构四要素:循环初始化,循环条件,循环体,循环变量修改 (2)循环语句包括:while语句.do-while语句.for语句.break语句 continue语句 ...

  5. 实验五 循环结构(python)

    第1关:斐波那契数列 400 任务要求 参考答案 评论49 任务描述 相关知识 什么是斐波那契数列 for循环 编程要求 测试说明 任务描述 本关任务:编写一个能计算斐波那契数列中第x个数的小程序. ...

  6. 实验五 循环结构第1关:斐波那契数列第2关:统计一段英文语句中的单词数和句子数第3关:密码判断第4关:通过数列求自然常数e第5关:双倍余额递减法计算固定资产折旧第6关:销售统计第7关:投资年限计算

    第1关:斐波那契数列 根据提示,在右侧编辑器补充代码,输入x,输出第x个斐波那契数列. 注意:斐波那契数列的第一项和第二项为1 x=eval(input("")) #代码开始 a= ...

  7. c语言程序设计主编张玉生教材答案,清华大学出版社-图书详情-《Visual Basic程序设计实验指导》...

    前言 Visual Basic程序设计实验指导本书是<Visual Basic 程序设计教程>的配套实验指导书,全书内容分为四部分. 第1部分为实验指导,设计了18个实验,每个实验都是编者 ...

  8. 周信东c语言实验二实验报告,实验三 循环结构程序设计参考答案

    C语言实操课循环结构答案 实验三 循环结构程序设计(参考答案) 1.设计程序sy3-1.c ,要求打印小学九九乘法表. 算法分析: 根据九九乘法表可知,该表共有9行,第i行有i个表达式,而且表达式中的 ...

  9. c语言已知祖父年龄70,实验三循环结构程序设计.doc

    实验三循环结构程序设计 实验三 循环结构程序设计 一.实验目的 (1) 掌握while.do~while.for语句的使用. (2) 掌握循环体内使用break.continue语句的作用. (3) ...

最新文章

  1. TensorFlow 2.0来了,为什么他却说“深度学习框架之争,现在谈结果为时尚早”?...
  2. 【高危】Strurs2又现高危漏洞(附PocExp)
  3. (数据结构与算法)单向环形链表解决约瑟夫问题
  4. JAVA8 Optional新特性和使用详解
  5. Machine Learning On Spark——基础数据结构(一)
  6. 激光光凝手术的副作用和必要性
  7. 【LeetCode笔记】剑指 Offer 26-. 树的子结构 (Java、双重dfs、二刷)
  8. 微博热点事件背后数据库运维的“功守道”
  9. Esper 7.x集成SparkStream 2.x
  10. 数据库零碎---mysql编码设置,与乱码分析
  11. java设计模式在java中的应用
  12. HDU 5025 Saving Tang Monk【bfs搜索】【北大ACM/ICPC竞赛训练】
  13. 《自然语言处理实战入门》---- 停用词 知多少?
  14. python----------基于TCP的交互式游戏设计
  15. Python读写txt文件
  16. 日历算法学习总结——公历
  17. VBS实现添加网络打印机
  18. AP3128 DC/DC转换器 小封装,高性能 异步升压10白光LED驱动
  19. 360无线网卡驱动linux,ubuntu安装360随身wifi驱动
  20. 微信新年祝福php代码,微信版新年祝福语

热门文章

  1. 解决:“Unity打包非全屏游戏,运行时仍然全屏” 的问题
  2. WasmEdge Book 文档贡献翻译征招募|赢树莓派、开源贡献证书
  3. 数据治理【元数据管理】
  4. linux脚本求命令行上整数和,《Linux命令行与shell脚本编程大全》 第二十二章 学习札记...
  5. 【论文阅读】Gosig: A Scalable and High-Performance Byzantine Consensus for Consortium Blockchains
  6. Building Worlds In Unreal 学习笔记——03-06 地形贴图/地形材质/修正重复/近景位移
  7. 下一个王者,必将出现在能源互联网领域
  8. 小红书和抖音的流量机制是什么?
  9. seer文献_SEER数据库的申请及数据提取方法与流程
  10. 机器学习入门之7种经典回归模型