C语言20道编程题操作题示例

  • 格式:doc
  • 大小:72.50 KB
  • 文档页数:16

下载文档原格式

  / 16
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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;