C语言作业问题

C语言作业问题,第1张

楼上那位基本是对的,只是第二个没有看清要求,可以这样改:

int

main()

{

int

a,b;

void

num(int

a,int

b);

scanf("%d,%d",a,b);

num(a,b);

return

0;

}

void

num(int

a,int

b)

{

int

i,t;

int

mid;

srand((int)time(0));

if(a<b)

{t=a;a=b;b=t;}

while(1)

{

mid=rand();

if(mid>a

&&

mid<b)

{

printf("%d\t",i);

break;

}

else

continue;

}

}

可以的。参考下面的程序:

uchar code Pattern_P1[]={ 0xfc,0xf9,0xf3,0xe7,0xcf,0x9f};

uchar code Pattern_P2[]={ 0xf5,0xf6,0xfe,0x54,0x56,0x76,0xd7,0x49,0xa9,0xe4,0xc6};

for(i=136;i>0;i--)

{

P1=Pattern_P1[i];

P2=Pattern_P2[i];

DelayMS(150);

}

定义一个无符号字符型一维数组,table是数组名table[],中的[],省掉了一个参数,如果有参数,参数就表示些数组包含的个数,{}里的值就是数组包含的值。上面的代码可以写成unsigned char code table[16]={0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71};

'\t',表示水平制表位(horizontal tab),它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。换句话说,让所有的数据都紧跟在制表符后面输出。

和\n相当于在程序中按了一下“Enter”回车键比较,\t 就相当于在编程的时候按一下Table键,使光标以8个字符为基准进行跳跃 。

扩展资料:

\t应用程序举例:

#include<stdioh>

int main(void)

{

printf("Initial :%c\tAge :%d\n",'Z',12);

return 0;

}

因此在下一个水平制表位上显示“Age:”。全部输出为:

参考资料来源:百度百科-/t

直接复制的在那一句最后边多了两个字符

去掉后编译无错

请检查你是否输入错误,没有错误的话请更换最新版keil C51。

还有就是51对浮点型的运算是调用库执行的,效率很低,建议优化,还有sprintf函数虽然使用方便,但是编译后占用2k空间,对51这种flash不大的单片机来说比较浪费,建议尽量不用,自己写的会比调用这个函数占用的资源小很多。

以上就是关于C语言作业问题全部的内容,包括:C语言作业问题、单片机C语言中能不能使用两个 uchar code table 【】、单片机C语言unsigned char code table等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/9706050.html

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

发表评论

登录后才能评论

评论列表(0条)

保存