资源描述:
《C语言程序设计习题试题(编程题).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.C语言程序设计习题(编程类)1、从键盘输入任意的字符,按下列规则进行分类计数。 第一类'0','1','2','3','4','5','6','7','8','9' 第二类'+','-','*','/','%','=' 第三类其它字符当输入字符''时先计数,然后停止接收输入,打印计数的结果。参考答案:#includevoidmain(){intclass1,class2,class3;charch;class1=class2=class3=0;/*初始化分类计数器*/do{ch=getch();switch(ch){case'0':ca
2、se'1':case'2':case'3':case'4':case'5':case'6':case'7':case'8':case'9':class1++;break;/*对分类1计数*/case'+':case'-':case'*':case'/':case'%':case'=':class2++;break;/*对分类2计数*/default:class3++;break;/*对分类3计数*/}}while(ch!='\');/*字符''在C程序中要使用转义符'\'*/printf("class1=%d,class2=%d,class3=%d",class1,
3、class2,class3);}2、从键盘输入十个整数,用插入法对输入的数据按照从小到大的顺序进行排序,将排序后的结果输出。参考答案:voidmain(){inti,j,num,a[10];for(i=0;i<10;i++){printf("EnterNo.%d:",i+1);scanf("%d",&num);for(j=i-1;j>=0&&a[j]>num;j--)a[j+1]=a[j];a[j+1]=num;}for(i=0;i<10;i++)printf("No.%d=%d",i+1,a[i]);}精选word范本!.3、输入一个正整数,要求以相反的顺序输出该数。例
4、如输入12345,输出位54321。参考答案:voidmain(){intn;printf("Pleaseentern:");scanf("%d",&n);while(n>0){printf("%d",n%10);n=n/10;}}4、编写程序,读入一个整数N;若N为非负数,则计算N到2×N之间的整数和;若N为一个负数,则求2×N到N之间的整数和。分别利用for和while写出两个程序。参考答案:voidmain(){inti,n;longs1=0,s2=0;printf("PleaseenterN:");scanf("%d",&n);if(n>=0)for(i=n;i<=2
5、*n;i++)s1=s1+i;elsefor(i=n;i>=2*n;i--)s1=s1+i;i=n;if(i>=0)while(i<=2*n)s2=s2+i++;elsewhile(i>=2*n)s2=s2+i--;printf("Result1=%ldresult2=%ld",s1,s2);}5、一个自然数被8除余1,所得的商被8除也余1,再将第二次的商被8除后余7,最后得到一个商为a。又知这个自然数被17除余4,所得的商被17除余15,最后得到一个商是a的2倍。编写程序求这个自然数。参考答案:voidmain(){inti,n,a;for(i=0;;i++){if(i
6、%8==1){n=i/8;精选word范本!.if(n%8==1){n=n/8;if(n%8==7)a=n/8;}}if(i%17==4){n=i/17;if(n%17==15)n=n/17;}if(2*a==n){printf("result=%d",i);break;}}}6、编写程序,输出用一元人民币兑换成1分、2分和5分硬币的不同兑换方法。参考答案:voidmain(){intf1,f2,f5,count=0;for(f5=0;f5<=20;f5++)for(f2=0;f2<=(100-f5*5)/2;f2++){f1=100-f5*5-f2*2;if(f5*5+
7、f2*2+f1==100)printf("No.%2d>>5:%4d2:%2d1:%2d",++count,f5,f2,f1);}}7、将一个数的数码倒过来所得到的新数叫原数的反序数。如果一个数等于它的反序数,则称它为对称数。求不超过1993的最大的二进制的对称数。参考答案:voidmain(){inti,j,n,k,a[16]={0};for(i=1;i<=1993;i++){n=i;k=0;while(n>0)/*将十进制数转变为二进制数*/{a[k++]=n%2;n=n/2;}for(j=0;