数组
#include<stdio.h>
int main()
{
int a[5];
int b[] = { 4,3,2,1,0 };
for (int i = 0; i < 5; i++)
{
a[i] = i;
}
for (int i = 0; i < 5; i++)
{
printf("%d ", a[i]);
}
printf("\n");
for (int i = 0; i < 5; i++)
{
printf("%d ", b[i]);
}
return 0;
}
//0 1 2 3 4
//4 3 2 1 0
#include<stdio.h>
int main()
{
int a[10];
int b;
for (int i = 0; i < 10; i++)
{
scanf("%d", &b);
a[i] = b;
}
for (int i = 0; i<9; i++)
{
for (int j = i + 1; j <10; j++)
{
if (a[j] < a[i]) {
int temp = a[j];
a[j] = a[i];
a[i] = temp;
}
}
}
for (int i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
return 0;
}
//12 321 3123 11 23 123 213 31211 2444 120
//11 12 23 120 123 213 321 2444 3123 31211
#include<stdio.h>
int main()
{
int a[3][4] = { 1,2,3,4,5,6,7,8,9,10,11,12 };//3行4列
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
//1 2 3 4
//5 6 7 8
//9 10 11 12
#include<stdio.h>
int main()
{
int a[3][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}};//3行4列
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
//1 2 3 4
//5 6 7 8
//9 10 11 12
#include<stdio.h>
int main()
{
int a[3][4] = {{1},{5},{9}};//3行4列
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
//1 0 0 0
//5 0 0 0
//9 0 0 0
#include<stdio.h>
int main()
{
int a[][4] = { {1,2,3,4},{5,6,7,8},{9,10,11,12} };//3行4列
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
//1 2 3 4
//5 6 7 8
//9 10 11 12
#include<stdio.h>
int main()
{
int a[2][3] = {{1,2,3},{4,5,6}};
int b[3][2];
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 2; j++)
{
b[i][j]= a[j][i];
printf("%d ", b[i][j]);
}
printf("\n");
}
return 0;
}
//1 4
//2 5
//3 6
#include<stdio.h>
int main()
{
int a[3][4];
int b;
int max = a[0][0];
int row, colum;
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
scanf("%d", &b);
a[i][j] = b;
}
}
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 4; j++)
{
if (a[i][j] > max)
{
max = a[i][j];
row = i;
colum = j;
}
}
}
printf("最大值为:%d\n", max);
printf("第%d行 第%d列\n", row+1,colum+1);
return 0;
}
//1 2 4 5
//12 32 123 55
//23 56 973 91
//最大值为:973
//第3行 第3列
#include<stdio.h>
int main()
{
int a[3][3];
int b;
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
scanf("%d", &b);
a[i][j] = b;
}
}
printf("第一行:");
for (int i = 0; i < 3; i++)
{
printf("%d ",a[1][i]);
}
printf("\n");
printf("第一列:");
for (int i = 0; i < 3; i++)
{
printf("%d ", a[i][1]);
}
return 0;
}
//1 2 3
//4 5 6
//7 8 9
//第一行:4 5 6
//第一列 : 2 5 8
#include<stdio.h>
int main()
{
int a[3][3];
int b;
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
scanf("%d", &b);
a[i][j] = b;
}
}
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
if (i == 1 || j == 1)
{
printf("%-6d", a[i][j]);
}
else
{
printf("%-6c", ' ');
}
}
printf("\n");
}
return 0;
}
//1 2 3
//4 5 6
//7 8 9
// 2
//4 5 6
// 8
#include<stdio.h>
#define M 10
int main()
{
int a[M] = {-12,0,6,16,23,56,80,100,110,115};
int low,high,mid,b,found;
low = 0;
high = M - 1;
found = 0;
scanf("%d", &b);
while (low <= high)
{
mid = (low + high) / 2;
if (b == a[mid])
{
found = 1;
break;
}
else if (a[mid] < b)
{
low = mid + 1;
}
else
{
high = mid - 1;
}
}
if (found == 1)
{
printf("找到了%d,它在第%d个\n",a[mid],mid);
}
else
{
printf("没有找到\n");
}
return 0;
}
//80
//找到了80, 它在第6个