C语言20道编程题操作题示例
- 格式:doc
- 大小:72.50 KB
- 文档页数:16
1.题目标题:
四位反序数
题目描述:
设N是一个四位数,它的n倍恰好是其反序数(例如:123的反序数是321),编程,输出一个满足条件的N。(知识点:控制语句)
输入描述:
输入为一个整形数n(2<=n<=9)
输出描述:
输出为一个四位数的整形数
样式输入:
9
样式输出:
1089
#include
main()
{
int n,g,s,b,q,i;
scanf("%d",&n);
for(i=1000;i<10000;i++)
{
q=i/1000;
b=i/100%10;
s=i/10%10;
g=i%10;
if(i*n==q+b*10+s*100+g*1000)
printf("%d\n",i);
}
}
2. 题目标题:
年龄分组
题目描述:
统计各年龄段的人数。N(N=20)个年龄通过键盘输入,并放在age数组中;要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中, 把20至29岁年龄段的人数放在d[2]中, 其余依此类推, 把100岁 (含100)以上年龄的人数都放在d[10]中。依次输出d[0]至d[10]。
输入描述:
输入为20个正整数;
输出描述:
输出为11个正整数;
样式输入:
1 2 11 12 22 23 33 34 44 45 55 56 66 67 68 88 99 100 101 102 样式输出:
2 2 2 2 2 2
3 0 1 1 3
#include
main()
{
int i,age[20],d[11]={0};
for(i=0;i<20;i++)
scanf("%d",&age[i]);
for(i=0;i<20;i++)
switch(age[i]/10)
{
case 0: d[0]++; break;
case 1: d[1]++; break;
case 2: d[2]++; break;
case 3: d[3]++; break;
case 4: d[4]++; break;
case 5: d[5]++; break;
case 6: d[6]++; break;
case 7: d[7]++; break;
case 8: d[8]++; break;
case 9: d[9]++; break;
default: d[10]++; break;
}
for(i=0;i<=10;i++)
printf("%d\n",d[i]);
}
3.题目标题:
求三个整数的最大公约数
题目描述:
对任意三个整数,求它们的最大公约数
输入描述:
三个整数a,b,c
输出描述:
a,b,c的最大公约数
样式输入:
4 24 32
样式输出:
4
#include
int gcd(int n,int m)
{
if(m==0) return n;
return gcd(m,n%m);
}
int main()
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
printf("%d",gcd(gcd(x,y),z));
return 0;
}
4.题目标题:
发放奖金
题目描述:
某车间按工人加工零件的数量发放奖金,奖金分为五个等级:每月加工零件数N < 100者奖金为10元;100 < = N < 110者奖金为30元;110 < = N <120 者奖金为50元;120 < = N <130 者奖金为70元;N > 130者奖金为80元。请编程,由键盘输入加工零件数量,显示应发奖金数。
输入描述:
输入10个加工零件数量,数量小于400.
输出描述:
对每一个加工零件个数,输出应发奖金数,每个奖金数之间用空格隔开
样式输入:
85 85 85 85 85 85 85 85 85 85
样式输出:
10 10 10 10 10 10 10 10 10 10
#include
main()
{
int a[10],i,k;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
{
k=a[i]/10;
if(k<10) a[i]=10;
else
switch(k)
{
case 10: a[i]=30; break;
case 11: a[i]=50; break;
case 12: a[i]=70; break;
default: a[i]=80; break;
}
}
printf("%d",a[0]);
for(i=1;i<10;i++)
printf(" %d",a[i]);
return 0;
}
5.题目标题:
矩阵计算
题目描述:
求一个3*3矩阵对角线元素之和。
输入描述:
按行输入9个整数。
输出描述:
对角线元素之和
样式输入:
1 2 3 4 5 6 7 8 9
样式输出:
15
#include
int main()
{
int a[3][3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("%d",a[0][0]+a[1][1]+a[2][2]); return 0;