本章主要学习了数组的相关内容,其中掌握好一维数组是掌握好其他类型数组的基础,特别是要掌握好选择排序法和冒泡法
本章需要特别注意和熟练掌握的点有:
1.有关数组的初始化,其中可以针对部分元素初始化,二维数组在全部赋值或者分行赋值的情况下可以省略行长度
2.掌握多种输入字符数据的方法,包括gets,fgets以及scanf函数
3.特别注意字符数组的字符串结束符\0,还有区分“a”和‘a’的区别
360
给定两个整型数组,本题要求找出不是两者共有的元素。
定义整型变量n1 数组a[20],n2,b[20];
定义整型变量i,j;
输入n1
for i=0 to i<n1do
输入a[i]
end for
输入n2
for i=0 to i<n2
输入b[i]
end for
定义 flag,count=0;定义数组a[20]
for i=0 to i<n1 do
flag=0;
for j=0 to j<n2 do
if a[i]==b[j]
flag=1;
break;
end if
if flag==0
c[count]=a[i];
count++; //将a数组中不同的数放入c中
end if
end for
end for
for j=0 to j<n2 do
flag=0;
for i=0 to i<n1do
if b[j]==a[i]
flag=1;
break;
end if
if flag==0
c[count]=b[j];
count++;
end if
end for //将b数组中不同的数放入c中
定义 num=0;
定义数组 d[20];
d[num]=c[0];
num++;
for i=1 to i<count do
for j=0 j<num
if c[i]==d[j]
break;
end if
if j==num
d[num]=c[i];
num++;
end if
end for
for i=0 to i<num do
if i<num-1
输出d[i]+空格
else
输出d[i]
end for
}
所谓“螺旋方阵”,是指对任意给定的N,将1到N×N的数字从左上角第1个格子开始,按顺时针螺旋方向顺序填入N×N的方阵里。本题要求构造这样的螺旋方阵。
定义整型变量 n;
输入n
定义整型变量 i,j;
定义数组a[10][10] //主要思路四个方向,上下左右
定义 num=1;
for i=0 to i<n/2 do
for j=i to j<n-i-1 do//横着从左往右
a[i][j]=num;
num++;
end for
for j=i to j<n-i-1 do
a[j][n-i-1]=num;
num++; //竖着从上到下
end for
for j=n-i-1 to j>i do
a[n-i-1][j]=num;
num++; //横着从右到左
end for
for j=n-i-1 to j>i
a[j][i]=num;
num++;//竖着从下到上
end for
end for
if n%2==1
a[n/2][n/2]=n*n;
for i=0 to i<n do
for j=0 to j<n do
输出a[i][j]
if j==n-1
输出\n"
end for
end for
一个IP地址是用四个字节(每个字节8个位)的二进制码组成。请将32位二进制码表示的IP地址转换为十进制格式表示的IP地址输出。
定义字符数组 a[32];
定义整型变量 i;
定义整型变量 num=0;
for i=0 to i<32 do
输入a[i]
end for
for i=0 to i<32 do
num=num*2+(a[i]-‘0‘);
if i%8==7
if(i==31)
输出num
else
输出num加.
end if
num=0;
end if
end for
从同学中找一篇优秀代码,和自己写的代码比较下,说明下自己和同学代码区别,各自优势是什么?
原文:https://www.cnblogs.com/zyxaa/p/10087383.html