A. 在c語言中,要怎麼定義以0開頭輸入的數字串的數據類型,變數定義,書寫方式如0123456,c語言初學者求問~
0開頭輸入的數字 是 8進制正整數。
輸入輸出格式用%o
變數定義為長整型或整型,考慮數值范圍
8進制數,數字可以是 1,2,3,4,5,6,7,0,沒有8,9。
#include <stdio.h>
#include <stdlib.h>
void main()
{
long int i,j,k; // 變數定義為長整型或整型
printf("Enter data in O -- for example 077 \n");
scanf("%o",&i); // 8進制方式讀入 i
k = i + 1; // k 比 i 大 1
printf("%o\n",k); // 列印k的8進制值
printf("%d %d",i,k); // 列印i,k的十進制值
exit(0);
}
輸入i: 077 (或77)
列印k的8進制值: 100
列印i,k的十進制值: 63 64
輸入i: 0123456 (或123456)
列印k的8進制值: 123457
列印i,k的十進制值: 42798 42799
B. 在c語言中怎樣定義字元串
在c語言中定義字元串:
C語言中用字元型CHAR來表示存儲字元,沒有C++裡面的可以單獨的字元串類型String;
所以C裡面使用字元數組和字元指針來實現字元串功能;
C的字元數組只能在定義時一起賦值,以後只能給單個元素一一賦值;
char string0[10];
char string1[]="prison break";
char string2[100]="michael scofield";
1句表示定義個長度為10的字元串,但未賦值,2句表示定義了一個字元數組string1,並進行初始化,使得其長度自動為13(字元串」prison break"中的字元個數加上結尾的'