【吴从周课程】简单的输入和输出

数据输入

    编写程序的主要目的是为了处理数据,但是,数据从哪里来?数据的来源有很多种方式,如从磁盘文件中读取数据、从数据库中读取数据、从网页中抓取数据等,还有一种重要的方式就是从键盘输入数据。
   
   在C语言中,有三个函数可以从键盘获得用户输入。
   getchar() 用于输入单个字符。
   gets()   获取一行数据,并作为字符串处理。
   scanf()   最灵活、最复杂、最常用的数据输入函数

数据输出
在C语言中,有三个函数可以把数据输出到屏幕。

   putchar() 用于输出单个字符。

   puts()    输出字符串。

   printf()   最灵活、最复杂、最常用的输出函数。


       以前C语言要做界面,输入和输出很重要,但是现在输入和展示由网页和APP等软件去完成,C程序主要用于数据处理和通信,因此输入函数基本不用,现在我们学习,只需熟练掌握printf即可。

1、输出描述性的文字

   printf("我心非席,不可卷也,我心非石,不可转也。\n");

2、输出整数

   int age=18;
   printf("我年龄是%d岁。\n",age);

3、输出字符

   printf("我姓别是:%c。\n",'x');  
   char xb='x';
   printf("我姓别是:%c。\n",xb);

4、输出浮点数

    printf("我体重是%lf公斤。\n",62.5);
   double weight=62.5;
   printf("我体重是%lf公斤。\n", weight);

5、输出字符串

   printf("我的姓名是%s。\n","豫让");
   char name[21];
   memset(name,0,sizeof(name));
   strcpy(name, "豫让");
   printf("我的姓名是%s。\n",name);

6、输出多个内容

    int age=18;
   char xb='x';
   double weight=62.5;
    char name[21];
   memset(name,0,sizeof(name));
   strcpy(name, "豫让");
   printf("我的姓名是:%s,姓别:%c,年龄:%d岁,体重%lf公斤。\n",name,xb,age,weight);

注意,printf函数第一个参数(格式化字符串)的格式与后面的参数列表(常量或变量的列表)要一一对应,一个萝卜一个坑的填进去,不能多,不能少,顺序也不能错,否则会产生意外的结果。

7、示例(book12.c)

   注意,不要在scanf的格式化字符串的最后加\n。

1、输入整数

   在输入数据之前,一般要先输出一句话提示用户。下同。

   int age=0;
   printf("请输入你的年龄:");   // 提示文字不要换行,让用户在后面输入,下同。
   scanf("%d",&age);     // 在变量名前要加符号&,先不要问原因,以后再介绍。

2、输入字符
输入字符的格式用%c表示,在参数中列出字符型变量名,用于保存输入的数据。

    char xb=0;
    printf("请输入你姓别:");
    scanf("%c",&xb);     // 在变量名前要加符号&

3、输入浮点数
输入浮点数的格式用%lf表示,在参数中列出浮点型变量名,用于保存输入的数据。

   double weight=62.5;
   printf("请输入你体重:"); 
    scanf("%lf",&weight);     // 在变量名前要加符号&。

3、输入字符串
输入字符串的格式用%s表示,在参数中列出字符串变量名,用于保存输入的数据。

    char name[21];
   memset(name,0,sizeof(name));
   printf("请输入你姓名:");
   scanf("%s",name);     

5、输入多个内容
调用一次scanf函数可以输入多个数据,注意了,与单个数据的输入不同,多个数据的输入要等全部的数据输入完成后才按回车键。

   int age=0;
   char xb=0;
   double weight=0;
   char name[21];
   memset(name,0,sizeof(name));
   printf("请输入你的姓名、姓别(x-男;y-女),年龄和体重,中间用空格分隔:");
   scanf("%s %c %d %lf",name,&xb,&age,&weight);   // 只有name变量前没加&,其它的都加了。

scanf函数第一个参数(格式化字符串)的格式与后面的参数列表(变量的列表)要一一对应,一个萝卜一个坑的填进去,不能多,不能少,顺序也不能错,否则会产生意外的结果。

注意事项:
scanf函数只是在C程序基本知识的学习中才用到,在实际开发中基本上不用,所以我们只学习它最简单的用法。

   但是,printf不是一个函数,是一系列函数,功能强大,变化很多,应用广泛,极其重要,以后有特别的章节来学习它。

课后作业
编写示例程序,定义相关的变量,从键盘输入你喜欢的女(男)神的姓名、性别、年龄、身高、和你最喜欢她的身体部位,把输入的数据存放在变量中,然后在屏幕上把变量的值显示出来。
姓名用字符串变量存放。
性别用一个字符变量存放(x-男,y-女)。
年龄和身高用整数变量存放。
身体部位用字符串存放。

发布了61 篇原创文章 · 获赞 1 · 访问量 1395

猜你喜欢

转载自blog.csdn.net/qq_42622433/article/details/103800102