在c语言中,要怎么定义以0开头输入的数字串的数据类型,变量定义,书写方式?如0123456,c语言初学者求问~

来源:百度知道 编辑:UC知道 时间:2024/05/18 10:27:16
不是要八进制的,能让他包含数字8、9的。。。如输入0123456789,怎么把它赋值给一个变量??

使用字符数组。
在其他语言里就是string 类型。

请输入字符数组 或 string.h
查相关资料

自己查资料动手比别人告诉你书写方式对于初学者更重要。不要怕报错。

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