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"中的字符个数加上结尾的'