C语言程序设计知识点要求答案.docx
- 文档编号:24496832
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:19
- 大小:20.75KB
C语言程序设计知识点要求答案.docx
《C语言程序设计知识点要求答案.docx》由会员分享,可在线阅读,更多相关《C语言程序设计知识点要求答案.docx(19页珍藏版)》请在冰豆网上搜索。
C语言程序设计知识点要求答案
第1章C语言与程序的算法
1、掌握C程序的特点
2、掌握C程序的上机操作的每个步骤,及对应的生成文件
3、理解算法的特性,会画流程图
第2章数据类型、运算符与表达式
1、掌握C语言中定义标识符的要求
2、掌握C语言的数据类型:
int,char,float,double
3、整型常量只需掌握十进制
4、掌握符号常量的定义与使用
5、掌握字符型常量与字符串常量的使用
6、掌握变量的定义、初始化和使用
7、掌握各类数值型数据之间的自动转换规则(图2-5)和强制转换规则的概念
和使用
8、掌握如下运算符:
算术运算符(其中,++,--只需要掌握i++和i—即可)、关系运算符、逻辑运算符、条件运算符、逗号运算符。
9、不需要背记运算符的优先级,建议用括号解决。
10、掌握如何对变量进行赋值?
第3章数据的输入输出与顺序程序设计
1、掌握头文件的使用:
stdio.h,math.h,string.h
2、掌握printf函数的使用
掌握表3-1中d,f,e,c,s;掌握表3-2中的m,.n。
掌握整型数据的输出:
d格式符掌握浮点型数据的输出:
f格式符掌握字符型数据的输出:
c格式符和s格式符
3、掌握sacnf函数的使用
掌握表3-3中d,f,e,c,s;掌握表3-4中的m。
掌握scanf函数时应注意的问题
4、掌握Putchar函数与getchar函数的使用
第4章选择结构程序设计
1、全部内容都需要熟练掌握
第5章循环控制
1、全部内容都需要熟练掌握
第6章数组
1、全部内容都需要熟练掌握
第7章函数
1、熟练掌握函数的定义与调用
2、熟练掌握函数的嵌套调用
3、掌握数组作为函数参数
第8章指针、结构型与联合型
1、掌握指针的概念、指针变量的定义、赋值和运算
熟练掌握前面提到知识点对应的教材例题、课后习题和上机题目!
!
程序阅读题补充(阅读程序,写结果,注意显示格式)
1、
#include
voidmain()
{intx,y;
printf("Enteraninteger:
\n");
scanf("%d",&x);
y=x;
if(y<0)
y=-y;
printf("integer:
%dabsolutevalueis:
%d",x,y);
}
2、
#include
voidmain()
{inti;
for(i=1;i<=5;i++)
{if(i==3)continue;
printf("i=%d\n",i);
}
printf("over!
\n");
}
3、
#include
voidmain()
{inti,j,x;
for(i=0;i<=9;i++)
{
x=3;
for(j=0;j<2;j++)
x=x+6;
}
printf("x=%d\n",x);
}
5、
#include
printf("%d\n",a[4]);
}
6、
#include
inti;
for(i=0;i<10;i++)a[i]=10-i+1;
for(i=9;i>=0;i=i-2)printf("%d",a[i]);
printf("\n");
}
7、
#include
#defineSIZE10
voidmain()
{inti=0;
intage[SIZE]={0};for(i=0;i #include #defineSIZE10 voidmain() {inti=0; intage[SIZE]={0};for(i=0;i { if(i>=5) {age[i]=i;} printf("age[%d]=%d\n",i,age[i]);}} 9、 #include intf(intx,inty,intz) {intm; if(x elsem=y; if(z returnm; } voidmain() {inta,b,c; a=54; b=34; c=100; c=f(a,b,c); printf("%d\n",c); } 10、 #include intpow(intx,inty) { intm=1,n; for(n=1;n<=y;n++)m=m*x; returnm; } voidmain() {printf("%d\n",pow(3,4)); } 程序设计题补充 1、编程实现: 输入密码,如果等于8848,则显示“loading”;否则显示“inputagain! ”,如果输入超过3次,则结束程序。 2、有一个函数: (x<1) y=2x-1(1<=x<10) 3x-11(x>=10)请编写程序,输入x值,输出y值。 3、编程实现: 输入百分制成绩,要求输出其对应的成绩等级‘,A'‘B,'‘C,'‘D,'‘E'90分以上为A,80—89为B,70---79为C,60---69为D,60分以下为E。 4、编程实现: 求0~100之间的偶数之和。 5、在101~999之间的三位数中,求各位之和等于9且能被5整除的数,并输出。 6、把1元人民币兑换成1分、2分、5分的硬币,共有多少种组合? 7、对输入的字母串进行加密并输出。 加密算法为把输入字母变成其后的第八个字母,如a变为i,u变为c。 8、求500之内的所有素数,并统计个数。 9、求一个整数的各位之和与各位之积。 10、输入10个整数,将其中的最大、最小值对换,并输出对调后的数组。 11、输入10个整数,输出累加和、平均值。 12、将全班学生的成绩输入到数组grade[30],使用函数利用遍历数组找出全部学生的平均成绩。 13、将全班学生的年龄输入到数组iage[30],使用函数输出其中的最小年龄。 14、定义4X5的二维数组,输入20个数组值,输出其中的最大、最小值、累加和。 15、输入两个字符串s1,s2,将s2插入s1的第i个字符后,输出插入后的结果。 16、编程计算两个矩阵的和,并将两矩阵的和输出到屏幕上。 提示: 两个矩阵相加的条件是行列数相同。 两个矩阵相加就是将两个矩阵的对应元素分别相加。 17、编程求用户输入矩阵中的最大值。 18、一个数如果从左往右读和从右往左读数字是相同的,则称这个数为回文数,比如898,1221,15651都是回文数。 编程实现: 用户从键盘输入一个数,判断此数是否为回文数,结果显示到屏幕上。 19、编写函数来判断闰年,并用它来找出2000-2500年之间的全部闰年。 注: 不是整百年份数的能被4整除的就是闰年,是整百年份数的要能被400整除的才是闰年。 20、设计一个程序,可以模仿计算器完成加、减、乘、除四则运算: 由键盘输入两个数,按用户的决定进行一种运算,并给出结果。 其中,加、减、乘、除各由一个函数实现。 21、写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用两个函数,并输出结果,两个整数由键盘输入。 22、求a! +b! +c! 的值,用一个函数fac(n)求n! 。 a,b,c的值由主函数输入,最终得到的值在主函数中输出。 23、有1020个苹果,第一天卖出其一半多两个,以后每天卖出余下的一半多两个,问几天卖完。 24、输入5行字符,去掉每行的前置空格后输出。 25、以下列形式打印7行杨辉三角: 1 11 121 1331 。 。 。 。 。 。 。 。 。 26、**打印一下图形: A BBB CCCCC FF••…FF 27、**要求用键盘输入英语规则名词,屏幕输出该名词的复数形式。 28、**17个人围成圈,编号为1~17,从第1号开始报数,报到3的倍数的人 离开,一直数下去,直到最后只剩下1人。 求此人的编号(提示: 用一维数组实现)。 1、 #include {inti=3,ps;printf("inputpassword: ");while(i) {scanf("%d",&ps);i--;if(ps==password){printf("loading\n");break;} elseprintf("inputagain! \n"); } } 2、 #include {intx,y;printf("Inputanumber: ");scanf("%d",&x);if(x<1)y=x;elseif(x<10)y=2*x-1;elsey=3*x-11;printf("y=%d\n",y); } 3、 #include {intx;charsc;printf("Inputascore: ");scanf("%d",&x);if(x<=100){x=x/10; switch(x) {case10: case9: sc='A';break;case8: sc='B';break;case7: sc='C';break;case6: sc='D';break;default: sc='E'; } elseprintf("errorscore! \n");printf("scorelevelis%c\n",sc); } 4、 #include voidmain() {inti,sum=0; for(i=2;i<=100;i=i+2)sum=sum+i; printf("sum=%d\n",sum); } 5、 #include voidmain() {inti; for(i=105;i<999;i=i+5)if(i%10+(i%100)/10+i/100==9)printf("%d",i); } 6、 #include voidmain() {inti,j,k; for(i=0;i<=20;i++) for(j=0;j<=50;j++)if(i*5+j*2<=100)printf("%d%d%d\n",i,j,100-i*5-j*2); } 7、 #include #defineN30 voidmain() {chars[N],c='z';inti=0; printf("inputastring: "); gets(s); while(s[i]! ='\0') {if(s[i]+8<=c)printf("%c",s[i]+8); elseprintf("%c",(s[i]+8)%c+'a'-1);i++; } } 8、 #include voidmain() {inti,j,a[100],k=0; for(i=2;i<=500;i++) {for(j=2;j if(j==i)a[k++]=i; }for(i=0;i printf("\ntotalis: %d",k); } 9、 #include voidmain() {inta[10],i,n,s1=0,s2=1;printf("Inputanumber: ")scanf("%d",&n);for(i=0;n;n=n/10,i++)a[i]=n%10; for(i--;i>=0;i--) {s1=s1+a[i];s2=s2*a[i];}printf("%d%d\n",s1,s2); } 10、 #include voidmain() {inti,a[10],max,min,t1,t2;for(i=0;i<10;i++)scanf("%d",&a[i]);max=min=a[0];t1=t2=0;for(i=1;i<10;i++) {if(a[i] } i=a[t1];a[t1]=a[t2];a[t2]=i; for(i=0;i<10;i++)printf("%d",a[i]); } 11、 #include voidmain() {inti,a[10],min,t1,t2; floatavg=0;for(i=0;i<10;i++){scanf("%d",&a[i]);avg=avg+a[i]; } printf("sum=%.0f\navg=%.2f\n",avg,avg/10); 12、 #include #defineN30 voidmain() {inti,grade[N],max,min,t1,t2;floatavg(int[]);for(i=0;i } floatavg(inta[]) {inti; floatm=0;for(i=0;i returnm/N; } 13、 #include #defineN30 voidmain() {inti,iage[N]; intmin(int[]);for(i=0;i printf("%d",min(a)); } intmin(inta[]) {inti,m; m=a[0];for(i=1;i returnm; } 14、 #include voidmain() {inta[4][5],i,j,max,min,sum=0;for(i=0;i<4;i++)for(j=0;j<5;j++)scanf("%d",&a[i][j]);max=min=a[0][0];for(i=0;i<4;i++)for(j=0;j<5;j++) {if(a[i][j]>max)max=a[i][j];if(a[i][j] }printf("max=%d,min=%d,sum=%d\n",max,min,sum);} 15、 #include #defineN30 voidmain() {intx,i,j; chars1[N],s2[N],s[2*N]; printf("Inputtwostrings: \n"); gets(s1);gets(s2); printf("Inputanumber: "); scanf("%d",&i);for(x=0;x for(j=0;s2[j]! ='\0';j++,x++) s[x]=s2[j]; for(j=i;s1[j]! ='\0';j++,x++) s[x]=s1[j]; s[x]='\0'; printf("Theresultis: ");puts(s); } 16、 #include #defineN10 voidmain() {inta[N],b[N],c[N],i; printf("输入数组a的10个值: ");for(i=0;i printf("输入数组b的10个值: ");for(i=0;i for(i=0;i c[i]=a[i]+b[i]; printf("a、b数组相加后的结果为: \n"); for(i=0;i printf("%d",c[i]); } 18、 #include intff(intx) {inta[10],i=0,j;while(x) {a[i]=x%10;i++;x=x/10;} i--;/*数的长度,a[0]为个位、a[i]为最高位的值*/ for(j=0;j<=i/2;j++)if(a[j]! =a[i-j])break; if(j<=i/2)return0;/*不是回文数*/ elsereturn1;/*是回文数*/ } voidmain() {intn; printf("输入一个整数: ");scanf("%d",&n); if(ff(n))printf("%d是回文数\n",n);elseprintf("%d不是回文数\n",n); 20、 } #include intjia(intn,intm) {returnm+n;} intjian(intn,intm) {returnn-m;} intcheng(intn,intm) {returnm*n;} intchu(intn,intm) {returnn/m;}voidmain() {inta,b,c,i; printf("Inputtwonumbers: ");scanf("%d%d",&a,&b); printf("1+\n2••: ....-\n3*\n4/\n"); printf("choseaoperator: ");scanf("%d",&i); switch(i) {case1: printf("%d",jia(a,b));break; case2: printf("%d",jian(a,b));break; case3: printf("%d",cheng(a,b));break; case4: if(b! =0)printf("%d",chu(a,b));elseprintf("error! ");break; default: printf("Inputerror! "); } 21、分析: 最大公约数小于等于两个数中小的数;最小公倍数大于等于两个数中大的数。 #include intf1(intm,intn)/*求最大公约数*/ {intx; x=m>n? n: m;while (1) {if(m%x==0&&n%x==0)break; x--; } returnx; } intf2(intm,intn)/*求最小公倍数*/ {intx; x=m>n? m: n; while (1) {if(x%m==0&&x%n==0)break; x++; } returnx; } voidmain() {inta,b; printf("inputtwonumber: ");scanf("%d%d",&a,&b); printf("最大公约数为: %d\n",f1(a,b)); printf("最小公倍数为: %d\n",f2(a,b)); } 22、#include for(i=2;i<=n;i++) f=f*i; returnf; } voidmain() {inta,b,c; printf("Inputthreenumbers: "); scanf("%d%d%d",&a,&b,&c);printf("a! +b! +c! =%d",fac(a)+fac(b)+fac(c)); } 23、 #include voidmain() {inti,m=1020;for(i=1;m>0;i++)m=m/2-2; printf("Totaldays: %d",i); } 24、方法一: #include chars[50];for(i=1;i<=5;i++){gets(s);flag=0; for(j=0;s[j]! ='\0';j++){if(s[j]! ='')flag=1; if(flag)putchar(s[j]); } putchar('\n'); } }方法二: #include for(i=0;m[i]=='';i++);for(;m[i]! ='\0';i++)putchar(m[i]);putchar('\n'); } voidmain() {chars[N];inti;printf("inputfivewords: ");for(i=1;i<=5;i++){gets(s); cutspace(s); } } 25、#include for(i=1;i if((i==j)||(j==1))a[i][j]=1;elsea[i][j]=a[i-1][j-1]+a[i-1][j]; for(i=1;i {for(k=1;k<=N-i;k++)printf("");for(j=1;j<=i;j++)printf("%d",a[i][j]);putchar('\n'); } } 26、 #include voidmain() {inti,j;c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 知识点 要求 答案