c++第一个小程序

在这里插入图片描述
c语言版

#include <stdio.h>

void main()
{
    
    
	int i;
	int sum=0;
	char ch;
	printf("请输入一串整数和任意数目的空格:");
	while(scanf("%d",&i)==1)//有输入时返回值为1
	{
    
    
		while((ch=getchar())==' ') ;//屏蔽空格。将字符取出送给ch,如果是空格,就什么也不执行,如果不是空格就执行下面的语句
		sum+=i;//求和
		if(ch=='\n') //如果ch是enter 则退出循坏
		{
    
    
			break;
		} 
		
		ungetc(ch,stdin);//将变量ch存放的字符退回给stdin输入流 
		//如输入22 33 33 44 ch一次只获取一位字符,22  3,当ch=第二个空格时什么也不执行,然后ch=3,会让i=3,而不是33
	} 
	printf("结果是:%d\n",sum);
	
	
} 

在这里插入图片描述解释语句—调试
ungetc(ch,stdin);//将变量ch存放的字符退回给stdin输入流
在这里插入图片描述如果没有这条语句
会是这样
22+3+3+4=32
因为第一个数会因为判断ch是否为空格吞掉
键盘输入的数据存放在stdin中,所以在把吞掉的数据返还回去就行了

#include<iostream>

using namespace std;
int main()
{
    
    
	int sum=0;
	cout<<"请输入一串整数和任意数目的空格:";
	int i;
	while(cin>>i)
	{
    
    
		sum+=i;
		while(cin.peek()==' ')
		{
    
    
			cin.get();
		}
		if(cin.peek()=='\n')
		{
    
    
			break;
		}
	} 	
	cout<<"结果是:"<< sum << endl;
	return 0;	
}

c++小程序举例:
cin的用法

#include<iostream>

using namespace std;
int main()
{
    
    
	char buf[20];//只能存储19个字符,最后一个以0填充 
	
	cin.ignore(7);//忽略前七个字符
	cin.getline(buf,10);//只取9个字符,最后一位是\0
	
	cout<<buf<<endl;
	 
	return 0;	
}

在这里插入图片描述第二个
在这里插入图片描述在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43033547/article/details/102485070