大学C语言程序设计(编程题)

  • 格式:doc
  • 大小:98.50 KB
  • 文档页数:11

..

Word资料. C语言程序设计习题(编程题 C语言程序设计习题(编程题 习题1(编程题)[知识点:基础知识 编制程序,要求输入整数a和b,若a2+b2大于100,则输出a2+b2百位以上的数字,否则输出两数之和。 习题1-参考答案 main() printf("Input a & b:"); if (a*a+b*b>100)

printf("%d\n",(a*a+b*b)/100); else printf("%d\n",a+b); } 习题2(编程题)[知识点:基础知识 试编程判断输入的正整数是否既是5又是7的整数倍,若是输出yes,否则输出no。 习题2-参考答案 main() printf("Input a:"); if

(a%5==0&&a%7==0) printf("yes\n"); else printf("no\n"); } 习题3(编程题)[知识点:选择结构 输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一: (1)能同时被3,5,7整除 (2)能被其中两数整除(要指出哪两个)。 (3)能被其中一个数整除(要指出哪一个)。 (4)不能被任何一个整除。 习题3-参考答案 main() printf("Input a number:");

if(m%3==0&&m%5==0&&m%7==0) printf("能同时被3,5,7整除 else

if((m%3==0&&m%5==0)||(m%3==0&&m%7==0)||(m%5==0&&m%7==0))

{printf("能被其中两数整除 if(m%3==0&&m%5==0) printf("(3,5)"); else

if(m%3==0&&m%7==0) printf("(3,7)"); else printf("(5,7)"); else

if(m%3==0||m%5==0||m%7==0) {printf("能被其中一个数整除 C语言程序设计习题(编程题 if(m%3==0) printf("(3)"); else if(m%5==0)

printf("(5)"); else printf("不能被任何一个整除"); } 习题4(编程题)[知识点:选择结构 将以下程序段改用非嵌套的if语句实现。 int s,t,m;

t=(int)(s/10); {case 10:m=5;break; case 9:m=4;break; case 8:m=3;break;

case 7:m=2;break; case 6:m=1;break; default: m=0; 习题4-参考答案

if(s>=100&&s<110) m=5; if(s>=90&&s<100) m=4; if(s>=80&&s<90) m=3;

if(s>=70&&s<80) m=2; if(s>=60&&s<70) m=1; 习题5(编程题)[知识点:选择结构 用switch编程实现: -1 (x<0) 习题5-参考答案 void

main() {float x; printf("Input a x:"); scanf("%f",&x); switch(x<0) {case

1:y=-1;break; case 0:switch(x==0) {case 1:y=0;break; case

0:y=1; } printf("y=%d\n",y); } C语言程序设计习题(编程题 习题6(编程题)[知识点:选择结构 将以下程序段改用嵌套的if语句实现。

int s,t,m; t=(int)(s/10); {case:m=5;break; case 9:m=4;break; case

8:m=3;break; case 7:m=2;break; case 6:m=1;break; default: m=0; 习题6-参考答案 if(s>=110&&s<60) m=0 else if(s<110) m=5; else if(s<100) m=4;

else if(s<90) m=3; else if(s<80) m=2; else m=1; 习题7(编程题)[知识点:选择结构 编程实现以下功能:读入两个运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值,其中op可为+,-,*,/(用switch语句实现)。 习题7-参考答案 #include #include {float ..

Word资料. data1,data2,result; printf("Type in your expression:");

scanf("%f %c %f",&data1,&op,&data2); {case '+':result=data1+data2;break;

case '-':result=data1-data2;break; case '/':if(data2==0){printf("\nDivision

by zero!");exit(1);} result=data1/data2;break; printf("This

is %6.2f %c %6.2f=%6.2f\n",data1,op,data2,result); } 习题8(编程题)[知识点:选择结构 编一程序,对于给定的一个百分制成绩,输出相应的五分值成绩。设90分以上为'A',80-89分为'B',70-79分为'C',60-69分为'D',60分以下为'E'(用switch语句实现)。 习题8-参考答案 main() C语言程序设计习题(编程题 while(score>=0&&score<=100) { printf("Enter

score:"); scanf("%d",&score); temp=score/10; {case 0:case 1:case

2:case 3:case 4:case 5:grade='E';break; case 6:grade='D';break; case

7:grade='C';break; case 8:grade='B';break; case 9:case 10:grade='A';

printf("score=%d,grade=%c\n",score,grade); } 习题9(编程题)[知识点:循环结构 每个苹果0.8元,第一天买2个苹果,第二天开始买前一天的2倍,直至购买的苹果个数达到不超过100的最大值。编写程序求每天平均花多少钱。 习题9-参考答案 {int day=0,buy=2; float sum=0,ave;

{sum=sum+0.8*buy; day++;buy=buy*2; }while(buy<=100);

printf("average=%f\n",ave); } 习题10(编程题)[知识点:循环结构 编写程序,找出1至99之间的全部同构数。同构数是这样一组数:它出现在平方数的右边。例如,5是25右边的数,25是625右边的数,5和25就是同构数。 习题10-参考答案 main() if(i*i%10==i||i*i%100==i)

printf("%3d",i); } 习题11(编程题)[知识点:循环结构 编写程序,求一个整数任意次方的最后三位数。即求xy值的最后三位数,要求x,y从键盘输入。 习题11-参考答案 C语言程序设计习题(编程题

scanf("%d%d",&x,&y); for(i=1;i<=y;i++) printf("The last 3 digit of %d*%d

is:%d\n",x,y,s); } 习题12(编程题)[知识点:循环结构 编写程序,从键盘输入6名学生的五门成绩,分别统计出每个学生的平均成绩。 习题12-参考答案 main() float s,sum,ave; for(i=0;i<6;i++) for(j=1;j<=5;j++)

{scanf("%f",&s); sum=sum+s; } printf("No.%d

ave=%6.2f\n",i+1,ave); } } 习题13(编程题)[知识点:循环结构 从键盘输入若干个整数,其值在0至4围,用-1作为输入结束的标志。统计每个整数的个数。 习题13-参考答案 void main() printf("Input some

numbers(between 0 to 4):"); scanf("%d",&x); {if (x>=0&&x<=4) s[x]++;}

printf("%d: %d\n",i,s[i]); } 习题14(编程题)[知识点:数组 若有说明:int

a[2][3]={{1,2,3},{4,5,6}};现要将a的行和列的元素互换后存到另一个二维数组b中。请编写程序并输出a和b数组中的元素。 习题14-参考答案 {int ..

Word资料. a[2][3]={{1,2,3},{4,5,6}},b[3][2],i,j; printf("Array a:\n"); for(i=0;i<2;i++)

{for(j=0;j<3;j++) {b[j][i]=a[i][j]; printf("%3d",a[i][j]); C语言程序设计习题(编程题 printf("\n"); printf("Array b:"); for(i=0;i<3;i++)