您的位置:首页 > 编程语言 > C语言/C++

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

2016-12-24 14:54 246 查看

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 <stdlib.h>
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);
//方法2:
a = 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 : 定义控制台应用程序的入口点。
//while、do while、for实现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语言 二维数组