最近在练机试题,常用的C和C++输入输出如下:

1 scanf 和printf

int a; scanf("%d",&a) ; printf("%d",a);

printf("\n");

double b;scanf("%");

char c; scanf("%c",&c);printf("%c",c);

long int a; scanf("%ld",&a);printf("%ld",a); printf("%ld\n",a);

double b;
scanf("%lf",&b);
printf("%lf",b);
float a;
scanf("%f",&a);
printf("%f",a);

scanf("%s",s);//读入字符串,遇到空格就结束,故接受 i love you作为一个字符串,包含空格,需要用
 gets(s);
 是否有空格都可以用printf("%s",s);因为输出已\0结束的。也可以用下面的puts(s);

读入多个变量

scanf("%d %d",&high,&n);默认是空格分隔

如果scanf中%d是连着写的如“%d%d%d”,在输入数据是,数据之间不可以加逗号,只能是空格或tab键或者回车键——“2 3 4”/“2(按tab)3(按tab)4(按tab)”。若是“%d,%d,%d”,则在输入数据时需要加“,”——“2,3,4”.

也可以控制输出

printf("%d,%d",a,b); 输出a,b

printf("%d %d",a,b); 输出a b

2 gets()和puts()

char s[20]={'\0'};

gets(s),读入一个字符串,回车结束

puts(s);输出字符串。等同于 printf("%s",s);

3 cin和cout就不用说了。很熟悉

只说明一下读字符串

char s[10]="nfkshf";
cout<<s;
 char s[10];
 cin>>s;//遇到空格结束
 cout<<s;

想要读取i love you ,可以空cin.getline;

char s[N];
 cin.getline(s,N,'\n');//读N-1个字符或遇到换行结束。
 cout<<s;

4 while判断输入结束,标准控制台默认\n结束

例如:输入 12 34 14 67......89 回车

int a[20];
 while (cin>>a[i]&&cin.get()!='\n')
 {
    i++;
 }
 while (cin>>a[i])//读文件eof结束
 {
  i++;
 }

C 语言:

char c=' ';
    while(c!='\n')
 {
      scanf("%d%c",&a[i],&c);
      i++;
 }

5 string ,字符串操作可以用string的话就太方便了

4、getline()     // 接受一个字符串,可以接收空格并输出,需包含“#include<string>”

#include<iostream> #include<string> using namespace std; main () { string str; getline(cin,str); cout<<str<<endl; }

输入:jkljkljkl 输出:jkljkljkl

输入:jkl jfksldfj jklsjfl 输出:jkl jfksldfj jklsjfl

和cin.getline()类似,但是cin.getline()属于istream流,而getline()属于string流,是不一样的两个函数

scanf printf gets() puts(),cin cout的更多相关文章

  1. C语言——常用标准输入输出函数 scanf(), printf(), gets(), puts(), getchar(), putchar(); 字符串拷贝函数 strcpy(), strncpy(), strchr(), strstr()函数用法特点

    1 首先介绍几个常用到的转义符 (1)     换行符“\n”, ASCII值为10: (2)     回车符“\r”, ASCII值为13: (3)     水平制表符“\t”, ASCII值为 9 ...

  2. printf scanf cin cout的区别与特征

    printf和scanf是c语言的输入输出,学习c++以后,自然是用cin cout这两个更简单的输入输出 printf scanf 都需要进行格式控制,比较麻烦,但优点是速度比较快,毕竟多做了一些事 ...

  3. cin,cout,printf,scanf效率对比

    From:http://www.cnblogs.com/killerlegend/p/3918452.html Author:KillerLegend Date:2014.8.17 杭电OJ之3233 ...

  4. 8-cin cout PK scanf printf(速度快慢问题对比)

    我们在c++ 中使用cin cout很方便但速度很慢,导致有些题目用cin就超时而用scanf则就ac了,那到底改用谁? cin慢是有原因的,其实默认的时候,cin与stdin总是保持同步的,也就是说 ...

  5. PAT 甲级 1047 Student List for Course (25 分)(cout超时,string scanf printf注意点,字符串哈希反哈希)

    1047 Student List for Course (25 分)   Zhejiang University has 40,000 students and provides 2,500 cou ...

  6. C/C++ scanf和gets 区别 , printf和puts区别

    ref 1. scanf和gets区别 | 博客园 2. printf和puts区别 | CSDN scanf和gets都能从输入流stdin读取字符串,那么它们有什么区别呢? scanf 留回车:开 ...

  7. acdream B - 郭式树 (水题 卡cin,cout, 卡LL)

    题目 输入正好是long long的最大, 但是答案超long long 所以用unsigned, 不能用cin cout否则一定超时: 不能用abs(), abs 只用于整数. unsigned   ...

  8. scanf printf sprintf fprintf

    都是C语言中的函数,但C++保留了这些函数,在头文件iostream中声明了. 1 scanf(格式控制,输出列表) printf (格式控制,输出列表) 举例: #include <iostr ...

  9. [转] C/C++中printf和C++中cout的输出格式

    原文地址 一. Printf 输出格式 C中格式字符串的一般形式为: %[标志][输出最小宽度][.精度][长度]类型,其中方括号[]中的项为可选项.各项的意义介绍如下:1.类型类型字符用以表示输出数 ...

随机推荐

  1. R语言数据框小技巧

    当我们想要把数据框的行或者列按照指定的顺序排列时,可以通过行名称或者列名称快速排列 data <- data.frame(matrix(1:9, ncol=3)) rownames(data) ...

  2. linux drwxr-xr-x 是什么意思

    linux drwxr-xr-x 第一位表示文件类型.d是目录文件,l是链接文件,-是普通文件,p是管道 第2-4位表示这个文件的属主拥有的权限,r是读,w是写,x是执行. 第5-7位表示和这个文件属 ...

  3. Linux下设置SSH Server设置时间链接限制

    OpenSSH基于安全的理由,如果用户连线到SSH Server后闲置一段时间,SSH Server会在超过特定时间后自动终止SSH连线.本人习惯长时间连接,需要做如下修改: 1.打开ssh配置文件: ...

  4. C# Byte[]、Image、Bitmap 之间的相互转换

    //byte[] 转图片 public static Bitmap BytesToBitmap(byte[] Bytes) { MemoryStream stream = null; try { st ...

  5. 关于最近WIN7系统错误711的解决办法

    昨天晚上有发现部分用户反馈错误711,因为不在现场不清楚是怎么一回事,今天早上又有其他客户反馈他下面有4个用户发生711错误. 刚好在电脑边上,就拨号试下,结果我的也是711 这个711的症状是: 单 ...

  6. Jenkins入门知识

    1  修改jenkins的根目录,默认地在C:\Documents and Settings\AAA\.jenkins . .jenkins ├─jobs│  └─JavaHelloWorld│    ...

  7. Openlayers 3计算长度和面积

    1.比较粗糙的计算方式 计算长度 var length = lineFeature.getGeometry().getLength(); if (length > 1000) { length ...

  8. Base64编码——学习笔记

    Base64是一种编码方式. 非加密 chcp->936 编码流程: 位数不够后面补0,例中补了2个0. 末尾加=表示结束符. GB2312,有些敏感词不能显示. GBK,是GB2312升级版. ...

  9. c++String类的运算符重载---21

    原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/  一,创建测试程序包 测试代码如下: /* Date: 2017-5-4 * Descripti ...

  10. javascript拖拽操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...