C语言程序设计基础实验报告4
更新时间:2023-09-06 23:56:01 阅读量: 教育文库 文档下载
实验4 循环控制(一)
一、实验目的
1、掌握用while语句,do-while语句和for语句实现循环的方法。
2、掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。
3、进一步学习调试程序的技巧。
二、实验内容和步骤
编程序并上机调试运行。
1、以下程序PROG1.C的功能是:求[1,100]之间所有不能被3整除的整数之和。
部分源程序存在文件PROG1.C中,请将运算结果存入变量s中。 请在/*******begin********/ 与 /********end*********/之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。
/* PROG1.C */
#include "stdio.h"
#include "math.h"
#include "conio.h"
#include "stdlib.h"
void main()
{ int i,s;
/***********begin***********/ i=1;s=0; while(i<=100) if(i%3!=0) { } else i++;
/************end************/
printf("s=%d\n",s); s=s+i; i++;
}
2、以下给定程序FILL1.C的功能是:
从键盘输入整数,分别计算所输入的正整数的和、负整数的和。当输入0时,结束输入并输出计算结果。 程序有两个空(1)、(2)需要补充完整。请将程序中的____(1)____和____(2)____删除后,在相应的位置填入正确答案并调试直到得到正确结果为止。
注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构!
/* FILL1.C */
#include <stdio.h>
void main()
{ int x, sum1, sum2;
/**************found************/
sum1=0;sum2=0; scanf("%d", &x); while ( x != 0 ) { /**************found************/
}
printf("sum of >0 is %d\n", sum1);
printf("sum of <0 is %d\n", sum2); if (x>0) sum1 += x; sum2 += x; else scanf("%d", &x);
}
3、 输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
在得到正确结果后,请修改程序使之能分别统计大小写字母、空格、数字和其它字符的个数。
#include<stdio.h>
void main()
{
}
4、以下给定程序MODI1.C的功能是:
猴子吃桃问题。猴子第一天摘下若干桃子,当即吃了一半,还不过瘾,又多吃一个;第二天早上将剩下的桃子吃掉一半又多吃一个,到第10天的早上,只剩下一个桃子,求第一天共摘了多少桃子。
程序中有两处错误,错误都在提示行: /***********found***********/的下面一行。请改正程序中的错误,使它能得出正确的结果。
char x; int s1,s2,s3,s4; s1=0;s2=0;s3=0;s4=0; while(1) { if(x==10) break; scanf("%c",&x); if(x>=65&&x<=90||x>=97&&x<=122) s1++; s2++; s3++; s4++;} else if(x==32) else if(x>=48&&x<=57) else printf("sum of word is%d\n",s1); printf("sum of space is%d\n",s2); printf("sum of number is%d\n",s3); printf("sum of other words is%d\n",s4);
注意:程序中的其它地方不要随意改动,不得增行或删行,也不得更改程序的结构!
void main()
{ int i,j,x,p;
x=1;
/************found************/
j=9;
while(j>=1)
{ p=(x+1)*2;
}
printf("total is %d\n",p);
}
在得到正确结果后,修改题目,改为猴子每天吃了前一天剩下的一半后,再吃两个。请修改程序,并运行,检查结果是否正确。
5、将实验四第7题的菜单程序改成可循环选择,直到输入0结束程序。 /************found************/ x=p; j--;
6、以下给定程序MODI1.C的功能, 是打印一个如下的九九乘法表的一部分:
1 * 1 = 1
2 * 1 = 2 2 * 2 = 4
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16
程序中有两处错误,错误都在提示行:/***********found***********/的下面一行。
请改正程序中的错误,使它能得出正确的结果。
注意:程序中的其它地方请不要随意改动,不得增行或删行,也不得更改程序的结构!
/* MODI1.C */
#include <stdio.h>
void main( )
{
int i, j, k; for ( i=1; i<=4; i++) /************found************/ { for ( j=1; j<=4; j++)
printf("%3d *%3d
=%3d", i, j, i*j );
} } /************found************/ printf("\n");
7、以下给定程序MODI1.C的功能是:
已知一元以下的硬币中有一角、二角、五角三种面值,列举出将一元兑换成硬币的所有兑换方法。
程序中有两处错误,错误都在提示行:/***********found***********/的下面一行。程序中变量i,j,k分别存放五角、二角、一角面值硬币的数量。
请改正程序中的错误,使它能得出正确的结果。注意:程序中的其它地方请不要随意改动,不得增行或删行,也不得更改程序的结构!
/* MODI1.C */
#include <stdio.h>
#include <math.h>
void main()
{ float i,j,k;
/************found************/
for(i=0;i<=2;i++)
}
8、以下给定程序MODI1.C的功能是:
女儿今年12岁,父亲比女儿大30岁,计算出父亲在多少年后比女儿年龄
大一倍,那时他们的年龄各是多少?
程序中有两处错误,错误都在提示行:
/***********found***********/的下面一行。请改正程序中的错误,使它能得出正确的结果。
注意:程序中的其它地方请不要随意改动,不得增行或删行,也不得更改程序的结构!
#include <stdio.h>
void main()
{ int father,daughter;
int i; daughter=12; for(j=0;j<=5;j++) for(k=0;k<=10;k++) /************found************/ { if( i*0.5+j*0.2+k*0.1 == 1 ) } printf("%.0f,%.0f,%.0f\n",i,j,k);
/************found************/
father=42;
/************found************/
for(i=0;father!=2*daughter;i++)
{ daughter++;
father++;
}
printf("After %d years,father's age is twice to daughter's age\n",i);
printf("Their ages are %d and %d\n",father,daughter);
}
9、以下程序PROG1.C的功能是:
按下面公式,求π的近似值,直到最后一项中的分数小于10-6为止。
π 1 1 1 1
— =(1 + ——)*(1 + ——)*(1 + ——) * (1 + ——) * ……
2 1*3 3*5 5*7 7*9
部分源程序保存在文件PROG1.C中,程序中main()函数及部分变量已经定义,部分程序语句已经输入,请不要改动。如果需要使用其它变量,请自行定义。请将运算结果存入变量pi中。
请在/*******begin********/ 与 /********end*********/之间填入你编写的若干语句。请勿改动其它位置的任何内容。
#include "stdio.h"
#include "math.h"
#include "stdlib.h"
void main()
{ double pi;
int i;
/***********begin***********/
while(a>=1.0/1000000)
{
}
/************end************/
a=1.0/(i*(i+2)); pi=pi*(1+a); i+=2; pi=1;a=1;i=1; pi=pi*2;
printf("pi=%f\n",pi);
正在阅读:
C语言程序设计基础实验报告409-06
这个故事让我深思作文400字07-15
手术室常规护理工作指引11-25
手心的温暖作文700字06-23
教师评中二职称个人工作总结04-23
18学年下学期高二第三次双周考英语试题(附答案)(2)05-24
态度和工作满意度-105-10
企业双薪和年终奖的税务处理08-26
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 程序设计
- 语言
- 实验
- 基础
- 报告
- 微机原理及接口第六章作业答案
- 断路器控制回路(国网培训专用)
- 2015-2020年中国摄像机行业分析研究与投资战略研究报告
- 食品营养学试题库
- 化学反应工程复习题
- 2010大学生入党思想汇报
- 新中国成立以来的经济发展历程
- 2019-2022年中国铸造市场深度分析与投资前景预测研究报告目录
- 六上Unit 3 Holiday fun story time
- ZZ013-2018年安徽省职业院校技能大赛中职组“装配钳工技术”赛项规程
- 高一政治面对经济全球化2
- 20101028李家祥-建设民航强国需要大力弘扬民航文 化
- 齿轮油定量加注机
- AP2600-OS_单扇区基站_技术规格书
- 数字信号处理实验报告MATLAB第二章
- LTC6802在电池管理系统中的应用
- 南方电网10kV及以下配网及客户配电工程验收管理实施办法
- 气门摇杆轴支座夹具设计方案
- 2013.年度安全资金投入计划doc
- 柴油发电机组(运行交接试验前)静态测试记录二