- 结构程序设计
- 编写已知半径r为15求圆面积的程序
文字:1:定义变顺序量p=3.14159,,C,S。2:输入圆的半径r 3:圆面积的公式S=p*r*r
4:输出圆的面积S
流程图
代码:
执行结果:
2.输入一个三位数的正整数,输出其反序数(如123反序数为321)
文字:1定义整形i,num
2.i=0 3.给num赋值为正整数
4.使用while语句(num>0),i=i*10+num%10;num/=10
5.如果符合条件(num>0),则继续while语句循环
6.如果不符合条件(num>0),则结束while语句循环
7.输出反序数i
流程图:
代码:
执行结果:
3.把大写字母转换为小写字母,小写字母转换为大写字母
文字:1:定义字符类型
2.给m,赋值大写字母,给n赋值小写字母
3.使m=m+32
4.使n=n-32
5.输出m,n
流程图:
代码:
执行结果:
4.从键盘上输入三个变量的值,其中a=5,b=6,c=7将三个变量的值进行交换使得a=6,b=7,c=5
文字:1.定义整形a,b,c 2.给a,b,c分别赋值5,6,7 3.利用中间变量m进行换值m=a,a=b,b=c,c=m
4.输出a,b,c
流程图:
代码:
执行结果:
5.给定三角形的底a和高h,求三角形面积
文字:1:定义整型a,h,s;
2:给底a,高h赋值;
3:求面积s的值,s=(a*h)/2;
4:输出面积s;
流程图:
代码:
执行结果:
6.给定梯形的上底a下底b和高h,求梯形的面积
文字:
- 定义小数a, b, h, s;
- 给梯形的上底a,下底b和高h赋值;
- 求梯形面积s,s=(a+b)*h/2;
- 输出梯形面积s;
流程图:
代码:
执行结果:
7.由键盘输入一个大写字母,将其转换成小写字母并输出
- 文字:定义字符类型n;
- 输入一个大写字母,将其存入n;
- 将n转为小写字母,n=n+32;
- 输出n;
流程图:
代码:
执行结果:
8.若有变量定义语句floa856;输出a的值,要求保留小数点后两位,第三位进行四舍五入
文字:1.定义小数a
2.a的值为1.23856
3.先给a扩大100倍,然后再加0.5;a=100*a+0.5
4.再给a除于100;a=a/100
5.a的值保留小数点后两位
6.输出小数a
流程图:
代码:
执行结果:
- 分支结构程序设计
- 输入三角形的三条边,判断是否能构成三角形,若能则计算并输出三角形的面积,否则给出出错提示
文字:
- 定义a, b, c, d, s, area;
- 给a,b,c赋值;
- 用if语句判断(a + b > c) && (a + c > b) && (b + c > a)
- 判断为真执行第5步,为假则输出不能构成三角形;
- 求三角形的面积area, d = a + b + c; s = 0.5 * d; area = sqrt(s * (s - a) * (s - b) * (s - c));
- 输出三角形的面积:area;
流程图:
代码:
执行结果:
2.输入三个实数要求从小到大的顺序输出
文字:
1.定义整型x,y,z,t;
2. 给x,y,z,t赋值;
3. 用if语句判断下x>y: 为真进行第4步,为假跳到第5步;
4. t = x; x = y; y = t;
5. 用if语句判断下x>z: 为真进行第6步,为假跳到第7步;
6. t = z; z = x; x = t;
7. 用if语句判断下有y>z: 为真进行第8步,为假跳到第9步;
8. t = y; y = z; z = t;
9. 输出x,y,z;
流程图:
代码:
执行结果:
3.输入一个正整数输出其实偶数还是奇数
文字:1.定义一个整数num
2.请输入整数
3.给num赋值
4.如果(num%2==0)
5.num是偶数
6.否则num是奇数
流程图:
代码:
执行结果:
4.将考试成绩百分制改为等级制,规则为:90~100分改为A:75~89分改为B;60~74改为C,60分以下改为D
文字:1.定义一个整数x
2.给x赋值
3.判断(x>=90&&x<=100)为真输出 该成绩为A为假执行下一步
4.判断(x>=75&&x<=89)为真输出 该成绩为B 为假执行下一步
5.判断(x>=60&&x<=74)为真输出 该成绩为C 为假执行下一步
6.判断(x<60)为真输出 该成绩为D 为假执行下一步
7.输出x
流程图:
代码:
执行结果:
5.随机生成一个3为正整数,判断该数是否为水仙花数。所谓水仙花数,是指该数各位数字的立方之和等于其本身。
文字:1.定义整形x,a,b,c,y
2.给x赋值
3.求百位a=x/100
4.求十位b=%10
5.求个位c=(x-100*a)/10
6.由a,b,c组成的三位数(a*a*a+b*b*b+c*c*c)
7.如果x==y
8.x是水仙花数
9.否则,x不是水仙花数
10.输出x
流程图:
代码:
执行结果:
6.输入3个整数,输出其中的最大值。要求只能用条件表达式
文字:1.定义整形a,b,c ,max
2给a,b,c赋值
3.判断(a>b&&a>c)为真输出,则最大值为a,为假则执行下一步
4.判断(b>a&&b>c) 为真输出,则最大值为b,为假则执行下一步
5.判断(c>a&&c>b) 为真输出,则最大值为c,为假则执行下一步
6.输出a,b,c
流程图:
代码:
执行结果运行结果:
7.由键盘输入字符,判断该字符的类别(分别是控制字符,数字,小写字母,大写字母,还是其他字母?)
文字:1定义字符c
2.从键盘输入一个字符
3.判断(c<32)为真,输出,则该字符是控制字符,为假则执行下一步
4.判断(c>=48&&c<=57)为真,输出,则该字符是数字字符,为假则执行下一步
5.判断(c>=65&&c<=90)为真,输出,则该字符是大写字母,为假则执行下一步
6.判断(c>=97&&c<=122)为真,输出,则该字符是小写字母,为假则执行下一步
7.否则,输出,这是其他字符
流程图:
代码:
执行结果:
8.由键盘输入某个同学的考试成绩将其转换成(成绩低于60分时输出Fail,成绩在60~69分时输出Pass,成绩在70~89分时输出Good,成绩在90~100分时输出Excellent)
文字1定义整形x,
2.赋值给x
3.判断(x>=90)为真输出,则Excllent,为假,则执行下一步判断
4.判断(x>=70)为真输出,则Good,为假,则执行下一步判断
5.判断(x>=60)为真输出,则Pass,为假,则输出Fail
流程图:
代码:
执行结果:
9.编写一个程序,根据键盘输入的年,月输出该年,该月的天数
文字:1.定义三个整数year,month,days
2.给year,month赋值
3.判断month值是否为1,3,5,7,8,10,12 为真 执行 days=31 为假下一步判断
4.判断month值是否为4,6,9,11 为真执行days=30 为假下一步判断
5.判断month=2时如果(year%400==0||year%4==0&&year%100!=0)为真 ,执行 days=29为假,执行 days=28
流程图:
代码:
执行结果:
10.由键盘上输入任意三个整数,按降序将其输出
文字:1定义整数x,y,z
2. 定义t为中间变量
3.给x,y,z赋值
4.判断(x<y)为真执行(t=x;x=y;y=t;)为假执行下一步判断
5.判断(x<z)为真执行(t=x;x=z;z=t;)为假执行下一步判断
6.判断(y<z)为真执行(t=y;y=z;z=t)为假执行下一步
7.输出x,y,z
流程图:
代码:
执行结果:
11.由键盘上输入一个字符,若该字符为小写字母,则将其转换为大写字母若该字符为大写字母,则将其转换为小写字母否则将其转换为ASCII码表中该字符的下一个字符
文字:1.定义两个字符变量c1,c2
2.键盘输入一个字符赋值给c1
3.判断(c1>=’a’&&c1<=’z’)为真执行 c2=c1-32 为假继续判断
4.判断(c1>=’A’&&c1<=’Z’)为真执行c2=c1+32 为假执行c2=c1+1
5.输出c2
流程图:
代码:
执行结果:
12.从键盘输入3个整数a,b,c要求按从小到大输出
文字:1.定义3个整数a,b,c,
2.定义一个中间变量t
3.给a,b,c赋值
4.判断(a>b)为真执行t=a;a=c;c=t; 为假下一步判断
5.判断(a>c)为真执行t=a;a=c;c=t; 为假下一步判断
6.判断(b>c) 为真执行t=b;b=c;c=t 为假直接输出结果
7.输出a,b,c
流程图:
代码:
执行结果:
- 循环结构程序设计
- 由键盘上输入一行以回车结束的字符,分别统计出其中英文字母、空格、数字和其他字符的个数
文字:1;定义一个整数类型a,b,c,d
2;定义字符类型ch
3;赋值a=b=c=d=0
4;输入一串字符
5;while判断是否为字符串
6;如果在数字类型中a++
7;否则判断是否在字符类型中,满足,b++
8;否则判断是否为空格,满足,c++
9;否则为其它,d++
10;输出a,b,c,d
11;结束
流程图:
代码:
执行结果:
2.从键盘上输入一批学生的成绩(以负数作为结束标志),计算平均分,并统计不及格成绩的个数
文字:1;定义一个整数类型num,n
2;定义一个小数类型score,total=0
3;num=0;n=0
4;while语句,输入分数0~100,n+1
5;定义位置
6;if判断score<0满足结束本段循环
7;否则判断score<60满足num++
8;total=total+score
9;输出平均 数
10;输出不及格人数
11;结束
流程图:
代码:
执行结果:
3.从键盘输入一个整数,计算并输出它是几位数。若输入的是负数时,要求重新输入。
文字:1;定义一个整数类型num,i=0
2;输入一个整数
3;while语句
4;定义位置
5;判断num<0,满足
6;输出请重新输入,结束本段循环
7;while语句
8;判断num>0是否满足,满足
9;num/=10;i++
10;否则结束本段循环
11;输出
12;结束
流程图:
代码:
执行结果:
4.输出100以内能被3整除且个位数为6的所有整数
文字:1;定义一个整数类型a,b
2;for(a=0;a<=10;a++)
3;b=a*10+6
4;if判断b除与10的余数是否为0
5;满足输出,跳转至a++
6;比较是否满足a<=10
7;满足继续循环,否则跳出本段循环
8;输出
9;结束
流程图:
代码:
执行结果:
5.输出四位整数中满足:该数的9倍恰好是其反序数的数(如1234的反序数是4321)
文字:1;定义一个整数类型a,b
2;for,a=1000,判断a是否小于等于9999,满足则继续以下循环
3;b=a%10*1000+a%100/10*100+a/100%10*10+a/1000
4;判断a乘以9是否为反序数
5;a++,跳转至2
6;诺不满足则结束本段循环
7;输出
8;结束
流程图:
代码:
执行结果: