c語言計數
① c語言計數
寫一個小延時函數
delay();//裡面用兩個for循環累加就好
然後把數碼管的解碼放在數組里
共陰數碼管的解碼為
0 0x3f
1 0x06
2 0x5b
3 0x4f
4 0x66
5 0x6d
6 0x7d
7 0x07
8 0x7f
9 0x6f
A 0x77
B 0x7c
C 0x39
D 0x5e
E 0x79
F 0x71
把這些放入數組
int led[16]={0x3f,0x06,0x4f,0x66,0xd,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}
然後送入你接數碼管的io口
例如
for(i=0;i<16;i++)
{
p1=led[i];
delay();
};
共陽極數碼管的話,你換下數組的數值就好
② C語言怎麼計算一個數有多少位
c語言怎麼計算一個數有多少位的方法:
1.
輸入待計算的數x
2.
定義一個數位的變數int
n=0;
3.
循環,x每次縮小10倍,n=n+1;
最終x會變成0,循環結束
4.
輸出n值
代碼:
#include
void main()
{
int x,m,n=0;
printf("input x: ");scanf("%d", &x );
m=x; //備份原數,供輸出用
do {
n++;
x /= 10 ;
} while( x>0 );
printf("%d 是%d位數\n", m, n );
}
③ C語言中strlen函數是怎麼計數的
char str[]=" ab 12\""
字元1: 轉義字元:水平製表符 ,其ASCII 值9(十進制)
字元2、3:ab
字元4: 轉義字元,換行符,其ASCII 值10(十進制)
字元5: 12 轉義字元,其中012是8進制數,其ASCII值 同 .
字元6:\ 轉義字元 反斜杠,其ASCII值 92(十進制)
字元7:" 轉義字元 雙引號",其ASCII值 34(十進制)
2. printf("%d ", strlen("IBM 0121\"));
字元1、2、3: IBM
字元4: 轉義字元
字元5、6、7:012
字元8:1 其ASCII值 1(8進制).
字元9:\ 轉義字元 反斜杠,其ASCII值 92(十進制)
3.printf("%d ",strlen(" "