Test1.打印素数
#define _CRT_SECURE_NO_WARNINGS 1;
#include <stdio.h>
int main()
{
int input = 0;
int input_1 = 0;
int n = 0;
scanf("%d", &n);
for ( input = 2; input <= n; input++)
{
for ( input_1 = 2; input_1 < input; input_1++)
{
if (input % input_1 == 0)
//input_1<input用input之前所有数和input取余,
//如果可以整除就说明不是素数跳出循环(可优化部分)
{
break;
}
}
if (input == input_1)
{
printf("prime number:%d\n", input);
}
}
return 0;
}
//optimization
#define _CRT_SECURE_NO_WARNINGS 1;
#include <stdio.h>
#include <math.h>//使用sqrt函数需要调用的头文件。
int main()
{
int input = 0;
int n = 0;
scanf("%d", &n);
for (input = 2; input <= n; input++)
{
int input_1 = 0;
int mark = 1;//标记
for (input_1 = 2; input_1 <= sqrt(input); input_1++)
//sqrt(square root calculations)计算平方根函数
//思维:假设要判断18是不是素数,因为18=3*6=2*9,
//假设我们运行时已经发现18可以被3整除了,
//就可以直接结束判断不需要再去判断18能不能被6整除。
//也就是说当发现了一个数的小除数就不用再去判断大除数,
//又因为小除数肯定小于当前数的平方根,
//因此我们就可以直接判断小于该数平方根下的数
//就可以大大减少计算机的运行负载从而提高速率。
{
if (input % input_1 == 0)
{
mark = 0;//当判断为非素数时标记记0.
break;
}
}
if (mark == 1)//判断标记是否为1,就可以判断是否是素数。
{
printf("prime number:%d\n", input);
}
}
return 0;
}
goto语句
无条件转移语句(使用的比较少)
goto 记号;
记号 :(位置为跳转位置)
int main()
{
again:
printf("fku ");
goto again;
return 0;
}//死循环了
Test2.用goto实现自动关机
#include <stdlib.h>//调用system函数需要的头文件
#include <string.h>//调用strcmp函数需要的头文件
int main()
{
system("shutdown -s -t 60");
//system函数执行系统命令
//常见shutdown命令有:
//shutdown -a 取消关机
//shutdown -s 关机
//shutdown -f 强行关闭应用程序
//shutdown -m \\计算机名 控制远程计算机
//shutdown -i 显示“远程关机”图形用户界面,但必须是Shutdown的第一个参数
//shutdown -l 注销当前用户
//shutdown -r 关机并重启
//shutdown -s -t 时间 设置关机倒计时
//shutdown -r -t 时间 设置重新启动倒计时
//shutdown -h 休眠
char arr[16] = {0};
again:
printf("enter Icanmakeit\n");
scanf("%s", arr);
if (strcmp("Icanmakeit", arr) == 0)
{
system("shutdown -a");
}
else
{
goto again;
}
return 0;
}