大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
嵌入汇编
创新互联长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为哈密企业提供专业的成都网站制作、成都网站建设,哈密网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。
用汇编里面的跳转语句
也可以达到goto语句的作用
#include "stdio.h"
#include"process.h"
#include conio.h
#define MAX 100
int a = 0, price[MAX];
add()
{
int p = 0;
printf("请输入价格:\n");
do
{
p++;
scanf("%d", price[p - 1]);
if(p= MAX)
{
printf("数据已满!");
break;
}
}
while(price[p - 1] = 0);
price[p - 1]= 0;
return 0;
}
print()
{
int i = 0, j= 0;
while(i= MAX)
{
if(price[i] == 0)
{
printf("价格已输入完毕");
break;
}
printf("%d,%d\n", price[i], price[i + 1]);
i += 2;
j++;
if(j= 10)
{
j =0;
printf("\n");
continue;//will goto while
}
}
getch();
system("cls");
return 0;
}
FIND()
{
int m =price[0], n;
for(n = 1; n MAX; n++)
{
if(price[n] m) m =price[n];
if(price[n] == 0) break;
}
printf("max=%d", m);
return 0;
}
void main()
{
//loop:
while(a4)
{
printf("1、录入价格\n");
printf("2、输出价格\n");
printf("3、查询价格\n");
printf("4、退出\n");
scanf("%d", a);
switch(a)
{
case 1:
add();
system("cls");
break;
case 2:
print();
system("cls");
break;
case 3:
FIND();
getch();
system("cls");
break;
case 4:
printf("谢谢使用该系统!\n");
break;
}
}
}
可再加一层循环,将goto的标号,放在循环起点.然后 用continue代替goto
而你这个 本身goto就是在循环里面的, 所以必须用标志位,退出内循环后再处理.
while(1)
{
int flag = 0;
a[j] = rand() % 10;
for(i=0;ij;i++)
{
if(a[i]==a[j])
{
flag = 1;
break;
}
}
if(flag == 0) break;
}
对于比较复杂的情况,也可以封装函数.
int i=1;
while(i){
printf("请输入想要查找的位置:\n");
scanf("%d",a);
if(aL-CD||a0)
{
printf("位置错!请重新输入。\n\n");
}
else i=0;
}
goto语句就是一个循环语句,可以用while语句替换,也可以用do{……}while();语句替换!还可以用嵌套语句替换,for语句都可以!!!
goto 语句,可以实现无条件跳转。goto 语句过于强大了,从程序中的任何地方都可以无条件跳转到任何其它地方,只要在那个地方定义一个标号就行。