【ACM培训第一课】 内容:标准C语言的输入输出 学时:一天 形式:抄代码+上机测试 |
dyy现在在学C++,可以说有一定基础了,不过对于C语言还是比较陌生的。个人觉得ACM入门并不需要对C语言了解太多,C语言和C++差别并不是很大,所以决定只讲解C语言的输入输出,其他的靠C++就ok了。
ACM中使用C语言的输入输出(cin,cout)会比C++的方式要快一点,因为C++的输入输出是带缓冲的(一般情况下带缓存不是更快吗= =),并且能智能地转换数据类型,个人觉得是智能数据类型转换这一特性导致C++的输入输出略慢于C语言。 有网友测试过了,在这儿。
1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int main() 5 { 6 printf("Hello world!\n");//字符串输出 7 printf("整数输出:%d\n", 1+2); //整数输出 8 printf("字符输出:%c\n", 'a'); //字符输出 9 printf("字符串输出:%s\n", "abcdefg"); //字符串变量输出 10 printf("小数输出:%lf\n", 1.2345678); 11 printf("保留3位小数输出:%.3lf\n", 1.2345678); 12 printf("这个故事告诉我们,整数用%%d输出,小数用%%lf输出。\n"); 13 14 //输入语句 15 int i; 16 char c; 17 double d; 18 char str[255]; 19 printf("\n请依次输入整数、字符、小数、字符串\n"); 20 scanf("%d", &i);//输入整数,注意取地址符“&” 21 getchar(); //这个语句的功能是获取一个字符,目的是吧上一次输入的回车给干掉 22 scanf("%c", &c);//输入字符 23 scanf("%lf", &d);//输入小数 24 scanf("%s", str);//输入字符串,注意,这里没有取地址符& 25 26 printf("整数输出:%d\n", i); //整数输出 27 printf("字符输出:%c\n", c); //字符输出 28 printf("字符串输出:%s\n", str); //字符串变量输出 29 printf("小数输出:%lf\n", d); 30 printf("保留3位小数输出:%.3lf\n", d); 31 return 0; 32 }
就是这些,要领悟确实不容易。