欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C语言学习知识上机练习进步题.doc

    • 资源ID:2541551       资源大小:114.04KB        全文页数:11页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言学习知识上机练习进步题.doc

    -!1. 输入一个不超过五位的正整数,输出其逆数。例如输入12345,输出应为54321。#include "stdio.h"main() long n; int ww,qw,bw,sw,gw; printf("Please input:n"); scanf("%ld",&n); while(n<=0|n>99999) printf("nThe number is too little or too large.Retry please!n"); scanf("%ld",&n); if(n>=10000&&n<=99999) ww=n/10000; qw=n/1000%10; bw=n/100%10; sw=n/10%10; gw=n%10; printf("The old number is:%ldn",n); printf("The new number is:%d%d%d%d%dn",gw,sw,bw,qw,ww); else if(n>=1000&&n<=9999) qw=n/1000; bw=n/100%10; sw=n/10%10; gw=n%10; printf("The old number is:%ldn",n); printf("The new number is:%d%d%d%dn",gw,sw,bw,qw); else if(n>=100&&n<=999) bw=n/100; sw=n/10%10; gw=n%10; printf("The old number is:%ldn",n); printf("The new number is:%d%d%dn",gw,sw,bw); else if(n>=10&&n<=99) sw=n/10; gw=n%10; printf("The old number is:%ldn",n); printf("The new number is:%d%dn",gw,sw); else printf("The old number equals the new number:%ld",n); 2. 计算1+2+3+n的值,n是从键盘输入的自然数。/* Note:Your choice is C IDE */#include "stdio.h"main() int n,i; long sum=0; printf("1+2+3+.+nn"); printf("Please input n:n"); scanf("%d",&n); for(i=1;i<=n;i+) sum+=i; printf("sum=%ld",sum); 3. 从终端(键盘)读入20个数据到数组中,统计其中正数的个数,并计算这些正数之和。、/* Note:Your choice is C IDE */#include "stdio.h"#define N 20main()int aN,i,sum=0,count=0;printf("Please input numbers :n");for(i=0;i<N;i+)scanf("%d",&ai);if(ai>0)sum+=ai; count+;printf("count=%d,sum=%d",count,sum);4. 从终端(键盘)将5个整数输入到数组a中,然后将a逆序复制到数组b中,并输出b中各元素的值。/* Note:Your choice is C IDE */#include "stdio.h"#define N 5main()int aN,bN,i;printf("Please input numbers:n");for(i=0;i<N;i+)scanf("%d",&ai);bN-i-1=ai;printf("nThe old numbers are:n");for(i=0;i<N;i+)printf("%-4d",ai);printf("nThe new numbers are:n");for(i=0;i<N;i+)printf("%-4d",bi); 5. 要将五张100元的大钞票,换成等值的50元,20元,10元,5元一张的小钞票,每种面值至少1张,编程输出所有可能的换法,程序应适当考虑减少重复次数。/* Note:Your choice is C IDE */#include "stdio.h"main()int i,j,k,n;for(i=1;i<=10;i+)for(j=1;j<=25;j+)for(k=1;k<=50;k+)for(n=1;n<=100;n+)if(i*50+j*20+k*10+n*5=500)printf("num50=%d,num20=%d,num10=%d,num5=%dn",i,j,k,n);6. 求n以内(不包括n)同时能被3和7整除的所有自然数之和的平方根s,n从键盘输入。例如若n为1000时,函数值应为:s=153.909064。/* Note:Your choice is C IDE */#include "stdio.h"#include "math.h"main()int n,s,i;float sum=0;printf("Please input n:n"); scanf("%d",&n); while(n<=0) printf("nError input.Retry please:n"); scanf("%d",&n); for(i=1;i<n;i+) if(i%3=0&&i%7=0) sum+=i;printf("The number is:%4.2f",sqrt(sum);7. 一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙是数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索找出车号。/* Note:Your choice is C IDE */#include "stdio.h"#include "math.h"main() int i,qw,bw,sw,gw; for(i=1122;i<=9988;i+) if(sqrt(i)!=(int)sqrt(i) continue; qw=i/1000; bw=i/100%10; sw=i/10%10; gw=i%10; if(qw=bw&&sw=gw) printf("nThe number is:%dn",i); break; 8. 输入110之间的一个数字,输出它对应的英文单词。/* Note:Your choice is C IDE */#include "stdio.h"main()int n;printf("Please input n:n");scanf("%d",&n);while(n<1|n>10)printf("Error input!Retry please:n");scanf("%d",&n);switch(n)case 1:printf("One!");break;case 2:printf("Two!");break;case 3:printf("Three!");break;case 4:printf("Four!");break;case 5:printf("Five!");break;case 6:printf("Six!");break;case 7:printf("Seven!");break;case 8:printf("Eight!");break;case 9:printf("Nine!");break;case 10:printf("Ten!");break; 9. 个位数为6且能被3整除但不能被5整除的三位自然数共有多少个,分别是哪些?/* Note:Your choice is C IDE */#include "stdio.h"main() int i,count=0; for(i=106;i<596;i=i+10) if(i%3=0&&i%5!=0) printf("%-4d",i); count+; printf("count=%-4d",count);10. 用自然语言描述程序逻辑如下,试写程序。设置环境;定义变量i、j、s,以及用于放置结果的变量sum,并令sum初值为0;i=1;如果i100,则转,否则转;令s=0,求前i个自然数之和,并放于变量s之中;sum=sum+s;i增加1,转; 输出和sum,结束。/* Note:Your choice is C IDE */#include "stdio.h"main() int i,j; long s=0,sum=0; printf("1+1+2+1+2+3+1+2+3+4+.1+2+3+.+nn"); i=1; while(i<=3) s+=i; sum+=s; i+; printf("sum=%ld",sum);11. 用自然语言描述的程序逻辑为:设置环境;定义变量i、flag和password,并令flag=0,i=0;用户回答口令,将其赋于password变量;口令正确?如果是,则flag=1,转。否则转;回答三次口令了吗?如果没有,计数器加1后(i+),转,否则转; 根据flag之值输出相应信息。/* Note:Your choice is C IDE */#include "stdio.h"#include "string.h"#define N 6main() int i=0,flag=0; char passwordN; printf("The password is:123456n"); while(i<3) gets(password); if(strlen(password)!=6) printf("The string length is wrong!Retry please!n"); i+; continue; if(strcmp("123456",password)=0)flag=1;break;else printf("Wrong input!Retry please!n"); i+; if(flag=1) printf("Right password!n"); else printf("Wrong password!n");12. 用自然语言描述的程序逻辑如下:设置环境;定义变量digit、x、y分别表示原始数、原始数的个位数和逆数;输入原始正整数x;从x中分解出个位数字digit;合并个位digit至逆数y中;原始数x缩小10倍:x=x/10;如果x非零,则转; 输出逆数y,结束/* Note:Your choice is C IDE */#include "stdio.h"main()long digit,x,y;/*个位数、原始数、逆数*/printf("Please input the old number:n");scanf("%ld",&x);digit=x%10;y=digit;while(x!=0)x=x/10;digit=x%10;y=y*10+digit;printf("x=%ld,y=%ld",x,y/10); 13. 输入某三角形的三个边的长度,判断出这是个什么三角形(等腰、等边、任意,或不能构成)。/* Note:Your choice is C IDE */#include "stdio.h"main() float a,b,c,flag;/*flag=0不能,flag=1等边,flag=2等腰,flag=3任意*/ printf("Please input angles:n"); scanf("%f,%f,%f",&a,&b,&c); if(a+b<=c|a+c<=b|b+c<=a) flag=0; else if(a=b&&b=c) flag=1; else if(a=b|b=c|c=a) flag=2; else flag=3; if(flag=0) printf("nCan not!n"); if(flag=1) printf("nDeng Bian.n"); if(flag=2) printf("nDeng Yao.n"); if(flag=3) printf("nPu tong.n");14. 输入10个数,分别统计其中正数、负数、零的个数。#include "stdio.h"#define N 10main()int aN;int i,count1=0,count2=0,count3=0;/*count1记录正数个数,count2记录负数个数,count3记录0的个数*/printf("Please input numbers:n");for(i=0;i<N;i+) scanf("%d",&ai); if(ai>0) count1+; if(ai<0)count2+; if(ai=0)count3+; printf("count1=%-4d,count2=%-4d,count3=%-4d",count1,count2,count3);15. 先随机产生N个三位自然数输出,然后再输出其中同时是3、5、7倍数的数。(设N为100)/* Note:Your choice is C IDE */#include "stdio.h"#define N 100#include <time.h>#include <stdlib.h>main()int aN,i;printf("Please input numbers:n");randomize();for(i=0;i<N;i+) ai=random(900)+100; printf("%-4d",ai); printf("n-n"); printf("n3,5,7:n"); for(i=0;i<N;i+) if(ai%3=0&&ai%5=0&&ai%7=0) printf("%-4d",ai);16. 用for编程找出100200中的完全平方数。#include "stdio.h"#include "math.h"main() int i; for(i=100;i<=200;i+) if(sqrt(i)=i%100) printf("%-4d",i);17. 从终端输入三个正实数,判断这三个数能否构成直角三角形。#include "stdio.h"main() float a,b,c,flag;/*flag=0不能,flag=1能*/ printf("Please input angles:n"); scanf("%f,%f,%f",&a,&b,&c); while(a<=0|b<=0|c<=0) printf("Wrong input!Retry please:n"); scanf("%d,%d,%d",&a,&b,&c); if(a+b<=c|b+c<=a|a+c<=b) flag=0; else if(a*a=b*b+c*c|b*b=a*a+c*c|c*c=a*a+b*b) flag=1; else flag=0; if(flag=1) printf("nCan!"); else printf("nCan not!");18. 输入一行字符,统计其中有多少个字母(包括大写字母和小写字母)。/* Note:Your choice is C IDE */#include "stdio.h"#define N 10#include "stdlib.h"#include "ctype.h"#include "string.h"main() char cN; int i,count=0; gets(c); i=0; while(i!=strlen(c) if(isupper(ci)|islower(ci) count+; i+; printf("count=%-4d",count); getch();19. 输入一个字串,判断它是否是对称串。如”abcdcba”是对称串,”123456789”不是。/* Note:Your choice is C IDE */#include "stdio.h"#include "string.h"#include "ctype.h"#include "stdlib.h"#define N 10main()char aN,bN,i;printf("Please input the string:n");gets(a);if(strlen(a)>N)printf("Wrong input!Retry please!n");gets(a);strcpy(b,a);strrev(a);if(strcmp(a,b)=0)printf("nYes!n");else printf("nNo!n"); 20. 随机产生N个大写字母输出,然后统计其中共有多少个元音字符。(设N为200)/* Note:Your choice is C IDE */#include "stdio.h"#include <stdlib.h>#include <time.h>#define N 200main()int cN,i,count=0;randomize(); for(i=0;i<N;i+)ci=random(27)+65;printf(" %c",ci);if(ci=A|ci=E|ci=I|ci=O|ci=U)count+; printf("n-n"); printf("ncount=%-4d",count);找出三位自然数中的所有素数,要求判断x素数用自定义函数data(x)实现。#include "stdio.h"int data(int x);main()int i,flag=0;/*1是,0否*/ for(i=101;i<=999;i+) flag=data(i); if(flag=1) printf("%-4d",i); int data(int x)int i;for(i=2;i<x/2;i+)if(x%i=0)return 0;if(i=x/2)return 1;else return 0;21. 输出n行由“#”组成的矩形,每行“#”的个数为m个,其中n、m由终端(键盘)输入。要求输出m个“#”功能由函数satr(m)函数实现。#include "stdio.h"void satr(int m);main()int i,n,m;printf("Please input n&m:n");printf("n=");scanf("%d",&n);printf("m=");scanf("%d",&m); printf("n-n"); for(i=1;i<=n;i+) satr(m); printf("n"); void satr(int m)int i;for(i=1;i<=m;i+)printf("#");22. 若ax2+bx+c=0有实根,则求之。#include "stdio.h"#include "math.h"main() int a,b,c; float derta,x1,x2; printf("Please input a,b,c:n"); printf("a="); scanf("%d",&a);printf("b=");scanf("%d",&b);printf("c=");scanf("%d",&c);derta=b*b-4*a*c;if(derta<0)printf("NO!n");if(derta=0)printf("One!n");x1=-b/(2*a);x2=x1;printf("x=%-4.2f",x1);if(derta>0)printf("Two!n");x1=(-b+sqrt(derta)/(2*a);x2=(-b-sqrt(derta)/(2*a);printf("x1=%-4.2f,x2=%-4.2f",x1,x2);23. 从键盘输入两个字串,判断它们是否相同。#include "stdio.h"#include "string.h"#define N 20main()char c1N,c2N;printf("Please input two string below:n");gets(c1);gets(c2);printf("-n");printf("The answer is:");if(strcmp(c1,c2)=0)printf("Equal!n");else printf("Not equal!n"); 24. 从键盘输入两个字串,输出其中较短的那个字串,并输出它的长度。#define N 20#include "stdio.h"#include "string.h"main()char c1N,c2N;printf("Please input two string below:n");gets(c1);gets(c2);printf("-n");printf("The answer is:");if(strlen(c1)=strlen(c2)puts(c1);puts(c2);printf("The length is:%dn",strlen(c1);if(strlen(c1)<strlen(c2)puts(c1);printf("The length is:%dn",strlen(c1);if(strlen(c1)>strlen(c2)puts(c2);printf("The length is:%dn",strlen(c2);25. 从键盘输入长度不等的两个字串,将短串连接于长串之后输出。#include "stdio.h"#include "string.h"#define N 20main()char c1N,c2N;printf("Please input two string below:n");gets(c1);gets(c2);while(strlen(c1)=strlen(c2)printf("Wrong input!Retry please:n");gets(c1);gets(c2);printf("-n");printf("The answer is:");if(strlen(c1)<strlen(c2)puts(strcat(c2,c1);if(strlen(c1)>strlen(c2)puts(strcat(c1,c2);26. 从键盘输入长度不等的两个字串,将长串连接于短串之后输出#include "stdio.h"#include "string.h"#define N 20main()char c1N,c2N;printf("Please input two string below:n");gets(c1);gets(c2);while(strlen(c1)=strlen(c2)printf("Wrong input!Retry please:n");gets(c1);gets(c2);printf("-n");printf("The answer is:");if(strlen(c1)<strlen(c2)puts(strcat(c1,c2);if(strlen(c1)>strlen(c2)puts(strcat(c2,c1);27. 随机产生N个两位自然数,降序排列后输出。(设N为20)#include "stdio.h"#include "stdlib.h"#include "time.h"#define N 20main()int aN,i,j,temp;randomize();for(i=0;i<N;i+)ai=random(900)+100;for(i=0;i<N-1;i+)for(j=i+1;j<N;j+)if(aj>ai)temp=ai;ai=aj;aj=temp;for(i=0;i<N;i+)printf("%-4d",ai); 28. 从键盘输入两个字串,输出其中较长的那个字串,并输出它的长度。#define N 20#include "stdio.h"#include "string.h"main()char c1N,c2N;printf("Please input two string below:n");gets(c1);gets(c2);printf("-n");printf("The answer is:");if(strlen(c1)=strlen(c2)puts(c1);puts(c2);printf("The length is:%dn",strlen(c1);if(strlen(c2)<strlen(c1)puts(c1);printf("The length is:%dn",strlen(c1);if(strlen(c2)>strlen(c1)puts(c2);printf("The length is:%dn",strlen(c2);29. 从键盘输入10个战士的身高,输出平均身高,并找出哪些身高低于平均身高。#include "stdio.h"#define N 11main()float aN,sum=0;int i;printf("Please input heigths:n"); for(i=0;i<N-1;i+) scanf("%f",&ai); sum+=ai; aN-1=sum/(N-1); printf("The average is:%-6.2fn",aN-1); printf("-n"); printf("The answer are:n"); for(i=0;i<N-1;i+) if(ai<aN-1) printf("%-8.2f",ai);30. 从键盘输入10个战士的身高,输出平均身高,并找出哪些身高高于平均身高。#include "stdio.h"#define N 11main()float aN,sum=0;int i;printf("Please input heigths:n"); for(i=0;i<N-1;i+) scanf("%f",&ai); sum+=ai; aN-1=sum/(N-1); printf("The average is:%-6.2fn",aN-1); printf("-n"); printf("The answer are:n"); for(i=0;i<N-1;i+) if(ai>aN-1) printf("%-8.2f",ai);31. 从键盘输入10个战士的身高,输出最高、最低的身高#include "stdio.h"#define N 10main()float aN,min=99999,max=-99999;int i;printf("Please input heigths:n"); for(i=0;i<N;i+) scanf("%f",&ai); printf("-n"); for(i=0;i<N;i+) if(ai>max) max=ai; if(ai<min) min=ai; printf("max=%-6.2f,min=%-6.2f",max,min);。32. “百钱百鸡”问题。百钱买百鸡,鸡翁一值钱三,鸡母一值钱二,鸡雏三值钱一,问鸡翁、鸡母、鸡雏各几何?#include "stdio.h"main()int jw,jm,jc;/*公鸡最多100/3=33只,母鸡最多1

    注意事项

    本文(C语言学习知识上机练习进步题.doc)为本站会员(小**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开