程序片段(01):01.楊輝三角.c
內容概要:楊輝三角
#include <stdio.h>
#include <stdlib.h>#define N 10
int main01(
void)
{
int intArrArr[N][N] = {
0 };
for (
int i =
0; i < N; ++i){
for (
int j =
0; j <= i; ++j){
if (
0 == j || i == j)intArrArr[i][j] =
1;
elseintArrArr[i][j] = intArrArr[i -
1][j -
1] + intArrArr[i -
1][j];}}
for (
int i =
0; i < N; ++i){
for (
int j =
0; j <= i; ++j){
printf(
"%4d", intArrArr[i][j]);}
printf(
"\n");}
for (
int i =
0; i < N; ++i){
printf(
"%*c",
19 - i*
2,
'\0');
for (
int j =
0; j <= i; ++j){
printf(
"%4d", intArrArr[i][j]);}
printf(
"\n");}system(
"pause");
}
程序片段(02):01.Array.c+02.二維數組實戰.c+03.二維數組轉置.c
內容概要:02.二維數組本質
#include <stdio.h>
#include <stdlib.h>
int main01(
void)
{
int intArrArr[
3][
4] = { {
1,
2 }, {
3,
4 }, {
5,
6 } };
for (
int i =
0; i <
3; ++i){
for (
int j =
0; j <
4; ++j){
printf(
"%2d,%p,%p", intArrArr[i][j], &intArrArr[i][j], intArrArr[i] + j);}
printf(
"\n");}
printf(
"%p,%p,%p \n", intArrArr[
0], intArrArr[
1], intArrArr[
2]);system(
"pause");
}
#include <stdio.h>
#include <stdlib.h>#define N 10
int intArrArr[N][N];
int main02(
void)
{
for (
int i =
0; i < N; ++i){
for (
int j =
0; j < N; ++j){
printf(
"%3d", intArrArr[i][j] = i * N + j +
1);}
printf(
"\n");}system(
"pause");
}
int main03(
void)
{
int sumA =
0;
int sumD =
0;
int sumE =
0;
for (
int i =
0; i < N; ++i){
int sumB =
0;
for (
int j =
0; j < N; ++j){
printf(
"%4d", intArrArr[i][j] = i*N +
1 + j);sumA += intArrArr[i][j];sumB += intArrArr[i][j];
if (i + j == N -
1)sumE += intArrArr[i][j];}
printf(
"sumB = %d \n", sumB);sumD += intArrArr[i][i];
printf(
"\n");}
printf(
"\n\n");
for (
int j =
0; j < N; ++j){
int sumC =
0;
for (
int i =
0; i < N; ++i){sumC += intArrArr[i][j];}
printf(
"sumC = %d \n", sumC);}system(
"pause");
}
#include <stdio.h>
#include <stdlib.h>
int main04(
void)
{
int intArrArrA[
3][
4] = { {
1,
2,
3 }, {
4,
5,
0,
13 }, {
6,
7,
8,
9 } };
int intArrArrB[
4][
3] = {
0 };
for (
int i =
0; i <
3; ++i){
for (
int j =
0; j <
4; ++j){
printf(
"%3d", intArrArrA[i][j]);}
printf(
"\n");}
printf(
"\n");
for (
int i =
0; i <
4; ++i){
for (
int j =
0; j <
3; ++j){
printf(
"%3d", intArrArrB[i][j] = intArrArrA[j][i]);}
printf(
"\n");}
printf(
"intArrArrB[i][j]<--intArrArrA[j][i] \n\n");
for (
int i =
0; i <
4; ++i){
for (
int j =
0; j <
3; ++j) {
printf(
"%3d", intArrArrB[
3 - i][
2 - j] = intArrArrA[j][i]);}
printf(
"\n");}
printf(
"intArrArrB[3-i][2-j]=intArrArrA[j][i] \n\n");
for (
int i =
0; i <
4; ++i){
for (
int j =
0; j <
3; ++j){
printf(
"%3d", intArrArrB[i][j] = intArrArrA[
2 - j][
3 - i]);}
printf(
"\n");}
printf(
"intArrArrB[i][j]=intArrArrB[2-j][3-i] \n\n");
for (
int i =
0; i <
4; ++i){
for (
int j =
0; j <
3; ++j){
printf(
"%3d", intArrArrB[
3 - i][
2 - j] = intArrArrA[
2 - j][
3 - i]);}
printf(
"\n");}
printf(
"intArrArrB[3-i][2-j]=intArrArrB[2-j][3-i] \n\n");system(
"pause");
}
#define row 2
#define column 3
int main05(
void)
{
int intArrArrA[row][column] = {
1,
2,
3,
4,
5,
6 };
printf(
"原樣輸出: \n");
for (
int i =
0; i < row; ++i){
for (
int j =
0; j < column; ++j){
printf(
"%2d", intArrArrA[i][j]);}
printf(
"\n");}
printf(
"\n");
int intArrArrB[column][row] = {
0 };
printf(
"以反斜線為轉置線,以左下角為翻頁點,進行翻頁轉置! \n");
for (
int i =
0; i < column; ++i){
for (
int j =
0; j < row; ++j){
printf(
"%2d", intArrArrB[i][j] = intArrArrA[j][i]);}
printf(
"\n");}
printf(
"\n");
printf(
"以反斜線作為轉置線,以右上角作為翻頁點,進行翻頁轉置! \n");
for (
int i =
0; i < column; ++i){
for (
int j =
0; j < row; ++j){
printf(
"%2d", intArrArrB[column -
1 - i][row -
1 - j] = intArrArrA[j][i]);}
printf(
"\n");}
printf(
"\n");
printf(
"以正斜線作為轉置線,以右下角作為翻頁點,進行翻頁轉置! \n");
for (
int i =
0; i < column; ++i){
for (
int j =
0; j < row; ++j){
printf(
"%2d", intArrArrB[i][j] = intArrArrA[row -
1 - j][column -
1 - i]);}
printf(
"\n");}
printf(
"\n");
printf(
"以正斜線作為轉置線,以左上角作為翻頁點,進行翻頁轉置! \n");
for (
int i =
0; i < column; ++i){
for (
int j =
0; j < row; ++j){
printf(
"%2d", intArrArrB[column -
1 - i][row -
1 - j] = intArrArrA[row -
1 - j][column -
1 - i]);}
printf(
"\n");}
printf(
"\n");system(
"pause");
}
程序片段(03):03.Time.c
內容概要:高維數組
#include <stdio.h>
#include <stdlib.h>
int main01(
void)
{
int intArrArr[
3][
4] = {
0 };
for (
int i =
0; i <
12; ++i){intArrArr[
12 /
4][
12 %
4] = i +
1;}
printf(
"%p \n", intArrArr);system(
"pause");
}
int main02(
void)
{
int intArrArrArr[
3][
4][
5] = {
0 };intArrArrArr[
0][
0][
0] =
0;intArrArrArr[
1][
0][
0] =
20;intArrArrArr[
2][
0][
0] =
40;
printf(
"%p \n", intArrArrArr);
for (
int i =
0; i <
60; ++i){intArrArrArr[i / (
4 *
5)][i % (
4 *
5) /
5][i % (
4 *
5) %
5] = i;}system(
"pause");
}
int main03(
void)
{
int intArrArrArr[
2][
3][
4] = {
0 };
int num =
0;
for (
int z =
0; z <
2; ++z){
for (
int x =
0; x <
3; ++x){
for (
int y =
0; y <
4; ++y){
printf(
"%3d, %p", intArrArrArr[z][x][y] = ++num, &intArrArrArr[z][x][y]);}
printf(
"\n");}
printf(
"\n\n");}system(
"pause");
}
程序片段(04):01.Fun.c
內容概要:數組與函數
#include <stdio.h>
#include <stdlib.h>
void testArrName(
int intArr[
10])
{
printf(
"%p \n", intArr);intArr[
3] =
1000;
printf(
"sizeof(intArr) = %d \n",
sizeof(intArr));
int intArrTest[
10] = {
1,
2,
3,
4,
5,
6,
7,
8,
9,
10 };
printf(
"sizeof(intArrTest) = %d \n",
sizeof(intArrTest));
}
int main01(
void)
{
int intArr[
10] = {
1,
2,
3,
4,
5,
6,
7,
8,
9,
10 };
printf(
"%p \n", intArr);testArrName(intArr);
for (
int i =
0; i <
10; ++i){
printf(
"%d \n", intArr[i]);}system(
"pause");
}
程序片段(05):01.枚舉數組.c
內容概要:數組與枚舉常量
#include <stdio.h>
#include <stdlib.h>enum person{ 吳偉, lzq, zb, yc, 李波 };
double yanZhiBiao[
5] = {
97.9,
93.9,
88.9,
60.9,
98.9 };
int main01(
void)
{
for (
enum person people = 吳偉; people <= 李波; ++people){
printf(
"%lf \n", yanZhiBiao[people]);}system(
"pause");
}
程序片段(06):01.命名.c
內容概要:起名工具
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <locale.h>
int main01(
void)
{srand((
unsigned int)time(NULL));
char passChr[
10] = {
'A',
'B',
'C',
'D',
'E',
'F',
'G',
'H',
'I',
'J' };
for (
int i =
0; i < rand() %
10 +
6; ++i){
printf(
"%c", passChr[rand() %
10]);}
printf(
"\n");system(
"pause");
}
int main02(
void)
{setlocale(LC_ALL,
"zh-CN");
wchar_t wcharS[
8] = { L
'龍', L
'虎', L
'大', L
'偉', L
'天', L
'桂', L
'三', L
'財' };putwchar(L
'吳');srand((
unsigned int)time(NULL));
for (
int i =
0; i < rand() %
2 +
1; ++i){putwchar(wcharS[rand() %
8]);}system(
"pause");
}
程序片段(07):01.洗牌.c
內容概要:07.洗牌
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main01(
void)
{
int intArr[
54] = {
0 };
printf(
"洗牌之前:\n");
for (
int i =
0; i <
54; ++i){
printf(
"%3d", intArr[i] = i +
1);}
printf(
"\n\n");srand((
unsigned int)(time(NULL)));
for (
int i =
0; i <
53; ++i){
int num = i +
1 + rand() % (
53 - i);intArr[i] = intArr[i] ^ intArr[num];intArr[num] = intArr[i] ^ intArr[num];intArr[i] = intArr[i] ^ intArr[num];}
printf(
"洗牌之后:\n");
for (
int i =
0; i <
54; ++i){
printf(
"%3d",intArr[i]);}system(
"pause");
}
轉載于:https://www.cnblogs.com/niulanshan/p/6174614.html
總結
以上是生活随笔為你收集整理的20160205.CCPP体系详解(0015天)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。