c语言lesson3------咱们这节不撩妹!咱们装逼!

本节内容

1.全局变量与局部变量
2.switch语句
3.for循环
4.continue和break的区别
5.getchar()
6.最强大脑猜数游戏(无数组版)
7.数组
8.最强大脑计数游戏(数组版)
9.坦克飞机大战--------迁移运用

1.全局变量与局部变量

全局变量:在所有函数外声明的变量。
作用范围:在每个函数内都有效。

局部变量:在一个函数内部或复合语句内部定义的变量。
作用范围:只在定义的函数内部或复合语句内部内有效。

2.switch()语句

语法:

switch(常量表达式){    //这里的常量表达式包括int,char,_Bool,枚举类型
  case 常量表达式1:执行语句块1;break;
  case 常量表达式2:执行语句块2;break;
  case 常量表达式3:执行语句块3;break;
  ……
  default:执行语句;//当常量表达式都不满足时执行default里的语句。

3.for循环

语法:

for(初始化变量;条件控制语句;计数器){
  循环体
}

初始化变量,条件控制语句,计数器都是表达式,可以为空。条件控制语句用于判断循环体是否执行,计数器用于控制循环体执行次数。

4.continue和break的区别

continue 跳过当前循环,执行下一循环。只用于while,for循环中。当使用continue后,continue后面的语句都不会再执行,直接进入下一次循环。
break 跳出当前循环,执行下一语句。使用break后,直接跳出当前循环,执行循环体外的内容。

5.getchar()

getchar()从缓冲区读取一个字符。可以声明一个字符变量将读取的字符赋值给字符变量。

6.最强大脑猜数游戏(无数组版)

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <time.h>   //嵌入需要用到的头文件

int main(){
    int num;//声明一个变量用于控制每次出现数的个数
    for (num = 4;; num++){
        int see;    //声明一个变量,用于记录你看到的数
        int put;      //声明一个变量,用于记录你输入的数
        int count=0;//声明一个变量用于记录对比后正确的个数
        
        unsigned int seed = time(NULL);
        srand(seed);//设置一个种子,模拟随机数
        
        for(int i = 1;i <= num;i++){
            see = rand()%9 + 1;
            printf("%d ",see);  
        }//输出随机数
        
        Sleep(2000);
        system("cls");//让随机数显示两秒钟后消失
        
        srand(seed);//使用相同种子,产生相同随机数
        printf("请输入你看到的数字:");
        for (int i = 1;i <= num;i++){
            see = rand()%9 + 1; 
            scanf("%d",&put);
            if (put == see){
                count++;
            }//将随机数与输入的数相比较,count记录正确的个数
        } 
        if (count == num){
            printf("挑战成功!\n进入下一轮:");
        }else{
            printf("挑战失败!");//就挑战成功,增加一个随机数
        }
    }
    return 0;
}

7.数组

作用:用于记录一组有相同类型的数据
定义:int array1[4]={1,2,3,4};int array2[4] = {1,2};像这样就声明了两个数组,一个是array1[],一个是array2[],定义数组时必须在前面声明的标志,比如int,char。
数组的访问:数组名加上下标,及对中括号内的数字进行更改就可以访问数组中对应的元素。访问时下标从0算起。

int a[]={1,2,3,7,8,9};//定义了一个由五个元素组成的数组
printf("%d\n",a[1]);//访问了二号元素

输出结果为:
2

8.最强大脑计数游戏(数组版)

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>

int main()
{   
    for(int num=4;;num++){
        int count[num];
        srand(time(NULL));
        for (int i = 0; i < num; i++){
            count[i] = rand() % 10;
            printf("%d  ", count[i]);
        }//用for循环将生成的随机数写入数组
        Sleep(2000);
        system("cls");//间隔两秒后清屏
        
        int see[num];
        printf("请输入你看到的值:");
        for(int i=0;i < num;i++){
            scanf("%d",&see[i]);
        }//用for循环将输入的值写入数组
        for(int i = 0;i<num;i++){
            if (count[i] == see[i]){
                printf("第%d位正确!",i+1);
            }//用for循环将系统显示的数组和你输入的数组一一对比
            else{
                printf("挑战失败!");//全对则继续游戏,错误则程序终止
                return 0;
            }
        }
        printf("第%d轮\n",num-2);
    }
        return 0;
}

9.坦克飞机大战--------迁移运用

#include <stdio.h>
#include <windows.h>
#include <time.h>
#include <stdlib.h>//嵌入需要用到的头文件

int main(){
    int count =6;//声明一个count控制飞机飞行次数
    while(count--){//while循环控制飞机来回飞
            //for循环控制飞机正向飞行
        for(int i = 0;i<60;i++){
            printf("*******************************************************************************\n");
            for(int j = 0;j<=i+2;j++){
                printf(" ");//for循环控制打印空格个数,从而控制飞机位置
            }
            printf("   ***\n"); 
            for(int j = 0;j<=i+2;j++){
                printf(" ");
            }
            printf("   ***\n");
            for(int j = 0;j<=i+2;j++){
                printf(" ");
            }
            printf("*********\n");
            for(int j = 0;j<=i+2;j++){
                printf(" ");
            }
            printf("*********\n");
            for(int j = 0;j<=i+2;j++){
                printf(" ");
            }
            printf("   ***\n");
            for(int j = 0;j<=i+2;j++){
                printf(" ");
            }
            printf("    *\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
             //打印飞机机体并用for循环控制飞机位置
        
            printf("\n\
                    ||\n\
                (}##||##{)\n\
                (}#0||0#{)\n\
                (}#0000#{)\n\
                (}######{)\n");//打印坦克机体
            
            printf("*******************************************************************************\n");
            Sleep(50);
            system("cls");//0.05秒清屏,造成视错觉
        }   
        //for循环控制飞机逆向飞行
        for(int i = 60;i>0;i--){
            printf("******************************************************************************\n");
            for(int j = 0;i-j;j++){
                printf(" ");
            }
            printf("   ***\n"); 
            for(int j = 0;i-j;j++){
                printf(" ");
            }
            printf("   *** \n");
            for(int j = 0;i-j;j++){
                printf(" ");
            }
            printf("*********\n");
            for(int j = 0;i-j;j++){
                printf(" ");
            }
            printf("*********\n");
            for(int j = 0;i-j;j++){
                printf(" ");
            }
            printf("   ***\n");
            for(int j = 0;i-j;j++){
                printf(" ");
            }
            printf("    *\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
            
            
            printf("\n\
                    ||\n\
                (}##||##{)\n\
                (}#0||0#{)\n\
                (}#0000#{)\n\
                (}######{)\n");
            
            printf("******************************************************************************\n");
            Sleep(50);
            system("cls");
        }
}
    return 0;
}

这是你看到的效果

飞机大战.gif
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目的:掌握用C语言编程的基本技能内容:1.全局变量与局部变量   2.switch语句   3.for循环   4...
    CyraChen阅读 319评论 0 1
  • 一、框架 1、Mac系统及常用工具、进制;C数据类型、常量变量、运算符、表达式、格式化输入输出 2、关系运算符、逻...
    师景福阅读 713评论 0 2
  • 1.编译程序(1)gcc xx.c,他会默认生成一个a.out的可执行文件,在a.out所在目录,执行./a.o...
    萌面大叔2阅读 1,316评论 0 1
  • 学习C语言程序设计都会用到高等数学知识和计算机基础理论知识。 使用可变参数应该有以下步骤: 1)首先在函数里定义一...
    皓小天阅读 5,820评论 0 2
  • 前段时间在朋友圈发了阿德莱德粉色湖泊的照片,引得许多宝宝想去观看,而粉湖属于较小众的旅游景点,网上关于它的资料较少...
    米娅的旅程阅读 6,151评论 0 0