ImageVerifierCode 换一换
格式:DOC , 页数:12 ,大小:68KB ,
资源ID:9661136      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-9661136.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言程序设计习题试题(编程题).doc)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

C语言程序设计习题试题(编程题).doc

1、1C 语言程序设计习题(编程类)1、从键盘输入任意的字符,按下列规则进行分类计数。第一类 0,1 ,2,3,4,5,6 ,7,8,9第二类 +,-,*,/,%,=第三类 其它字符当输入字符时先计数,然后停止接收输入,打印计数的结果。参考答案:#include void main( ) int class1, class2, class3;char ch;class1=class2=class3=0; /* 初始化分类计数器 */do ch=getch( );switch(ch) case 0: case 1: case 2: case 3: case 4:case 5: case 6: cas

2、e 7: case 8: case 9:class1+; break; /* 对分类计数 */case +: case -: case *: case /: case %: case =:class2+; break; /* 对分类计数 */default: class3+; break; /* 对分类计数 */while (ch!= ); /* 字符在 C 程序中要使用转义符 */printf(“class1=%d, class2=%d, class3=%dn“, class1, class2, class3);2、从键盘输入十个整数,用插入法对输入的数据按照从小到大的顺序进行排序,将排序后

3、的结果输出。参考答案:void main( ) int i,j,num,a10;for(i=0; i=0&ajnum ; j-)aj+1=aj;aj+1=num;for(i=0; i0) printf(“%d“,n%10);n=n/10; 4、编写程序,读入一个整数;若为非负数,则计算到 2之间的整数和;若为一个负数,则求到之间的整数和。分别利用 for 和 while 写出两个程序。参考答案:void main() int i,n;long s1=0,s2=0;printf(“Please enter N:“);scanf(“%d“,&n);if(n=0)for(i=n; i=2*n;i-)

4、s1=s1+i;i=n;if(i=0)while(i=2*n)s2=s2+i-;printf(“Result1=%ld result2=%ldn“,s1,s2);5、一个自然数被 8 除余 1,所得的商被 8 除也余 1,再将第二次的商被 8 除后余 7,最后得到一个商为。又知这个自然数被 17 除余 4, 所得的商被 17 除余 15,最后得到一个商是的2 倍。编写程序求这个自然数。参考答案:void main( ) int i,n,a;for(i=0; ;i+) if(i%8=1) n=i/8;3if(n%8=1) n=n/8;if(n%8=7) a=n/8;if(i%17=4) n=i/

5、17;if(n%17=15) n=n/17;if(2*a=n) printf(“result=%dn“,i);break;6、编写程序,输出用一元人民币兑换成 1 分、2 分和 5 分硬币的不同兑换方法。参考答案:void main( ) int f1,f2,f5,count=0;for(f5=0;f5 5: %4d 2: %2d 1: %2dn“,+count,f5,f2,f1); 7、将一个数的数码倒过来所得到的新数叫原数的反序数。如果一个数等于它的反序数,则称它为对称数。求不超过 1993 的最大的二进制的对称数。参考答案:void main() int i,j,n,k,a16=0;fo

6、r(i=1; i0) /* 将十进制数转变为二进制数 */ ak+=n%2;n=n/2;for(j=0; j=k)4 printf(“ %d: “,i);for(j=0; jajj) j=i;printf(“SUN=%dnACCOM=%dna%d=%dn“,s1,s2,j,ajj); 10、编写程序,以字符形式输入一个十六进制数,将其变换为一个十进制整数后输出。参考答案:#include “stdio.h“void main() int i,n=0,a4=0;printf(“Please enter a digit:“);for(i=0; i=48&ai=65&ai=97&ai0) /* 将十

7、进制数转变为二进制数 */ a-k=n%2;n=n/2;6for(i=0; i=10;t+) at=(i%k)/(k/10);7k/=10;if(f(a0)+f(a1)+f(a2)=i)printf(“%d “,i);f(m)int m; int i=0,t=1;while(+ibj)ck+=bj+; /* 将 ai、bj中的小者存入 ck */else ck+=ai+; 8if(ai-1=bj) j+; /* 如果 a、b 当前元素相等,删掉一个 */while(i0) ak=n%2;turn(n/2,a,k-1);else return;void main() int i,n,a16=0;

8、printf(“nPlease enter n:“);scanf(“%d“,&n);turn(n,a,15);for(i=0; i=q)printf(“YESn“);19、编写程序,其中包括一个函数,此函数的功能是:对一个长度为 N 的字符串从其第 K 个字符起,删去 M 个字符,组成长度为 N-M 的新字符串 (其中 N、M=p)*(q+1)=*q-;*+q=*s2+;p+;21、编写程序将输入的两行字符串连接后,将串中全部空格移到串首后输出。参考答案:strcnb(s1,s2)char s1,s2; char *p;int i=1;p=s1;while(*p!=0) p+;while(*p

9、+=*s2+)!=0) ; /* 将 s2 接于 s1 后面 */p=s1;while(*p!=0) /* 扫描整个字符串 */ if(*p= ) /* 当前字符是空格进行移位 */ while(*(p+i)= ) i+; /* 寻找当前字符后面的第一个非空格 */if(*(p+i)!=0) *p=*(p+i); /* 将非空格移于当前字符处 */*(p+i)= ; /* 被移字符处换为空格 */11else break; /* 寻找非空格时到字符串尾,移位过程结束 */p+;22、编写程序,输入字符串,分别统计字符串中所包含的各个不同的字符及其各自字符的数量。如:输入字符串: abcedab

10、cdcd则输出:a=2 b=2 c=3 d=3 e=1。参考答案:#include “stdio.h“struct strnum int i;char ch;void main( ) char c;int i=0,k=0;struct strnum s100=0,NULL;while(c=getchar()!=n) for(i=0;si.i!=0 ;i+) if(c=si.ch) si.i+;break;if(si.i=0) sk.ch=c;sk+.i=1;i=0;while(si.i0) printf(“%c=%d “,si.ch,si.i);i+;23、编写程序,读入磁盘上语言源程序文件“

11、test8.c“,删去程序中的注释后显示。参考答案:#include “stdio.h“ FILE *fp;void main( ) int c, d;if(fp = fopen(“d:tctest8.c“,“r“) = NULL)exit(0);12while(c=fgetc(fp) != EOF)if( c=/ ) /* 如果是字符注释的起始字符 / */if(d=fgetc(fp) = *) /* 则判断下一个字符是否为* */in_comment(); /* 调用函数处理( 删除)注释 */else /* 否则原样输出读入的两个字符 */ putchar(c);putchar(d);e

12、lseif( c= | c=“) /* 判断是否是字符或“ */ echo_quote(c); /* 调用函数处理字符或“包含的字符 */ else putchar(c); in_comment() int c, d;c=fgetc(fp);d=fgetc(fp);while( c!=* | d!=/ ) /* 连续的两个字符不是 * 和 / 则继续处理注释 */c = d;d = fgetc(fp);echo_quote (c)int c; /* c 中存放的是定界符或“ */ int d;putchar(c);while( d=fgetc(fp)!=c) /* 读入下一个字符判断是否是定界符 c */ putchar(c); /* 当不是定界符 c 时继续循环 */if(d=) /* 若出现转义字符 */putchar( fgetc(fp); /* 则下一个字符不论是何均原样输出 */putchar(d);

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报