标签:表情 初始化 冒泡 ++ 数组名 lag 出现 进入 运行
定义整型变量n存放输入的数字,i、j用于循环
输入一个数值n
for i=1
? 输出i的值,i=i+1
? 如果n!=1,输出空格
? 当i>n时,结束循环
for j=n-1
? 输出j的值,j=j-1
? 如果j!=n-1,输出空格
? 当j<=0时,结束循环
最开始忽略了空格的问题,输出最后一个数的时候,它的后面还有一个空格,与题目要求不符合
定义整型变量n存放输入的自然数,n2存放新产生的自然数,sum=0(sum存放各位数字相加之和),count=0(count存放n掉入陷阱的步数),a存放n的值
输入n的值
do
? 如果count!=0,将n2的值赋值给n
? 将n的值赋值给a
? do
?? 求sum的值
?? n=n/10
? 当n==0时,结束循环
? 步数count=count+1
? 求出新的自然数n2
? 输出count和n2的值
? 如果上一个数a跟n2不相等,输出\n
? sum=0为下一次循环做准备
当a==n2时,结束循环
刚开始写完代码,运行的时候发现程序进入了死循环出不来,不能在4的时候就结束程序,用dev c调试时,发现自己的条件用错了,这里的n应该要改成a,因为n的值在前面改变了,等于0,所以永远也不会等于n2的值
定义整型变量n1,n2,result=0,flag=0(flag=0说明除法分母为0或有非法运算符),count=0
定义字符型变量op
输入第一个操作数n1和第一个字符op
当op!=‘=‘时,
?如果count!=0,n的值赋值给result,输入另一个op
switch(op)
?输入n2
?根据不同的op,做出相应的运算,flag=1,count=count+1。如果op为‘/’,并且n2为0时,flag=0
如果op==‘=‘并且count==0时,
result=n1的值,flag=1
如果flag==1
输出result的值
否则输出ERROR
输出最后结果时的判断条件错误,导致出现了第二个图的情况,输出ERROR的情况应该是存在非法字符和除法时n2为0时的时候,而不是n2等于0的时候都输出ERROR
一维数组定义的一般形式:
类型名 数组名 [数组长度];
int a[10]
1.在定义数组时,可以对数组元素赋初值
int a[10]={1,2,3,4,5,6,7,8,9,10};
2.也可以只针对部分元素
int a[10]={1,2,3,}
3.如果对全部元素都赋了初值,就可以省略数组长度。如果只对部分元素初始化,数组长度是不能省略的。
数组名表示该数组所分配连续内存空间中第一个单元的地址,即首地址。数组名是一个地址常量,不允许修改
可以让同一批相同类型的变量使用同一个数组变量名,表达简洁,可读性好,便于使用循环结构
使用数组会让程序变的简单,而且避免了定义多个变量的麻烦。
-定义整型变量i,k
-定义数组
重复上面的步骤,直到i大于等于n
一组数据按顺序排列,先算出它的中间数,跟所要查找的数比较一下大小,看是在中间数的左边还是右边,进入相应的区间,重复以上的步骤
区别:当数据多时,二分查找法效率高,顺序查找法效率低
二分查找法要求数据是有序的,而顺序查找法则没有这个要求
二维数组的定义形式为:
类型名 数组名 [行长度] [列长度]
int a [3] [2];
1.全部赋值
int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
2.部分赋值
static int b[4][3]={{1,2,3},{},{4,5};
等价于
static int b[4][3]={1,2,3,0,0,0,4,5};
a[i][j]中的下标i、j互换一下成a[j][i]就可以实现转置
下三角:i>=j
上三角:i<=j
对称矩阵:i==j
主要用于表示二维表和矩阵
数组该如何定义还不是很熟练,在还不知道数组长度的时候就定义数组
对于各种符号的优先级还没记好,做题时需要翻书看,特别是^符号,老是会忘记这个符号是干嘛
自己阅读程序的能力挺差的,考试的时候好几题错了
标签:表情 初始化 冒泡 ++ 数组名 lag 出现 进入 运行
原文地址:http://www.cnblogs.com/a2017/p/7887471.html