c语言程序解读

c语言程序解读,第1张

#include"stdio.h"//printf的头文件 

void func1(int i)//对于函数1的提前声明

void func2(int i)//对于函数2的提前声明

char st[]="hello,friend"//定义一个长度为12的字符数组

//c++里所有的数组都是从0开始计数的哦

void func1(int i) { //其实如果提前声明了↑↑(第2行),这个函数还可以写在主函数(main)的后面

printf("%c",st[i])//等于putchar(st[i]) 作用:输出一个字符

if(i<3) {//等于i<=2 判断i是否小于3

i+=2//等于i=i+2,表示i自增2

func2(i)//调用func2函数

}

}

void func2(int i) {

printf("%c",st[i])//一样的

if(i<3) {//还是一样的

i+=2//...

func1(i)//再调用func1函数

}

}

main() {//主函数可以不写"int main()",但在一些比赛中是不允许的。 

int i//定义一个局部变量 

i=0//把i的值设为0

func1(i)//调用神灶信func1(0)

printf("\n")//输出换行  

//其实最好要再写一个"return 0"结束程序 

}

/*

程序流程: 

主函数内调用func1(0):

输出st[0]->h 

i<3? (i=0) -> i<3

i+2 i=2 调用func2(2):

输出st[2]->l

i<3? (i=2) -> i<3

i+2 i=4 调用func1(4):

  输出st[4]->o

  i<3? 游轮(i=4) -> i>3

返回! 

返回!

返回!

返回!

返回!

返回!

返辩陆回!

输出换行

结束程序 

*/

你用wintc

还是vc?要使用vc的话可以逐条调试你就应该明白了:

#include<conio.h>

#include<stdio.h>

void

main()

{

int

i=0

char

c/*定义字符型变量c*/

while(1)/*当1时,执行循环,因为括号内值为非0,所以循环会一直执行*/

{

c='\0'/*将‘空’字符赋值给c*/

while(c!=13&&c!=27)/*当c不等于ascii码13(也就是棚卜回车键)且哪和亏不等于ascii码27也就是ESC键时*/

{

c=getch()/*从键盘读取一李神个值并将其赋值给c*/

printf("%c\n",c)/*打印c并换行*/

}

if(c==27)

/*如果c等于27*/

break/*跳出循环*/

i++/*i自增*/

printf("the

no.is%d\n",i)/*打印‘the

no.

is

i的值’*/

}

printf("the

end")/*打印‘the

end’*/

getch()/*暂停屏幕*/

}

main()

{

int

i=0

//定义整型族闭变兆扒裂量i,初值为0

char

c

//定义字符型变量c

while(1)

//

判断为条件为真时执行下面的

{

c='\0'

//c赋值'\0'

while(c!=13&&c!=27)

//当条件c不等于13同时c不等于27时执行下面的

{

c=getch()

//调用getch()函数,并把值赋c

printf("%c\n",c)

//打印

c的值

}

if(c==27)

//当条件此搭c等于27

break

//返回

i++

//i的自加1

printf("the

no.is%d\n",i)

//输出为the

no.is空行,打印

i的值

}

printf("the

end")

//打印

the

end字符串

getch()

//调用getch()

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12425327.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存