分支循环语句练习

三个数大到小排序

#define _CRT_SECURE_NO_WARNINGS 
#include<stdio.h>

int main()
{
    int a = 0;
    int b = 0;
    int c = 0;
    scanf("%d%d%d", &a, &b, &c);    //注意输入函数中要加取值地址符
    //最终实现a中放最大值,c中放最小值
    if (a < b)
    {
        int zj = a;
        a = b;
        b = zj;
    }
    if (a < c)
    {
        int zj = a;
        a = c;
        c = zj;
    }
    if (b < c)
    {
        int zj = b;
        b = c;
        c = zj;
    }
    printf("%d %d %d\n", a, b, c);
    return 0;
}


打印闰年

//#define _CRT_SECURE_NO_WARNINGS 1
//#include<stdio.h>
//
//int main()
//{
//  //闰年的两个判断条件
//  //1. 能被4整除,不能被100整除
//  //2. 能被400整除
//  int i = 0;
//  int count = 0;
//  for (i = 1000; i <= 2000; i++)
//  {
//      if (i % 4 == 0 && i % 100 != 0)
//      {
//          printf("%d ", i);
//          count++;
//      }
//      else if (i % 400 == 0)
//      {
//          count++;
//          printf("%d ", i);
//      }
//  }
//
//  printf("\n%d ", count);
//  return 0;
//}

打印三的倍数

//#define _CRT_SECURE_NO_WARNINGS 1
//#include<stdio.h>
//
//int main()
//{
//  int i = 0;
//  for (i = 1; i <= 100; i++)
//  {
//      if ((i % 3) ==0)
//          printf("%d ", i);
//  }
//  return 0;
//}

求最大公约数

//#define _CRT_SECURE_NO_WARNINGS 1
//#include<stdio.h>
////辗转相除法
//
//int main()
//{
//  int a = 0;
//  int b = 0;
//  int r = 0;
//  scanf("%d%d", &a, &b);
//  while (r=a%b)
//  {
//      //r = a%b;
//      a = b;
//      b = r;
//  }
//  printf("%d \n", b);
//  return 0;
//}

100~200的素数

《素数求解的n种境界》

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

int main()
{
    int i = 0;
    int count =0;
    for (i = 100; i <= 200; i++)
    {
        //素数的除数只有1和它本身
        //素数判断规则
        //试除法
        int j = 0;
        for (j = 2; j < i; j++)
        {
            if (i%j == 0)
                break;
        }
        if (j == i)
        {
            printf("%d ", j);
            count++;
        }
    }
    printf("\n\n%d\n", count);
    return 0;
}
//优化,法二
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<math.h>

int main()
{
    int i = 0;
    int count = 0;
    for (i = 101; i <= 200; i+=2)    //从1101开始,每次+2,直接将偶数排除
    {
        //素数的除数只有1和它本身
        //素数判断规则
        //试除法
        int j = 0;
        for (j = 2;j<=sqrt(i); j++)  //非素数一定有一个数小于开平方,如16=4*4,16有因数2
        {
            if (i%j == 0)
                break;
        }
        if (j>sqrt(i))    //
        {
            printf("%d ", i);
            count++;
        }
    }
    printf("\n\n%d\n", count);
    return 0;
}

打印100以内有9的数字

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

//思路   个位模10==9,十位除10==9

int main()
{
    int i = 0;
    int count = 0;
    for (i = 1; i < 100; i++)
    {
        if (i % 10 == 9)
        {
            printf("%d ", i);
            count++;
        }
        if (i / 10 == 9)    //这里如果用else if,会将99漏掉
        {
            printf("%d ", i);
            count++;
        }
    }
    printf("\n\n%d\n", count);
    return 0;
}

分数求和

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

int main()
{
    int i = 0;
    double sum = 0.0;
    int flag = 1;
    for (i = 1; i <= 100; i++)
    {
        sum += flag*1.0/i;
        flag = -flag;
    }
    printf("%lf ", sum);
    return 0;
}

求最大值

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
 
int main()
{
    int arr[] = { -1,-2,-3,-4,-5,-6,-7,-9,-8,-10 };
    int sz = sizeof(arr) / sizeof(arr[0]);
    int i = 0;
    //int max = 0;  //小心负数的陷阱
    int max = arr[0];
    for (i = 1; i <sz; i++)
    {
        if (arr[i]> max)
            max = i;
    }
    printf("%d ", max);
    return 0;
}

打印乘法口诀表

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

int main()
{
    int i = 0;
    //打印9行
    for (i = 1; i <= 9; i++)
    {
        int j = 1;
        for (j = 1; j <= i; j++)
        {
            printf("%d*%d=%-2d ", i, j,i*j);  //%2d输出值占两位,-表示左对齐
        }
        printf("\n");
    }
    return 0;

}

猜数字游戏

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

//电脑生成一个随机数
//猜数字
//可以重复开局


void menu()
{
    printf("**********************************\n");
    printf("*****    1.play     0.exit    ****\n");
    printf("**********************************\n");
}

void game()
{
    
    int ret = 0;
    int guess = 0;
    //1.生成随机数
    
    //拿时间戳设置随机数生成的起点
    ret = rand()%100+1;//生成1-100随机数
    //printf("%d\n", ret);
    //2.猜数字
    printf("猜数字\n");
    while (1)
    {
        printf("请猜数字:>");
        scanf("%d", &guess);
        if (guess > ret)
        {
            printf("猜大了\n");
        }
        else if (guess < ret)
        {
            printf("猜小了\n");
        }
        else
        {
            printf("恭喜你,猜对了\n");
            break;
        }
    }
}

int main()
{
    int input = 0;
    srand((unsigned int)time(NULL));
    do
    {
        menu(); 
        printf("请选择>:");
        scanf("%d", &input);
        switch (input)
        {
        case 1:
            game();//猜数字游戏
            break;
        case 0:
            printf("退出游戏\n");
            break;
        default:
            printf("选择错误\n");
            break;
        }
    } while (input);
    return 0;
}

关机程序

#define _CRT_SECURE_NO_WARNINGS 1、
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
    char input[20] = { 0 };
    system("shutdown -s -t 60");
again:
    printf("请注意,电脑马上关机了,请输入“我是猪”取消关机\n");
    scanf("%s", &input);
    if (strcmp(input, "我是猪") == 0)//比较两个字符串是否相等
        system("shutdown -a");
    else
        goto again;
    
    return 0;
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容