八月你好_我们八月见pdf

八月你好_我们八月见pdf今日三题(仅供自己学习)2029.Palindromes_easyversion第一个和最后一个比,第二个和倒数第二个比#includeiostream#includestringusingnamespaces

今日三题(仅供自己学习)

2029.Palindromes _easy version

在这里插入图片描述

第一个和最后一个比,第二个和倒数第二个比

#include <iostream>
#include<string>
using namespace std;
int main(){ 
   
	int n,i,k,flag;
	string s;
	cout<<"请输入个数:\n"<<endl;
	cin>>n;
	while(n--){ 
   
		cin>>s;
		k=s.length();        //s.size()
		flag=1;
		for(i=0;i<k;i++){ 
   
			if(s[i]!=s[k-1])       //注意最后一个的下标
				flag=0;
			k--;
		}
		if(flag==0)
			cout<<"no"<<endl;
		if(flag==1)
			cout<<"yes"<<endl;
	}

	return 0;
}

在这里插入图片描述

2030.汉字统计

在这里插入图片描述

1.把显示的字符除去得汉字 。注意计算机汉字用两个字节表示


#include <iostream>
#include<cstring>
using namespace std;
int main(){ 
   
	int n,i,k;
	char s[100];
	cin>>n;
	getchar();
	while(n--){ 
   
		int count=0;
		gets(s);
		k=strlen(s);
		for(i=0;i<k;i++){ 
   
			if((s[i]<32)||(s[i]>126))    //ASCII码能显示出来的字符
				count++;
			
		}
		cout<<count/2<<endl;
	}
	return 0;
}

2.相当于汉字的ASCII码<0

  • 英文标准的ASCII码中只有128个符号,只需要7位,但是计算机分配存储的最基本单位是字节,至少是8位,因此最高位为0;因此常见的西文符号的ASCII都是在0-127之间,无论是有符号还是无符号去观察它们,都是正的。

  • 中文的符号远超过256个,因此用一个字节不能存储汉字,早期的GB2312采用了两个字节。但是很麻烦的问题是一个汉字用两个字节存储在计算机中后,和两个西文字母的ASCII混淆,为了避免这个混淆,汉字两个字节的最高位都是1。如果用有符号的数去读取一个汉字的内容,最高位的1正好和负号位置相同,因此此时就会发现汉字的内吗是负的。
    实质上汉字应该用字符型而不是整型去读取和显示它。


#include <iostream>
#include<cstring>
using namespace std;
int main(){ 
   
	int n,i,k;
	char s[100];
	cin>>n;
	getchar();
	while(n--){ 
   
		int count=0;
		gets(s);
		k=strlen(s);
		for(i=0;i<k;i++){ 
   
			if(s[i]<0)
				count++;
			
		}
		cout<<count/2<<endl;
	}
	return 0;
}

在这里插入图片描述

2032.杨辉三角

在这里插入图片描述

#include <iostream>
using namespace std;
int main(){ 
   
	int n,i,j,a[100][100];
	cin>>n;
		for(i=0;i<n;i++){ 
   
			for(j=0;j<=i;j++){ 
   
				if(j==0||i==j)
					a[i][j]=1;   //首末位置为1
				else
					a[i][j]=a[i-1][j-1]+a[i-1][j];   //找位置规律
				cout<<a[i][j]<<endl;
				
			}
			cout<<'\n'<<endl;
		}
		cout<<'\n'<<endl;
	return 0;
}

在这里插入图片描述
每天的小愿望就是希望能够有进步。
八月了,继续加油。

p:汉诺塔问题

#include<stdio.h>
void move(int n,char a,char b,char c){ 
   
	if(n==1)
		printf("a->c");
	else{ 
   
		move(n-1,a,c,b);
		printf("a->c");
		move(n-1,b,a,c);
	}
}
void main(){ 
   
	int n;
	scanf("%d",&n);
	move(n,'a','b','c');
	
}

今天的文章八月你好_我们八月见pdf分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/85155.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注