在scanf里用*修饰符,是起到过滤读入的作用。比如一个有三列数值的数据,我只想得到第2列数值,可以在循环里用scanf(“%*d%d%*d”,a[i])来读入第i行的第2个数值到a[i]。 
       * 修饰符在printf中的含义完全不同。如果写成printf(“%6d”, 123),很多同学应该就不会陌生了,这是设置域宽的意思。同理,%6s也是域宽。* 修饰符正是用来更灵活的控制域宽。使用%*s,表示这里的具体域宽值由后面的实参决定,如printf(“%*s”,6, “abc”)就是把”abc”放到在域宽为6的空间中右对齐。

#include <bits/stdc++.h>
using namespace std; int main(){
char a[10] = "abcdefgh";
char b[20];
strcpy(b, a);
b[4] = 0; //可以作为结束符???
cout << strlen(b) << endl;
cout << a << endl;
cout << b << endl; int c, d;
scanf("%d%*c%d", &c, &d); //输入1a1会跳过a直接读入a,b
cout << c << " " << d << endl; printf("%*s", 10, "aa"); //与scanf中的星号作用不同,代表输出aa并且aa占用10位 return 0;
}

5.九数组分数

1,2,3...9 这九个数字组成一个分数,其值恰好为1/3,如何组法?
下面的程序实现了该功能,请填写划线部分缺失的代码。

  1. #include <stdio.h>
  2. void test(int x[])
  3. {
  4. int a = x[0]*1000 + x[1]*100 + x[2]*10 + x[3];
  5. int b = x[4]*10000 + x[5]*1000 + x[6]*100 + x[7]*10 + x[8];
  6. if(a*3==b) printf("%d / %d\n", a, b);
  7. }
  8. void f(int x[], int k)
  9. {
  10. int i,t;
  11. if(k>=9){
  12. test(x);
  13. return;
  14. }
  15. for(i=k; i<9; i++){
  16. {t=x[k]; x[k]=x[i]; x[i]=t;}
  17. f(x,k+1);
  18. _____________________________________________ // 填空处
  19. }
  20. }
  21. int main()
  22. {
  23. int x[] = {1,2,3,4,5,6,7,8,9};
  24. f(x,0);
  25. return 0;
  26. }

思路:f(x,k+1)回溯之后,将交换后的结果还原,所以复制题目中代码即可。

答案:{t=x[k]; x[k]=x[i]; x[i]=t;}

  

12-scanf("%*s")与printf("%*s")的更多相关文章

  1. scanf读入与printf输出

    作为一个资深$cin,cout$玩家,在多次因为$cin$太慢被吊打后,开始反思有必要认真地学一下$scanf$和$printf$了$\cdot \cdot \cdot$ 格式 $scanf( &qu ...

  2. scanf函数和printf函数

    C程序实现输出和输入的 主要是printf函数 和 scanf函数,这两个函数是格式输入输出 格式声明由%和格式字符组成 如%d,%f 格式字符:  d格式符:用来输出一个有符号的十进制整数  c格式 ...

  3. 在进行多次scanf时,printf输出错误

    随便一处代码,经过改正后,输出正确的 ''' #include <stdio.h> int main(){    int T;    scanf("%d",&T ...

  4. C++-cin与scanf cout与printf效率问题

    http://blog.csdn.net/l2580258/article/details/51319387 void cin_read_nosync() { freopen("data.t ...

  5. C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()

    本文给大家介绍C语言中最常用的三种输入输出函数scanf().printf().getchar()和putchar(). 一.scanf()函数格式化输入函数scanf()的功能是从键盘上输入数据,该 ...

  6. scanf printf gets() puts(),cin cout

    最近在练机试题,常用的C和C++输入输出如下: 1 scanf 和printf int a; scanf("%d",&a) ; printf("%d", ...

  7. printf()与 scanf()

    一直以来就没有认真看过控制台输入输出的格式,现今找了一些材料,分享如下: 1. 格式化规定符     Turbo C2.0提供的格式化规定符如下: ━━━━━━━━━━━━━━━━━━━━━━━━━━ ...

  8. C语言: 运算符,printf,scanf的用法

    运算符/的运算结果和运算对象的数据类型有关,两个数都是in,则商就是int,取整数部分:被除数和除数中只要有一个或两个都是浮点型数据,则商也是浮点型,不去掉小数部分如:16/5 == 3:16/5.0 ...

  9. printf与scanf的返回值、注意点

    printf()的返回值为其输出字符串常量的字符数(注意字符数与字数的区别)注意计数针对所有的打印字符,包括空格和不可见的换行字符(不包括字符串的空字符). scanf()函数返回成功读入的项目的个数 ...

  10. C语言中printf,scanf,puts,%%等输出格式

    #include<stdio.h> int main(void){    int a;    printf("请输入一个整数,程序求取他的最后一位数字:");    s ...

随机推荐

  1. cowboy实现websocket

    使用cowboy实现websocket主要实现以下回调函数 下面的函数返回值要具体弄清楚原因参考 websocket具体协议  主要就是两个部分 握手和数据传输 -export([init/3]).  ...

  2. Microsoft Office 2013 (64位) 免费完整版(安装 + 激活)

    Microsoft Office 2013(Office 15)是微软的新一代Office办公软件,全面采用Metro界面.Microsoft Office 2013官方下载(Office2013专业 ...

  3. asp.net core microservices 架构之Task 事务一致性 事件源 详解

    一 aspnetcore之task的任务状态-CancellationToken 我有一篇文章讲解了asp.net的线程方面的知识.我们知道.net的针对于多线程的一个亮点就是Task,net clr ...

  4. phpstorm2017.3.6的激活、样式设置和汉化

    一:安装phpstorm2017.3.6,并激活.设置样式.(1)先在phstorm官网里www.jetbrains.com下载phpstorm2017.3.6,按照步骤安装即可.下面开始激活!(2) ...

  5. php 两种或的区别 or ||

    php 两种或的区别 or || 实验代码. <?php $p = 999 or 1; var_dump($p); $q = 999 | 1; var_dump($q);

  6. css控制div下图片自适应解决方法:图片不超过最大宽度

    我们(特别是像我一样的菜鸟)经常会遇到一个问题——图片自适应.这个问题是很普遍的.在文章区,在论坛,可以这么说:哪儿需要上传图片,哪儿就存在这个问题,而论坛上也不时有人询问.为什么?原因很简单,我们不 ...

  7. J-Link在SWD模式与MCU能连接成功但不能读写

    今天在J-Link的排线末端引出3.3v.SWDIO.SWCLK.GND,连接到stm32上,发现只能连接成功,不能读和写,出现下面错误: - ERROR: RAM check failed @ ad ...

  8. QQ2008自动聊天精灵delphi源码

    QQ2008自动聊天精灵delphi源码   unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Grap ...

  9. rbenv配置

    git clone https://github.com/rbenv/rbenv.git ~/.rbenv # 用来编译安装 ruby git clone git://github.com/sstep ...

  10. SCSI, (P)ATA, SAS, NL-SAS and SATA, what’s the difference?

    Everybody needs storage space nowadays. Whether it is used for high performance computing or simply ...