您的位置:

c语言代码125,C语言代码框架

本文目录一览:

C语言请大佬解答下面这个程序是怎么运行的?输入-125

主函数中输入-125后打印出-号,然后将-125取绝对值,用125调用函数fun——

k==2,用2去除125余1,所以r=125%2中r为1。由于!1为0,所以跳过while循环进入for下一次循环。

k==3,用3去除125余2,所以r=125%3中r为2。由于!2为0,所以再跳过while循环进入for下一次循环。

k==4,用4去除125余1,所以r=125%4中r为1。由于!1为0,也跳再过while循环进入for下一次循环。

k==5,用5去除125余0,所以r=125%5中r为0。由于!0为1,所以执行while循环体:先打印出5(k的值),再n=n/k==125/5=25;由于251则再打印出*号。这一循环结果输出是5*。下面r=n%k即r=25%5==0,而!0为1,所以进入while第二次轮循环。

第二次while循环中先打印出5(k的值),再n=n/k即n=25/5==5,并打印*号,屏幕显示5*5*。

r=n%k即r=25%5==0,!0==1,所以再次进入while循环体:打印5,n=n/k即n=5/5==1,由于n1不再成立,所以不再打印*号。这时屏幕显示5*5*5。

下面n=n%k即n=1%5==1,而!1==0,所以退出while循环进入for循环。

这时k==5,而sqrt(n)即sqrt(1)==1,显然51不成立而退出for循环。

最后因n==1而这执行print退出fun函数(最后那句输出是解决n是质数的)。

由于主函数中先打印了-号,所以最后显示结果是-5*5*5。

求几个比较有趣,简单的C语言源代码 小白自己敲着练一下手感

最简单的模拟计时器:

#includestdio.h

#includeconio.h

#includewindows.h

int m=0,s=0,ms=0;  //m是分 s是秒 ms是毫秒

//以下是5个自编函数

void csh( );  //初始化界面

void yinc(int x,int y);  //隐藏光标的函数(y值设为0就会隐藏)

void jishi( );  //计时器运行(每100毫秒变化一次)

void Color (short x, short y);  //设定颜色的函数(y设为0就是黑底)

void gtxy (int x, int y);  //控制光标位置的函数

int main(  )  //主函数

{  csh( );

   getch( );

   while(1)

       { jishi( );

         Sleep(100);  //间隔100毫秒

         if( kbhit( ) )break;  //有键按下就退出循环

       }

    return 0;

}

void csh( )   //初始化界面

{Color(14,0);    //设定淡黄字配黑底

printf(“\n\n\t    计时器”);

Color(10,0);   //设定淡绿字配黑底

printf("\n\t┌───────────┐");

printf("\n\t│           │");

printf("\n\t└───────────┘");

gtxy(10,4);   //光标到屏幕第10列4行处输出

Color(7,0);   //恢复白字黑底

printf(" 00:00:00 ");

yinc(1,0 );   //隐藏光标(yinc代表隐藏)

return;

}

void jishi( )  //计时器运行

{ms+=1;

if(ms==10){s+=1;ms=0;}

if(s==60){m+=1;s=0;}

gtxy(10,4);

Color(9,0);   //设定淡蓝字配黑底

if(m9) printf(" %d:",m);

else printf(" 0%d:",m);

Color(14,0);   //设定淡黄字配黑底

if(s9) printf("%d:",s);

else printf("0%d:",s);

Color(12,0);   //设定淡红字配黑底

printf("0%d",ms);

}

void gtxy (int x, int y)   //控制光标位置的函数

{ COORD pos;

pos.X = x;

pos.Y = y;

SetConsoleCursorPosition ( GetStdHandle (STD_OUTPUT_HANDLE), pos );

}

void Color (short ForeColor= 7, short BackGroundColor= 0)   //设定颜色的函数

{ HANDLE  handle = GetStdHandle ( STD_OUTPUT_HANDLE );

SetConsoleTextAttribute ( handle, ForeColor + BackGroundColor * 0x10 );

}

void yinc(int x,int y)   //隐藏光标的设置(gb代表光标)

{ CONSOLE_CURSOR_INFO  gb={x,y};   //x为1-100,y为0就隐藏光标

SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), gb);

}

一段简单的c语言代码

这个问题很简单。。

当——出现在变量前时,优先级是最高的,所以,你那个程序,编译器会先做三次自减计算,结果为一,而你补充那个,系统会理解为W——,这个时候优先级没有乘法高,编译器先做×运算,再做W--运算,所以结果会是125,运算过后,W的值变为8。

C语言题程序第二个输出结果是124还是125呢?求大侠帮忙解释

第一个运行后,data=124;打印

124,相信你也清楚。下面是第二个:

data=change(data);

首先,调用change

函数,这个函数的

返回

其实

还是

=形参,就是你放多少进去,返回多少回来,然后,它偷偷修改了地址里面的东西(+1);

现在,我们来看看第二条,调用的时候,data=124,它放进去

124,返回来

还是

124,然后偷偷修改

data

的内容成

125;可惜,赋值语句

右结合的,要等右边运算完。而

change

函数里

的++,在函数结束的时候,就执行了。也就是说,函数退出来的时候,data=125,但函数的

返回值

124;然后

把这个

124

又赋值给

data,于是

data

又从

125

变成了

124;

如果你想验证,可以在

change

中,int

test=*data++;printf("%d,",*data);return

test;

2个

124

中间

125

,就是

偷偷修改

data,(124,124

,

125

,

124)

我知道c语言定义char的情况下'A'+'B'不等于131,想问但是-125是怎么算出来的?

'A'+'B'=131=10000011;

但是在计算机中用补码表示,所以:10000011=11111100+1=11111101=-125.(补码=反码+1,符号位不变)。

所以char型是考虑符号位的。

你可以试一下unsigned char,这个不考虑符号位,结果是131.

如何用51单片机产生125KHz的载波,求C语言代码,晶振11.0592!

125khz是8us周期,如果出方波的话,每4us就要反转一次电平。

11.0592MHZ下,51只能跑到1.08us的周期,更本来不及处理。

以51的特性,换用24Mhz的晶振,每8个周期一次反转,估计除了出方波就什么也不能干了。C语言就算了,51压根就做不了。

怎么改?换单片机。