【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; }
相关文章推荐
- 循环控制结构程序01 - 零基础入门学习C语言16
- 循环控制结构程序02 - 零基础入门学习C语言17
- C语言学习心得-C语言基础-知之为知之
- 奶爸业余单片机学习之:C语言基础——while循环
- 学ios需要了解的C语言基础知识-11-C语言精华总结
- c语言之c语言基础知识
- 学习人家的C语言面试题,提高自己C语言基础能力。
- Java语言基础——循环控制语句while for
- C语言学习之路之一-----------C语言基础
- [C语言基础]一些C语言小程序(一)
- 循环控制结构程序03 - 零基础入门学习C语言18
- 循环控制结构程序05 - 零基础入门学习C语言20
- 循环控制结构程序04 - 零基础入门学习C语言19
- 五、数据结构基础之循环队列C语言实现
- 循环控制结构程序06 - 零基础入门学习C语言21
- 循环控制结构程序01 - 零基础入门学习C语言16
- 循环控制结构程序04 - 零基础入门学习C语言19
- 循环控制结构程序06 - 零基础入门学习C语言21
- ARM基础:为何C语言(的函数调用)需要堆栈,而汇编语言却不需要堆栈
- C语言2011计算机二级c语言考点:c语言的基础知识