第一题
利用循环结构,输入打印图形的行数,打印显示出如下“图形”。
3
1
131
13531
#include<iostream>
using namespace std;
int main(){
int lines;
cin>>lines;
for (int line=0; line<lines; line++){
int a=1;
for (;a<line*2+1;a+=2){
cout<<a;
}
for (;a>=1;a-=2){
cout<<a;
}
cout<<endl;
}
}
第二题
某商店出售四种商品: A商品每公斤2.75元;B商品每个12.5 元;C商品每米26.8 元;D商品每台512元,超过3台优惠10%,超过8台优惠15%。设计一个计算价格的程序,通过输入购买四种商品的数量,计算并显示每种商品应付金额以及总金额。
#include<iostream>
using namespace std;
int main(){
float a,b,c,d;
cin>>a>>b>>c>>d;
if (d>8) d*=0.85;
else if (d>3) d*=0.90;
cout<<"A:"<<2.75*a<<endl;
cout<<"B:"<<12.5*b<<endl;
cout<<"C:"<<26.8*c<<endl;
cout<<"D:"<<512*d<<endl;
cout<<"total:"<<2.75*a+12.5*b+26.8*c+512*d<<endl;
}
第三题
求n以内被3除余1且个位数为6的所有整数(如16、46、...、286等)并显示在屏幕上。
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
for (int i=1; i<=n; i++){
if (i%3==1 && i%10==6){
cout<<i<<" ";
}
}
}
第四题
编写一程序统计参赛选手的得分,计分标准为去掉一个最高分和一个最低分后,对剩余得分求平均值。要求首先从键盘输入评委的个数num,然后输入num个分数(分数为小于等于10的一个正实数),输出最终得分。
#include<iostream>
using namespace std;
int main(){
int n;
float sum;
float min=0, max=10;
cin>>n;
for (int i=0; i<n; i++){
float temp;
cin>>temp;
if (temp>min){
min = temp;
}
if (temp<max){
max = temp;
}
sum+=temp;
}
cout<<(sum-max-min)/(n-2)<<endl;
}
第五题
设计一个程序,对于用户输入的任意正整数a(a≥1)和b(b≥2),求出满足b^n≤a的最大整数n。
#include<iostream>
using namespace std;
int main(){
int a,b,s=1;
int n=0;
cin>>a>>b;
while(1){
if (s>a) {
cout<<--n;
break;
}
n++;
s*=b;
}
}
第六题
给定一个十进制正整数N,请将其转换为十六进制并输出。输出N对应的十六进制,用数字 0~9 以及大写字母 A~F 来表示。
#include<iostream>
using namespace std;
int main(){
long n;
int list[100];
int i=0;
int j=0;
cin>>n;
while(1){
list[j] = n%16;
n=n/16;
j++;
if (n==0) break;
}
j--;
for (;j>=0; j--){
switch(list[j]){
case 10: cout<<'A'; break;
case 11: cout<<'B'; break;
case 12: cout<<'C'; break;
case 13: cout<<'D'; break;
case 14: cout<<'E'; break;
case 15: cout<<'F'; break;
default:
cout<<list[j];break;
}
}
}