【C语言基础】1-5 C语言循环与二维数组

C语言循环与二维数组

知识点

break与continue

break:break语句在switch-case语句中是跳出。break语句在循环中还有另一种用法。当循环中遇到break语句时,立即结束循环,跳到循环体外,执行循环结构后面的语句
continue:对于continue来说,作用是跳过本次循环;
continue与break多与if连用

二维数组

声明方式

类型说明符 数组名 [常量表达式1][常量表达式2];

说明

二维数组可被看作是一种特殊的一位数组:它是元素为一维数组的一维数组
二维数组中元素排列的顺序是按行存放的。

初始化

分行给二维数组赋值 int arrtem[2][3]={{1,2,3},{4,5,6}};
所有数据一起赋值 int arr[2][3]={1,2,3,4,5,6};
可以对部分元素赋值 int arr[2][3]={1,2,3,};

代码整理

作业1
//  -day3-作业1.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include 
void printcaidan()
{
    system("cls");
    printf("***************************\n");
    printf("* 1 ONE PLAYER\n");
    printf("* 2 TWO PLAYER\n");
    printf("* 3 EDIT MAP\n");
    printf("* 4 CHOSE LEAVEL\n");
    printf("* 0 QUIT GAME\n");
    printf("***************************\n");
    printf("please input your choice(0~4)\n");
}
int _tmain(int argc, _TCHAR* argv[])
{
    int xuanxiang;
    while (1)
    {
        printcaidan();
        scanf_s("%d", &xuanxiang);
        switch (xuanxiang)
        {
        case 0:
            return 0;
            break;
        case 1:
            printf("1.ONE PLAYER");
            break;
        case 2:
            printf("2.TWO PLAYER");
            break;
        case 3:
            printf("3.EDIT MAP");
            break;
        case 4:
            printf("4.CHOOSE LEVEL");
            break;
        default:
            printf("ERROR:输入错误");
            break;
        }
    }

    return 0;
}

作业2

//  -day4-作业2.cpp : 定义控制台应用程序的入口点。
//判断一个数是不是3的倍数
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int a;
    scanf_s("%d", &a);
    if (a%3==0)
    {
        printf("yes");
    }
    else
    {
        printf("no");
    }
    return 0;
}

作业3

//  -day4-作业3.cpp : 定义控制台应用程序的入口点。
//判断一个 数是7的倍数或者尾数含7
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int a;
    scanf_s("%d", &a);
    if (a%7==0||a%10==7)
    {
        printf("yes");
    } 
    else
    {
        printf("no");
    }
    return 0;
}

作业4

//  -day4-作业4.cpp : 定义控制台应用程序的入口点。
//打印1-100,使用goto语句
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int i = 0;
sign:
    if (i<100)
    {
        i++;
        printf("%4d", i);
        goto sign;
    }

    return 0;
}

作业5

//  -day4-作业5.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
//  int i = 1,j=1 ;
//signj:
//signi:
//  if (i < 5)
//  {
//      printf("%d", i);
//      i++;
//      goto signi;
//  }
//  printf("\n");
    int flag = 1;
sign1:
    if (flag<2)
    {
        printf("1\n");
        flag++;
        goto sign1;
    }
sign2:
    if (flag<4)
    {
        printf("2 ");
        flag++;
        goto sign2;
    }
    printf("\n");
sign3:
    if (flag < 7)
    {
        printf("3 ");
        flag++;
        goto sign3;
    }
    printf("\n");
sign4:
    if (flag < 11)
    {
        printf("4 ");
        flag++;
        goto sign4;
    }
    printf("\n");
sign5:
    if (flag < 16)
    {
        printf("5 ");
        flag++;
        goto sign5;
    }
    printf("\n");
    return 0;
}

作业6

//  -day4-作业6.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    short int a;
    short int flag=0;
    scanf_s("%hd", &a);
    while (a>0)
    {
        if (a % 2 == 1)
        {
            flag += 1;
        }
        a = a / 2 ;
    }
    printf("%hd",flag);
    return 0;
}

作业7

//  -day4-作业7.cpp : 定义控制台应用程序的入口点。
//交换两个数的方法
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int a = 4;
    int b = 5;
    printf("a=%d,b=%d\n", a, b);
    //方法1:算术运算
    a = b - a;
    b = b - a;
    a = b + a;
    printf("方法一:a=%d,b=%d\n", a, b);
    //方法2a = 4;
    b = 5;
    a = a^b;
    b = a^b;
    a = a^b;
    printf("方法二:a=%d,b=%d\n", a, b);
    return 0;
}

4-1

//  -day4-01.cpp : 定义控制台应用程序的入口点。
//whiledo whilefor实现1-100显示 
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int i = 0;
    /*while (i<100)
    {
    i++;
    printf("%-4d", i);
    }*/
    /*do 
    {
        i++;
        printf("%-4d", i);
    } while (i<100);*/
    for (i=1; i < 101;i++)
    {
        printf("%-4d", i);
    }
    return 0;
}

4-2

//  -day4-02.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int i, j=1;
    for (i=1; i < 10; i++)
    {
        j = 1;
        for (; j <=i;j++)
        {

            printf("%d", j);
        }
        printf("\n");
    }
    return 0;
}

4-3

//  -day4-03.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int i, j = 1;
    for (i = 1; i < 10; i++)
    {
        j = 1;
        for (; j <= i; j++)
        {
            printf("%d*%d=%d ", j,i,i*j);
        }
        printf("\n");
    }
    return 0;
}

4-4

//  -day4-04.cpp : 定义控制台应用程序的入口点。
//鸡兔同笼问题
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    int tuzi,ji;
    for (tuzi = 1; tuzi < 40;tuzi++)
    {
        for (ji = 1; ji < 40;ji++)
        {
            if (tuzi+ji==40&&(tuzi*4+ji*2)==110)
            {
                printf("兔子有%d,鸡有%d",tuzi,ji);
            }
        }
    }
    return 0;
}

4-5

//  -day4-05.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
    //int Array[3][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
    //int i, j;
    //for (i = 0; i < 3; i++)
    //{
    //  for (j = 0; j < 4;j++)
    //  {
    //      printf("%d  ", Array[i][j]);
    //  }
    //}
    int Arraya[2][3] = { {1,2,3},{4,5,6} };
    int Arrayb[3][2];
    int i, j;
    for (i = 0; i < 2; i++)
    {
        for (j = 0; j < 3; j++)
        {
            Arrayb[j][i] = Arraya[i][j];
        }
    }
    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 2; j++)
            {
            printf("%d", Arrayb[i][j]);

        }
        printf("\n");
    }
    ;

    return 0;
}

你可能感兴趣的:(C语言基础)