嗨害嗨

分类 C_Program 下的文章

6/5
2017

C program 学习笔记_2

上回在程序中用printf语句输入了我们想要输出的文字,但站在用户的角度来说,每次运行程序都要跑到后台来设置输出的内容,简直非常蛋疼,
那我们就用scanf格式化输入语句,将我们在窗口输入的内容再输出去。

首先依旧是打开Code::Block,新建项目,在sources里面打开main.c文件,输入以下程序

#include<stdio.h>
int main()
{     int x,y,z; //用int定义三个整形变量x,y,z

printf("输入三个10以内数字:");
scanf("%d,%d,%d \n",&x,&y,&z); // %d是占位符意思是让计算机给输入的内容留三个位置
printf("输出之前的内容:%d",x,y,z);
return 0;
}

然后按F9建立项目并运行

 

得到如图结果

说明:C语言中的%d用于十进制数的输入和输出格式控制,所以只能用给十进制数留空,如果输入字母那么计算机便会自动输出一个十进制数。如果我们需要十六进制数的输入和输出就要用%x来控制了。

 

在scanf语句中我们的输入要有三个%d,因为我们定义了三个变量,输入也需要三个十进制数程序才能继续运行输出结果,引号后面需要用&来给前面定义的变量赋值。

到这里我们可以拓展一下,利用%d和%x来写一个十进制转换到十六进制的程序

新建项目,到main.c里面写程序

#include <stdio.h>

int main()
{
   int x; //定义一个变量
   printf("输入一个十进制数:\n");
   scanf("%d",&x);
   printf("输出十六进制数:\n0x%x",x);
   return 0;

} 



 

前面说过,%x用来输入和输出十六进制数,我们利用了这个作用来转换十进制和十六进制,同理,我们也可以交换%d和%x的位置来实现十六进制转到十进制的功能。

+ MORE