1、由键盘上输入一行以回车结束的字符,分别统计出其中英文字母、空格、数字和其他字符的个数
文字:1、声明整数变量digit, letter, other, k;
2、声明字符型变量ch;
3、把0这个值赋值给digit, letter, other, k;
4、输出"请输入一串字符:";
5、判断从键盘取得单个字符是否不等于回车,是进行下一步,否则进行第 步;
6、判断输入的单个字符ch是否为数字,是进行下一步,否则进行第8步;
7、digit自加1,返回第5步;
8、判断输入的单个字符ch是否为大小写英文字母,是进行下一步,否则进行第10步;
9、letter自加1,返回第5步;
10、判断输入的单个字符ch是否等于空格,是进行下一步,否则进行第12步;
11、k自加1,返回第5步;
12、以上判断都不符合时,other自加1,返回第5步;
13、输出"数字dight个,英文字母letter个,空格k个,其他other个\n"。
流程图:
代码:
执行结果:
2、从键盘上输入一批学生的成绩(以负数作为结束标志),计算平均分,并统计不及格成绩的个数
文字:1、声明整数变量num和n;
2、声明单精度浮点型变量score和total,并把0赋值给total;
3、把0赋值给num,把0赋值给n;
4、建立一个while循环,为真重复循环;
5、输出"请输入分数#n+1(0~100):";
6、输入score的值;
7、判断score是否小于0,是进行下一步,否则进行第9步;
8、break跳出整个循环;
9、判断score是否小于60,是进行下一步,否则进行第11步;
10、num自加1;
11、把total加score的值赋值给total;
12、n自加1,返回第4步;
13、输出"平均分数是:total/n \n";
14、输出"不及格的有:num \n"。
流程图:
代码:
执行结果:
3、从键盘输入一个整数,计算并输出它是几位数。若输入的是负数时,要求重新输入。
文字:1、声明长整型变量n,并把1的值赋值给n;
2、声明整数变量count,并把0的值赋值给count;
3、定义while循环,为真重复循环;
4、输出"请输入一个整数:"
5、输入n的值;
6、判断n是否为负数,是进行下一步,否则进行第8步;
7、输出"输入错误,重新输入\n";
8、continue结束本次循环,进行下次循环,返回第4步;
9、判断n的值是否不等于0,是进行下一步,否则进行第11步;
10、把n除以10的值赋值给n;
11、count自加1,返回第8步;
12、输出"该数有count位数\n";
13、程序结束。
流程图:
代码:
执行结果:
4、输出100以内能被3整除且个位数为6的所有整数
文字:1、声明整数变量i和j;
2、定义for循环,把0的值赋值给i ;
3、判断i是否小于10,是进行下一步,否则进行第7步;
4、把i乘以10加6的值赋值给j;
5、判断i取余3是否等于0,是进行下一步,否则i自加1,返回第3步;
6、输出j的值,此值为100以内被3整除个位数为6的数,i自加1,返回第3步
7、程序结束。
流程图:
代码:
执行结果:
5、输出四位整数中满足:该数的9倍恰好是其反序数的数(如1234的反序数是4321)
文字:1、声明整数变量n;
2、声明整数变量a,b,c,d;
3、定义for循环,把1000的值赋值给n;
4、判断n的值是否小于1200,是进行下一步,否则进行第11步;
5、把n除以1000的值赋值给a;
6、把n除以100取余10的值赋值给b;
7、把n除以10取余的10的值赋值给c;
8、把n取余10的值赋值给a;
9、判断表达式n * 9 == d * 1000 + c * 100 + b * 10 + a的值是否相等,是进行下一步,否则n自加1,返回第4步;
10、输出n的值,此值为该数9倍为反序数,n自加1,返回第4步;
11、程序结束。
流程图:
代码:
执行结果: