{
flag == 0; break; }
if(flag == 1)
printf(\是质数。\\n\else
printf(\不是质数。\\n\
}
3. #include
int m, i, k, flag = 1; scanf(\k = sqrt(m);
for(i=2; flag==1 && i<=k; ++i)
if(m % i == 0)
flag == 0;
if(flag == 1)
printf(\是质数。\\n\else
printf(\不是质数。\\n\
} 分析:
这三个程序用于判断一个正整数是否为质数。与例题相比它们的效率较多(循环次数较少)。 不过它们都没有考虑1这种特殊情况,因此需稍加调整。如最后下结论时加个n 是否为1的判断
条件。
5.20 有百余人,2人一组余1人,3人一组余2人,5人一组余4人,6人一组余5人,7人一组正好分完,问共有几人?编程计算。
5.21 用if-else结构取代下面程序中循环体内的continue语句。
#include
float f = 1; while (f != -1) {
printf(\请输入分数(0~100,-1退出)\\n\; scanf(\if(f < 0 || f > 100) {
printf(\输入错误!\\n\continue; }
if(f >= 60)
printf(\及格!\\n\else
printf(\不及格!\\n\
}
printf(\多谢使用!\\n\}
5.22 讨论如何替换循环体中的break语句。
5.23 编程输出如下所示的九九乘法表。 1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9 ??????
9*1=9 9*2=18 9*3=27 ???? 9*9=81
5.24 编程输出如下所示图形
5.25 编程求出1000内所有的完全数,输出格式如6=1+2+3。
5.26 编程求出所有的3位水仙数。
5.27 把1元换成1分、2分、5分的硬币,请编程输出详细的兑换方法。