题目描述读入两个字符串 s1 和 s2,比较这两个字符串。若 s1>s2,输出一个正数;若 s1=s2,输出 0;若 s1<s2,输出一个负数。输出的非零值应该是相比较的两个字符串第一个不相同位置的字符 ASCII 差值,例如”And”和”Aid”比较,根据第 2 个字符的比较结果,应输出 5。要求不要使用 strcpy 和 strcmp 函数。
输入两行字符串。保证每个字符串的长度不超过 100。
输出两个字符串的比较结果。请注意行尾输出换行。
样例输入12I am a program.I am not a program.
样例输出1-13
提示123456789101112131415161718#include<iostream>using namespace std;int main() { int d=0,i; char s1[100]; char s2[100]; cin.getline(s1,sizeof(s1)); cin.getline(s2,sizeof(s2)); for(i=0; d==0||i<100; ...
题目描述编写一个函数,由实参传来一个字符串,统计这个字符串中字母、数字、空格和其他字符的个数。在主函数中输入字符串,并在主函数中输出上述结果。
输入一行字符,可能包含空格。保证字符串的长度不超过 100。
输出分别输出这行字符中的英文字母、空格、数字和其他字符的个数,用空格隔开。请注意行尾输出换行。
样例输入1What are you doing? 123456
样例输出115 6 4 1
提示答案1234567891011121314151617#include<iostream>using namespace std;void count(string str){ int a(0),b(0),c(0),d(0); for(int i=0;i<str.length();i++){ if(str[i]>='A'&&str[i]<='z') a++; else if(str[i]>='0'&&str[i]<='9 ...
题目描述给定两个一维数组,分别内含 n 个和 m 个学生的成绩,分别求出其平均成绩并输出。
输入第一行有两个用空格隔开的整数 n 和 m,表示分别有 n 个和 m 个学生。第二行有 n 个用空格隔开的实数,表示 n 个学生的成绩。第三行有 m 个用空格隔开的实数,表示 m 个学生的成绩。保证 n 和 m 均不超过 50,且所有成绩大于等于 0 且小于等于 100。
输出两个用空格隔开的实数,分别为第一组的 n 个学生和第二组的 m 个学生的平均成绩,小数点后保留 2 位小数。请注意行尾输出换行。
样例输入12310 5100 56 78 98.5 76 87 99 67.5 75 9798 85 79 80.5 99.5
样例输出183.40 88.40
提示12345678910111213141516171819#include<iostream>using namespace std;float average(float *p,int x){ float sum=0; for(int i=0;i<x;i++,p++) sum+ ...
题目描述求 N 以内(包括 N)的素数。(N<=100000)
输入N
输出N 以内的所有素数,一个素数占一行。
样例输入1100
样例输出123456789101112131415161718192021222324252357111317192329313741434753596167717379838997
提示123456789101112131415161718#include<iostream>#include<cmath>using namespace std;void outPrime(int a){ int i,j; for(i=2;i<=a;i++){ for(j=2;j<=sqrt(i);j++) if(i%j==0) break; if(j>sqrt(i)) cout<<i<<endl; }}int main(){ int n; cin>>n; outPrime(n); return 0;}
题目描述输入一个正整数 n,定义一个包含 n 个元素的动态一维数组 a(int 型),键盘依次输入 n 个元素。将数组中的元素循环右移,即:a[0]移到 a[1],a[1 移到 a[2],……,a[n-1] 移到 a[0]。然后输出数组各元素。
输入输入:元素个数 n 以及这 n 个元素
输出输出:重新存放的 n 个元素(各元素之间有一个空格)
样例输入1281 3 5 7 2 4 6 9
样例输出19 1 3 5 7 2 4 6
提示123456789101112131415#include<iostream>using namespace std;int main() { int n,x; cin>>n; int a[n]; for(int i=0;i<n;i++) cin>>a[i]; x=a[n-1]; for(int i=n;i>0;i--) a[i]=a[i-1]; a[0]=x; for(int i=0;i<n;i++) cout<<a[i]<<' ';& ...
题目描述给定字符串定义 char *a = “I love China!”,读入整数 n,输出在进行了 a = a + n 这个赋值操作以后字符指针 a 对应的字符串。
输入一个整数 n,保证 0<=n<13.
输出输出进行了题目描述中赋值操作之后 a 对应的字符串。请注意行尾输出换行。
样例输入17
样例输出1China!
提示12345678910111213#include<iostream>using namespace std;int main() { char *a="I love China!"; int n; cin>>n; a=a+n; while(*a) { putchar(*a); a++; } cout<<endl;}
题目描述写两个函数,分别求两个整数的最大公约数和最小公倍数。用主函数分别调用这两个函数,并输出结果。
输入两个用空格隔开的正整数,保证二者的值均不超过 10000。
输出输出两个正整数的最大公约数和最小公倍数,用空格隔开。请注意行尾输出换行。
样例输入124 10
样例输出12 120
提示1234567891011121314151617181920#include<iostream>using namespace std;int max(int x,int y){ int z=y; while(x%y!=0) z=x%y,x=y,y=z; return z;}int min(int x,int y){ int c=x,d=y; int z=y; while(x%y!=0) z=x%y,x=y,y=z; return c*d/z;}int main(){ int a,b; cin>>a>>b; cout<<max(a,b ...
题目描述给出年、月、日,使用一个函数计算出该日是该年的第几天。
输入只有一行,包含三个正整数分别表示年、月、日。保证年份在 0 至 3000 之间,且月、日信息符合规则。
输出输出该日是该年的第几天。请注意行尾输出换行。
样例输入12013 2 10
样例输出141
提示答案12345678910111213141516#include<iostream>using namespace std;void coutDays(int y,int m,int d){ int sum=0; int days[]={31,28,31,30,31,30,31,31,30,31,30,31}; if(y%4==0&&y%100!=0||y%400==0) days[1]=29; for(int i=0;i<m-1;i++) sum+=days[i]; cout<<sum+d<<endl;}int main(){ int y,m,d; cin>>y>>m>& ...
题目描述2008 年北京奥运会,A 国的运动员参与了 n 天的决赛项目(1≤n≤17)。现在要统计一下 A 国所获得的金、银、铜牌数目及总奖牌数。
输入输入 n + 1 行,第 1 行是 A 国参与决赛项目的天数 n,其后 n 行,每一行是该国某一天获得的金、银、铜牌数目,以一个空格分开。
输出输出 1 行,包括 4 个整数,为 A 国所获得的金、银、铜牌总数及总奖牌数,以一个空格分开。
样例输入123431 0 33 1 00 3 0
样例输出14 4 3 11
提示123456789101112131415161718#include<iostream>using namespace std;int main(){ int x,gol(0),sil(0),cop(0),sum(0); cin>>x; int a[x][3]; for(int i=0;i<x;i++) for(int j=0;j<3;j++) cin>>a[i][j]; for(int i=0;i<x;i++){ gol+=a[i] ...
题目描述输出杨辉三角形的前 n 行。
输入第一行有一个正整数 n,保证 n 不超过 20。
输出共有 n 行,从第 1 行至第 n 行,每行输出与行数相等个数的整数,整数后输出一个空格。请注意行尾输出换行。
样例输入16
样例输出12345611 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1
提示123456789101112131415161718192021#include<iostream>using namespace std;int main() { int n,i,j; cin>>n; int a[n][n]; for(i=0; i<n; i++) { a[i][i]=1; a[i][0]=1; } for(i=2;i<n;i++) for(j=1;j<i;j++) a[i][j]=a[i-1][j-1]+a[i-1][j]; for(i=0;i<n;i++){ for(j=0;j<=i;j++) cout<<a[i][j] ...