作业帮 > 综合 > 作业

怎样将用C语言转换输入的四个数表示时间 如1256 输出 _ _ _ | _| |_ |_ | |_ _||_|

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/06/04 07:35:44
怎样将用C语言转换输入的四个数表示时间 如1256 输出 _ _ _ | _| |_ |_ | |_ _||_|

 就类似于电子表上得显示,用3X3的矩阵

怎样将用C语言转换输入的四个数表示时间 如1256 输出 _ _ _ | _| |_ |_ | |_ _||_|
#include
//
void mat(int n)
{
if((n&4)==4)//n & 100
printf("|");
else
printf(" ");
if((n&2)==2)//n& 010
printf("_");
else
printf(" ");
if((n&1)==1)//n & 001
printf("|");
else
printf(" ");
}
void main()
{
// 0,1,2,3,4,5,6,7,8,9 编码
//line1[10]={2,0,2,2,0,2,2,2,2,2};
//line2[10]={7,1,3,3,7,6,6,1,7,7};
//line3[10]={7,1,6,3,1,3,7,1,7,3};
int line[3][10]={{2,0,2,2,0,2,2,2,2,2},{5,1,3,3,7,6,6,1,7,7},{7,1,6,3,1,3,7,1,7,3}};
int i,j;
char ch[30],num=0;
//mat(2);
//num=0;
do
{
scanf("%c",&ch[num]);
}while(ch[num++]!='\n');
//printf("%d",num);
num--;
for(i=0;i
再问: 刚才我试了 感谢 很好用 美中不足的就是输入时不能加空格 例如只能输入1234 但是我希望输入的是1 2 3 4 (中间有空格)
再答: do { scanf("%c",&ch[num]); }while(ch[num++]!='\n'); 这里这样改 do { scanf("%c",&ch[num]); if(ch[num]==' ') num--; }while(ch[num++]!='\n');