写在前面:作为一只小白,感谢小甲鱼老师提供这么好的入门课程。因此在这里做个笔记,如有侵权请联系删除。
www.fishc.com
上一节课后题代码
#include <stdio.h>
/* 对一个整型数组求和 */
int addArray(int array[], int n);
int main()
{
int data[] = {1,2,4,5,6,7,9,10};
int size = sizeof(data) / sizeof(int);
//int size = sizeof(data) / sizeof(data[0]);
printf("结果是: %d\n", addArray(data, size)); //data作为数组的首地址
return 0;
}
int addArray(int array[], int n)
{
int sum = 0;
int i;
for (i=0; i<n; i++)
{
sum += array[i];
}
return sum;
}
C++版本
#include <iostream>
using namespace std;
int main()
{
int sum = 0;
cout << "请输入一串整数和任意数目的空格: " << endl;;
int i;
while (cin >> i)
{
sum += i;
while (cin.peek() == ' ') //屏蔽空格
{
cin.get();
}
if (cin.peek() == '\n')
{
break;
}
}
cout << "结果是: " << sum << endl;
}
1、使用了流对象cin, ">>"最初定义为右移操作符,对所有内建的数据类型都进行了重载,所以它可以从输入流对象提取出int,float,double型数据,也可以提取字符串等数据.
2、cin cout对象的多个方法
cin.ignore(n, ch); 忽略前n个字符
cin.getline(str, n, ch); 从输入流从接收n个字符到str变量中,只能读取一行的内容
cin.peek(); 取得输入流中的第一个字符进行其他操作如比较,但是不影响输入流中的数据。
cin.get(); 从输入流中读取一个字符,输入流的数据被取走。
cin.gcount(); 获取一个字符变量中包括空白字符的个数
cin.read(buf, 20); 读取前20个字符到buf中, 不限定行数直到到达结束标志为止。
cout.precision(n); 设置精度为n
cout.width(); 将显示当前的字段宽度,默认为0,默认是右对齐的方式,就是说如果当前数据宽度不够n那么剩余的位置就要在左端用空格补全。
cout.fill(ch); 用ch来替代原有的填充字符
观察发现两个程序的不同之处:
c和c++事实上在声明变量时有点不同,c++允许我们在程序的任意位置声明变量.这大大提高了大型c++程序的可读性,因为这样我们就可以在实际需要使用变量的时候才来声明他们.