实验名称 流程控制实验
二实验目
1掌握复合语句if语句switch语句熟练掌握forwhiledowhile三种根循环控制语句掌握重复循环技术解转移语句标号语句
2练循环结构forwhiledowhile语句
3练转移语句标号语句
4codeblocks开发环境中调试功:单步执行设置断点观察变量值
三 实验务
1.源程序改错题
面计算sn源程序源程序中存假设干语法逻辑错误求计算机例子程序进行调试修改够正确完成指定务例840320
#include
void main()
{
int ins1
printf(Please enter n)
scanf(dn)
for(i1i
printf(d dns)
}
2.源程序修改换题
〔1〕修改第1题分whiledowhile语句换for语句
〔2〕修改第1题输入改整数S〞输出改满足n≥S整数n〞例输入整数40310输出结果n8
3.编程设计题
〔1〕假设工资税金计算方法计算:x<1000元收税金1000
〔2〕编写程序输入行字符复制输出复制程中空格字符空格字符代
〔3〕印杨辉三角形
1 *第0行 *
1 1 *第1行 *
1 2 1 *第2行 *
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
数值组合计算〔表示第i行第j列位置值〕计算:
(i012…)
(j0123…i)
程序中印出金字塔效果注意空格数目位数间3空格两位数间2空格3位数间空格程序编制程中注意区分
〔4〕编写程序户输入意正整数逆转例输入1234输出4321
四 实验步骤结果
1.源程序改错题
更改正确程序:
#include
int main()
{
int ins1
printf(Please enter n)
scanf(d&n)
for(i1i
printf(ddns)
return 0
}
2.源程序修改换题
〔1〕while语句型换程序
#include
int main()
{
int i1ns1
printf(Please enter n)
scanf(d&n)
while(i
ss*i
i++
}
printf(ddns)
return 0
}
〔2〕dowhile语句型换程序
#include
int main()
{
int i1ns1
printf(Please enter n)
scanf(d&n)
do
{
ss*i
i++
}while(i
return 0
}
3.编程设计题
〔1〕税金收取问题程序:
If语句型:
#include
int main()
{
double incometaxab
inx
printf(Please enter the income\n)
scanf(lf&income)
aincome1000
if(a>0)
{if(a>5)
b025
if(a>4)
b020
if(a>3)
b015
if(a>2)
b010
if(a>1)
b005
else
b000
taxincome*b
printf(the tax is 1lftax) }
else
{
printf(Enter error\n)
goto inx
}
}
运行结果:
Switch语句型:
#include
int main()
{
double incometaxab
inx
printf(Please enter the income\n)
scanf(lf&income)
aincome1000
if(a<0)
{
printf(Enter error\n)
goto inx
}
else
switch((int)(a)){
case 0b000break
case 1b005break
case 2b010break
case 3b015break
case 4b020break
defaultb025break
} taxincome*b
printf(The tax is 1lftax)
return 0
}
运行结果:
〔2〕字符复制输出空白字符删:
#include
int main()
{
int flag1
char c
printf(please intput some chars\n)
while((cgetchar())'\n')
{
switch(c)
{case' 'if(flag){putchar(c)
flag0}
break
defaultputchar(c)flag1
}
}
if((cgetchar())'\n')
printf(cc)
return 0
}
运行结果:
〔3〕杨辉三角:
#include
#define M 10
#define N 10
int main()
{
int a[M][N]ij
for(i0i
for(jNj>ij)
printf(2c' ')
for(j0j
if(ij||j0)
a[i][j]1
else
a[i][j]a[i1][j]+a[i1][j1]
printf(3d a[i][j])
if(ij)
printf(\n)
}
}
}
运行结果:
〔4〕数字逆转:
#include
int main()
{
long x digit
printf(please input a positive integer\n)
scanf(ld&x)
do
{
digitx10
printf(lddigit)
x10
}while(x0)
printf(\n)
return 0
}
运行结果:
五 实验体会
通次C语言实验更进步认识C语言学理实践相结合重性时深深认识if语句ifelse语句switchforwhiledowhile等c语言实现中重作会更加努力学理知识时时机实践查找缺乏进C语言学取进步提高实践力
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档