优先级
switch case
可以直接用goto out
循环
随机数
每次召唤rand()就得到一个随机的整数。
x%n的结果是[0,n-1]的一个整数
下面代码是每次随机一个100以内的数
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
srand(time(0));
int a = rand();
printf("%d\n",a%100);
return 0;
}
第三种循环——for循环
关于三个循环
例题
判断素数
#include <stdio.h>
int main()
{
int x;
scanf("%d",&x);
int i = 2;
int isPrime = 1;
for(i=2;i<x;i++)
{
if(x%i==0)
{
isPrime = 0;
break;
}
/*当x能被其他数除的时候就表示不是素数,
就可用break跳出循环,以免循环多次 */
}
if(isPrime==1)
printf("是素数");
else
printf("不是素数");
return 0;
}
例题
1.输出一个非负整数的正序排列
#include <stdio.h>
int main()
{
int x;
int mask = 1;
scanf("%d",&x);
int t = x;
while(t>9){
t/=10;
mask*=10;
}
//printf("x=%d mask=%d\n",x,mask);
int m = 0;
do{
printf("%d",x/mask);
x%=mask;
if(mask>9){
printf(" ");
}
mask/=10;
}while(mask>0);
return 0;
}
辗转相除法
int main()
{
int a,b;
int t = 0;
scanf("%d %d",&a,&b);
while(b!=0){
t = a%b;
a = b;
b = t;
}
printf("gcd = %d",a);
return 0;
}