C语言程序运行不了,哪位大神帮忙解个惑呀?

Python011

C语言程序运行不了,哪位大神帮忙解个惑呀?,第1张

你的二分法查找的C语言程序有两处问题,我帮你改好了(改动的地方见注释)

#include <stdio.h>

#include <math.h>

void main(){//这里把mian改成main

int a[10]={0,1,6,16,23,56,80,100,110,115}

int low,high,mid,found,n

low=0

high=9

found=0

printf("write a number:\n")

do{

scanf("%d",&n)

getchar()

}while(n<a[0]||a[9]<n)//这里把n小于a[9]改成a[9]小于n

while(low <= high){

mid=(low+high)/2

if(n==a[mid]){

found=1

break

}else if(a[mid]>n)

high=mid-1

else

low=mid+1

}

if(found==1){

printf("this number bit is %d\n",mid)

}else{

printf("NO no %d\n",n)

}

}

c语言的语句结束标志是分号。在C语言中分号“;”用于结束一个语句,就如同平日常用的句号“。”作用一样。

C程序是由C语言写的,能完成特定功能的一套完整的指令。组成这些指令的基本元素,称为语句。一个C程序必须要有头文件、一个主程序,主程序必须要以‘{’开头,以‘}’结尾。

两者之间是语句文本。每行语句必须以‘’分号结尾。注意,所有标点必须用英文标点,如果用中文标点的话,程序会报错。

程序中有时候会有双斜线‘//’,这是单行注释符,它的右边的语句仅仅起注释作用,不会被执行;

此外,还有多行注释符‘/*’和‘*/’,这两个符号中间的内容不会被执行。

扩展资料

C语言 while(表达式)后面是没有分号的,如果不小心加上分号,系统也不会出现编译错误,但是程序却会不停的执行空操作,形成空循环体,无法执行“while(表达式);”后面的程序,得不到预计的效果。例如,在累加求和的程序中while循环加上分号产生错误。

在do…while循环语句中while后面是有分号的,与普通的语句一样,这个分号是用来结束语句的。如果遗漏了这个分号,程序不会通过编译进而产生错误。

因此,在用do…while循环语句时,不要忘记在while的后面加上分号,即使忘记了,编译器也会有所提示,而不会产生不可预见的错误。

注意:分号在do…while语句中代表一条语句的结束,并不代表循环体的结束。