写在这里的初衷,一是备忘,二是希望得到高人指点,三是希望能遇到志同道合的朋友。
数组
1.定义一维数组
![输入10个地区的面积(面积为整数),对它们由小到大排序并输出排序后的结果。](https://img-blog.csdnimg.cn/eec9dac1cfd64698911addf810f88a56.png#pic_center)
#include<stdio.h>
int main()
{
int a[10];
int i;
printf("请输入10个面积:\n");
for (i = 0; i <= 9; i++)
scanf_s("%d", &a[i]);
printf("\n");
return 0;
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/6e6728ebcdec401284c4ebc7ac6ab9ec.png#pic_center) 例1 ![在这里插入图片描述](https://img-blog.csdnimg.cn/6991cedc6fd848cea09bc3bd0a214188.png#pic_center)
#include<stdio.h>
int main()
{
int i, a[10] = { 0,1,2,3,4,5,6,7,8,9 };
for (i = 9; i >= 0; i--)
printf("%d\t", a[i]);
printf("\n");
return 0;
}
运行结果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/820ccadce35a40cdb491fbdd2fbb7276.png#pic_center) 练习 ![![在这里插入图片描述](https://img-blog.csdnimg.cn/d820288bced649aa9e052cfc89a1cab8.png](https://img-blog.csdnimg.cn/7dae0eefe3d74b1cafa5204abf3ead6c.png#pic_center) 选择法/冒泡法(沉底法)
#include<stdio.h>
int main()
{
int a[10];
int i,j,t;
printf("请输入10个面积:\n");
for (i = 0; i <= 9; i++)
scanf_s("%d", &a[i]);
for(i=0;i<=8;i++)
for (j = i+1; j <= 9; j++)
if(a[i]>a[j])
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
printf("排序后的面积依次是:\n");
for (i = 0; i <= 9; i++)
printf("%d\t", a[i]);
printf("\n");
return 0;
}
#include<stdio.h>
int main()
{
int a[10];
int i,j,t;
printf("请输入10个面积:\n");
for (i = 0; i <= 9; i++)
scanf_s("%d", &a[i]);
for(j=0;j<=8;j++)
for (i = 0; i <= 8-j; i++)
if(a[i]>a[i+1])
{
t = a[i];
a[i] = a[i+1];
a[i+1] = t;
}
printf("排序后的面积依次是:\n");
for (i = 0; i <= 9; i++)
printf("%d\t", a[i]);
printf("\n");
return 0;
}
2.定义二维数组
![在这里插入图片描述](https://img-blog.csdnimg.cn/d6ab89443240441cb41ff1467567bb13.png#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/45334163f9c54046a5f4ec9a1df3a683.png#pic_center) 练习 ![在这里插入图片描述](https://img-blog.csdnimg.cn/b0b5073ba71b4532885972d3d9843664.png#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/6c39779410024f01837af78d77b8847e.png#pic_center)
#include<stdio.h>
int main()
{
int a[2][3] = { {1,2,3},{4,5,6} };
int b[3][2], i, j;
for (i = 0; i <= 1; i++)
for (j = 0; j <= 2; j++)
b[j][i] = a[i][j];
printf("数组b为:\n");
for (j = 0; j <= 2; j++)
{
for (i = 0; i <= 1; i++)
printf("%d\t", b[j][i]);
printf("\n");
}
return 0;
}
运行结果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/ed5bcba9d44546588e04d33544f9719d.png#pic_center) 例2 ![在这里插入图片描述](https://img-blog.csdnimg.cn/8a6bf694fab746119af467b8da225d25.png#pic_center)
#include<stdio.h>
int main()
{
int i, j, max;
int a[3][3] = { {1,2,3},{9,8,7},{-10,10,-5} };
max = a[0][0];
for (i = 0; i <= 2; i++)
{
for (j = 0; j <= 2; j++)
if (a[i][j] > max)
max = a[i][j];
}
printf("最大元素的值为%d\n",max);
return 0;
}
运行结果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/266d0539a7164a7a8e2d069df329fb11.png#pic_center)
3.定义字符数组
![在这里插入图片描述](https://img-blog.csdnimg.cn/862f141c7606485da9eb2b7d2a5d9eeb.png#pic_center) ![在这里插入图片描述](https://img-blog.csdnimg.cn/73b2ffec74ef45b58fad934fb2c77bea.png#pic_center)
4.输出字符数组
1.挨个输出printf("%c",)
2.整体输出printf("%s",)或者puts()
4.1 挨个输出printf("%c",)
例3 ![在这里插入图片描述](https://img-blog.csdnimg.cn/ff3722e11bd2426aa017c8aade904ffc.png#pic_center)
#include<stdio.h>
int main()
{
char c[15] = { 'H','o','u','B','o','S','h','i',' ','S','h','u','a','i','!' };
int i;
for (i = 0; i <= 14; i++)
printf("%c", c[i]);
printf("\n");
return 0;
}
运行结果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/450dd326fda64892acc72d62f8e0e584.png#pic_center)
例4 ![在这里插入图片描述](https://img-blog.csdnimg.cn/f2357c9d1b61448bb52ab2b5df7536ed.png#pic_center)
#include<stdio.h>
int main()
{
char c[3][3] = { {' ','*',' '},{'*',' ','*'},{' ','*',' '} };
int i, j;
for (i = 0; i <= 2; i++)
{
for (j = 0; j <= 2; j++)
printf("%c", c[i][j]);
printf("\n");
}
return 0;
}
运行结果: ![在这里插入图片描述](https://img-blog.csdnimg.cn/50cbe34aab2f462aa7ab05eaba63e953.png#pic_center)
4.2 整体输出printf("%s",)或者puts()
例5 ![在这里插入图片描述](https://img-blog.csdnimg.cn/ff3722e11bd2426aa017c8aade904ffc.png#pic_center)
#include<stdio.h>
int main()
{
char c[15] = { 'H','o','u','B','o','S','h','i',' ','S','h','u','a','i','!' };
printf("%s\n", c);
return 0;
}
#include<stdio.h>
int main()
{
char c[15] = { 'H','o','u','B','o','S','h','i',' ','S','h','u','a','i','!' };
puts(c);
return 0;
}
在这里需要注意:\0 \0后边的字符不会被输出来 ![在这里插入图片描述](https://img-blog.csdnimg.cn/6c4a035bcc7343e893b40494ada692b3.png#pic_center) 定义字符的时候养成一个好习惯:在字符最后加一个’\0’
#include<stdio.h>
int main()
{
char c[16] = { 'H','o','u','B','o','S','h','i',' ','S','h','u','a','i','!','\0' };
puts(c);
return 0;
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/6b570edeea1e45ab80049e6e27425aa0.png#pic_center)
5.输入字符数组
1.挨个单词输入 scanf("%s%s...",)
2.整体输入gets()
例6 ![在这里插入图片描述](https://img-blog.csdnimg.cn/31c4ea3fef2240ce8d624d6bb3a11a59.png#pic_center)
#include<stdio.h>
int main()
{
char c1[12],c2[12],c3[12];
scanf("%s%s%s", c1, c2, c3);
return 0;
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/59496a84cb564bfebf2026a82985e24b.png#pic_center)
#include<stdio.h>
int main()
{
char c[18];
gets_s(c);
return 0;
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/beb91bf0bf964fa69b8bc981d90f31a2.png#pic_center) 练习 ![在这里插入图片描述](https://img-blog.csdnimg.cn/a08576386e764f97a90390b350c1bd72.png#pic_center)
#include<stdio.h>
int main()
{
char c[81];
int i, dancishu = 1;
gets_s(c);
for (i = 0; c[i] != '\0'; i++)
if (c[i] = ' '&&c[i + 1] != ' ')
dancishu++;
return 0;
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/983fefc4f7084f9f83270e45332665a0.png#pic_center)
#include<stdio.h>
int main()
{
char c[81];
int i, dancishu = 1;
gets_s(c);
if (c[0] == ' ')
dancishu = 0;
for (i = 0; c[i] != '\0'; i++)
if (c[i] = ' '&&c[i + 1] != ' ')
dancishu++;
return 0;
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/9ed8ab5e92a040dc8ca88589a78bdb0a.png#pic_center)
#include<stdio.h>
int main()
{
char c[81];
int i, dancishu = 1;
gets_s(c);
if (c[0] == ' ')
dancishu = 0;
for (i = 0; c[i] != '\0'; i++)
if (c[i] = ' '&&c[i + 1] != ' '&&c[i+1]!='\0')
dancishu++;
printf("有%d个单词",dancishu);
return 0;
}
以上是自己通过学习整理所得,大家有相关问题,可以留言,一起交流学习!
转载或者引用本文内容请注明来源及原作者
参考 《C语言》4小时不挂科【猴博士爱讲课】——第4~7课
|