南京大学金陵学院C语言程序设计考试复习精讲
C语言程序设计冲刺串讲
• • • • • • •
4.赋值语句 若错误行是赋值语句,则要看赋值是否正确, 然后看赋值运算符是否写正确。 5.定义语句 若错误行是定义语句,则要注意: 1)首先分析变量类型名是否写对; 2)然后分析给变量赋初值是否正确; 3)若以上均不是,则看是不是少定义了某个 变量或少了花括号;
• 6、表达式错误问题:
1.基础知识掌握不扎实,概念理解不准确
• 如: main( ) {int a=1,b=3,c=5; if (c=a+b) printf (“yes\n”); else printf(“no”); } 题目 问程序运行后的输出结果,答案应是yes。因 为“if (c=a+b) printf (”yes\n“);”中的条件 “c=a+b”是一个赋值语句,c的值为a+b=1+3=4, 所以条件为真。而容易把赋值语句“c=a+b”理 解为关系表达式“c==a+b”即5=1+3为逻辑假, 故答no。
–
– – –
1)首先看该行最后有没有分号,若有则删掉分号;若中间有分 号则要改为逗号; 2)形参和实参类型不一致问题
① 若实参是个地址或数组名或指针变量名,则对应的形参肯定 是指针或数组; ②若实参是二维数组名,则对应的形参应该是指针数组或是二 维数组; ③若后面用到某形参的时候有指针运算符,则该形参比为指针 类型; ④若形参是二维数组或指向M 个元素的指针变量,则该二维的 长度必须与main中对于数组的第二维的长度相同。
– 记住是分号(;),不是逗号(,)!
3. return语句
•
– – –
若错误行为return语句,则要注意以下几点:
1)首先看是不是正确书写return关键字; 2)然后看是不是缺少分号,若是则加上分号即可; 3)再者判断return后的变量或表达式是否正确;
《C语言程序设计》期中练习(1-6章)
一、选择题 1、执行”int k=11;k=1/3*k++;”后,k 的值是( ) A0 B3 C4 D 12 2、以下常量中正确的是( ) A ‘abc’ B ‘\x123’ C 3.14E-1.2 D “a” 3、以下所列语句中,合法的语句是( ) A a=1,b=2 B ++a; C a=a+1=3; D y=int(a) 4、以下不致造成死循环的语句是( ) A for(y=0,x=1; x>++y; x=i++) i=x; B for(; ; x+=i); C while(x=8) x--; D for(i=10,sum=0; sum<=i) sum=--i; 5、设有定义”float y=3.45678; int x; ” 则以下表达式能实现将 y 中的数值保留小数点后 2 位,第 3 位四舍五入的表达式是( ) A y=(y*100+0.5)/100.0 B x=y*100+0.5,y=x/100.0 C y=y*100+0.5/100.0 D y=(y/100+0.5)*100.0 6、以下程序的输出结果是( ) #define PI 3.14 #define F(y) ((y)*(y)) #define P(a) printf(“%d”,a); main() {int x=PI; P(F(1+2)*x); } A 10 B 25 C 15 D 27 7、当需要定义一个函数时,以下( )不能用作函数名。 A scanf B for C _sum D F2 8、以下对 break 语句使用的正确描述是( ) A 可以出现在程序中的任何位置 B 只能出现在循环结构或 switch 结构中 C 只能出现在 switch 结构中 D 只能出现在循环结构中 9、若有声明语句”int a[10],b[3][3];”,则对以下数组元素赋值的操作中,不会出现越界访问的是 ( ) A a[-1]=0 B a[10]=0 C b[3][0]=0 D b[0][3]=0 10、下列一维数组声明正确地是( ) A int a[ ]; B int n=10,a[n]; C int a[10+1]={1}; D int a[2]={1,2,3} 11、已知有预处理命令“#include <stdio.h>”和声明“char s[10]=”thank you”; int i;” ,要求输出 字符串“thank you” ,以下选项中不能达到该要求的语句是( ) A puts(s); B printf(“%s”,s[10]); C for(i=0; s[i]!=’\0’;i++) printf(“%c”,s[i]); D for(i=0; s[i]!=’\0’;i++) putchar(s[i]); 12、若有声明语句“char s1[10]={0},s2[10]=”books”;” ,则能将字符串“books”赋给数组 s1 保存 的表达式是( ) A s1=”books”; B strcpy(s2,s1); C s1=s2; D strcat(s1,s2); 二、填空题 第 页 总 页
sjk15
15.设有数组说明”int a[4][4];”,则不能等价表示数组元素a[3][3]的是______。
A.*(a[3]+3) B.*(*(a+3)+3) C.*&a[3][3] D.(*(*(a+3))+3)
16.下列表达式中,错误的是__________。
A.4.0%2.0 B.k+++j C.a+b>c+d?a:b D.x*=y+25
printf("%d %d\n",--a,++b);
}
A 10 10 B 12 12 C11 10 D11 13
10.以下程序输出结果是( ).
main ( )
{ int m=5;
if(m++>5) printf("%d\n",m);
else printf ("%d\n",m--);
}
A 7B 6C 5D 4
A.a= =0 B.a= =1 C.a!=1 D.a!=0
5.设x,y,z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为( )。
A. 4 B. 16 C. 32 D . 52
6.设有如下的变量定义:
int i =8,k ,a,b ;
unsigned long w=5;
1.在Turbo C2.0系统中,若将实型常数1.5存储在内存中,它占用______个字节。
2.在C语言中,要求运算数必须是整型的运算符是______
3.变量的指针含意是指变量的_________
4.在C语言中,字符型数据在内存中以______码形式存放。
2022年金陵科技学院公共课《C语言》科目期末试卷B(有答案)
2022年金陵科技学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。
例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。
请填空。
_______;a=b;b=c;_______;2、C语言的源程序必须通过【】和【】后,才能被计算机执行。
3、C语言源程序的基本单位是________4、C语言中的标识符可分为关键字、_______和_______3类。
5、若有定义语句:int m=5,y=2;则执行表达式y+=y-=m*=y后的y值是_______6、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。
7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。
请填空。
for(x=0;x<=30;x++){y=30一x;if(_______)printf("%d,%d\n",x,y);}8、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。
9、下面程序段的运行结果是_______。
int i=5;char c[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);10、若有以下定义和语句:int*p[3],a[6],i;for(i=0;i<3;i++)p[i]=8&a[2*i];则*p[0]引用的是a数组元素_______,*(p[1]+1)引用的是a数组元素_______。
二、选择题11、以下正确的叙述是( )。
A.在C程序中,每行中只能写一条语句B.若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C.在C程序中,无论是整数还是实数,都能被准确无误地表示D.在C程序中,%是只能用于整数运算的运算符12、C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符( )A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母、数字和下划线中任一种字符13、C语言规定:在一个源程序中,main函数的位置( )A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后14、以下叙述正确的是A.在C程序中,main函数必须位于程序的最前面B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可以发现注释中的拼写错误15、有两个字符数组a、b,则以下正确的输人格式是()。
C语言程序设计(第四版)复习资料
C语言程序设计(第四版)复习资料C语言程序设计(第四版)复习资料C语言程序设计是计算机科学与技术专业中非常重要的一门课程,通过学习C语言,可以培养同学们良好的编程思维和解决问题的能力。
为了帮助同学们更好地复习和掌握C语言程序设计知识,提供一份详细的复习资料是非常有必要的。
本文将针对教材《C语言程序设计(第四版)》进行复习资料的整理,帮助同学们系统地复习重点知识点和考点。
一、概述C语言是一种通用的、面向过程的高级计算机编程语言,它具有语法简洁、功能强大、性能高效等特点。
本教材分为六个部分:基本类型和函数、选择结构、循环结构、数组与指针、字符串和结构、高级特性。
通过学习这些内容,同学们可以初步掌握C语言的基本知识和编程技巧。
二、基本类型和函数在C语言中,有一些基本类型和函数是我们必须要了解和掌握的。
首先,我们需要了解整型、浮点型、字符型等基本数据类型的特点和使用方法。
其次,掌握C语言常用的输入输出函数,如printf()和scanf()函数,这是进行数据输入和输出的基础。
此外,还需要理解C语言中的运算符和表达式,并能正确地使用它们进行计算和逻辑运算。
三、选择结构选择结构是C语言中非常重要的一部分,通过选择结构可以实现根据不同条件执行不同的代码块。
在《C语言程序设计(第四版)》中,详细介绍了if语句、switch语句等选择结构的使用方法和注意事项。
在复习选择结构时,同学们需要理解条件表达式的含义和使用方法,并能灵活地运用选择结构解决实际问题。
四、循环结构循环结构是C语言中常用的一种结构,通过循环结构可以重复执行一段代码,直到满足退出条件为止。
在本教材中,详细介绍了while循环、do-while循环和for循环的使用方法和注意事项。
复习循环结构时,同学们需了解循环的基本原理,掌握循环控制变量的更新和循环体的编写技巧。
五、数组与指针数组和指针是C语言中非常重要的概念,同时也是较难理解和掌握的部分。
在《C语言程序设计(第四版)》中,详细介绍了数组的概念、数组的声明和使用方法,以及指针的概念、指针的声明和使用方法。
C语言阶段复习二
C语言阶段复习(二)复习提纲:第五讲选择结构程序设计第六讲循环结构程序设计分章复习:第五讲选择结构程序设计内容提要:1、关系运算符<,>,==,!=,>=,<=2、逻辑运算符&&,||,!3、条件运算符?:4、三种if结构1)简单if形式if (表达式)语句;2)、if-else形式if(表达式)语句1;else语句2;3)if-else-if形式if(表达式1) 语句1;else if (表达式2) 语句2;else if (表达式3) 语句3;……else if (表达式n) 语句n;else 语句n+1;使用if语句注意事项:•if语句自动结合后面的一条语句,如果需要执行多条语句,需要用{ }包括所有要执行的语句。
•if后面表达式的形式很灵活,可以是常量,变量,任意类型的表达式,可以是函数,指针等。
只要表达式非零时,值就为真,否则就是假。
•if与else的匹配关系遵循“就近一致原则”,每个else与离他最近的没有其他else配对的if配对。
5、switch语句switch ( 表达式){ case 常量c1: 语句组1; break;case 常量c2 : 语句组2; break;…….case 常量cn : 语句组n; break;[default: 语句组; break;]}swith语句使用提示:(1)、swith后面的表达式一般是整型,每个case后面的“常量表达式”的类型应该其一致。
(2)、每个case后面的常量表达式的值必须不一样,否则会出现错误。
(3)、每个case后面必须是“常量表达式”,不可以是变量(4)、break语句的使用(5)、switch语句可以嵌套第六讲循环结构程序设计内容提要:1、while语句一般形式:while (表达式)循环体语句;2、do-while语句一般形式:do循环体语句;while(表达式);while最后面的;不要省略如果do-while语句中的表达式值一开始就为假,循环体还是会被执行一次int a = 0, b = 0;dob++;while (a > 0) ;3、for语句一般形式for (表达式1;表达式2;表达式3)循环体语句;表达式1:赋值表达式,给循环变量赋初值表达式2:关系表达式,或者逻辑表达式,作为循环控制条件表达式3:赋值表达式,给循环变量增量或者减量练习题:一、选择题1. 若有程序段如下:a=b=c=0;x=35;if(!a)x--;else if(b);if(c)x=3;else x=4;执行后,变量x的值是(B )A.34 B.4 C.35 D.32. 下列if语句中,不正确的是(A )A.if (x<y)scanf (“%d”,&x) else scanf (“%d”, &y); B.if (x<y);C.if (x==y)x+=y;D.if (x<y){x++;y++;}3. 若有int x=3;,执行程序段:do{printf("%3d",x-=2);}while(!(--x));输出的结果是( C)A.1 3 B.1 -1 C.1 -2 D.1 -34. 有程序段:int a;for (scanf (“%d”,&a);!a;)printf (“continue”);则for语句中的!a等价于()。
计算机程序设计基础精讲多练CC第7章
引用可以作为函数的参数和返回值,使得函数可以直接访 问和修改调用者的数据,从而提高程序的效率和可读性。
指针与引用在函数中的应用
01
指针作为函数参数
将指针作为函数的参数,可以在函数内部修改指针所指向 的数据,从而实现数据的交换和修改。
02
引用作为函数参数
将引用作为函数的参数,可以使得函数直接访问和修改调 用者的数据,避免了数据的拷贝和返回值的麻烦。
03
指针与引用的比较
指针和引用都可以实现数据的间接访问和修改,但是它们 的使用方式和语法有所不同。指针更加灵活,但是使用不 当容易导致程序出错;而引用相对更加安全,但是使用范 围有限。在实际编程中,应根据具体情况选择合适的方式 。
06
文件操作
文件概述及分类
文件概述
文件是计算机中存储数据的一种方式,通常保存在磁盘或其他存储介质上。文 件可以是文本、图像、音频、视频等各种类型的数据。
函数调用等信息。
断点调试
在程序中设置断点,当程序执 行到断点时暂停执行,方便查
看程序状态。
日志输出
在程序中添加日志输出语句, 记录程序执行过程中的关键信
息,方便问题定位。
变量监视
通过调试器监视特定变量的值 ,观察变量在程序执行过程中
的变化情况。
THANKS
感谢观看
计算机程序设计基础 精讲多练cc第7章
目录
• 程序设计基本概念 • 数据类型与运算符 • 控制结构 • 函数与数组 • 指针与引用 • 文件操作 • 异常处理与程序调试
01
程序设计基本概念
程序与算法
程序
程序是一系列按照特定顺序组织 的计算机指令和数据,用于实现 特定的功能或解决特定的问题。
第5章 江苏省二级C语言等级考试算法考点精解(初稿)
第5章算法考点精解前面两章讨论了C语言的基本概念、基本语句、程序结构、各种数据类型、函数、指针、链表、文件等与语法相关的内容,本章主要针对江苏省二级C等级考试中经常出现的算法进行归纳总结,包括基本操作、非数值计算常用经典算法、数值计算常用经典算法、解决各类问题的一般算法。
算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。
通俗点说,就是计算机解题的过程。
在这个过程中,无论是形成解题思路还是编写程序,都是在实施某种算法。
形成解题思路是推理实现的算法,编写程序是操作实现的算法。
在计算机的等级考试题目中,程序填空及上机编程题一般都与算法有关,所以要了解等级考试大纲中规定的算法并掌握常考算法。
5.1 基本操作一、知识点综述1.交换(*****)变量交换算法是一种很简单的算法,也是最为基础的一个算法,各种其他的算法往往都要运用到这一基本算法,如各种排序算法就会使用到交换变量的算法。
实现变量的值的交换最常用的方法是借助一个临时变量来实现将两个数的值进行交换。
下面的函数实现了两个数的交换。
void swap(int x, int y){ int temp;temp=x;x=y;y=temp;}因为函数参数的传递是值传递,是单向的,如果主函数调用了此函数,尽管形式参数x 和y的值交换了,而主函数中的实际参数是不会改变的。
要想实现地址传递,应该用指针实现。
void swap(int *x, int *y){ int temp;temp=*x;*x=*y;*y=temp;}函数调用时将实参的地址传递给指针x和y,例如:swap(&a, &b);实现x和y指向的地址单元的值的交换,即a和b的值的交换。
2.累加(*****)累加就是对若干个数求和,其最基本的思想就是“反复做加法”。
一般来说,计算机每次只处理两个数的相加运算,所以多个数相加必须通过多次的两两相加来实现,用循环就很容易实现数的累加。
使用循环时,要注意根据问题确定循环变量的初值、终值或结束条件,更要注意用来表示最后结果的初值。
C#程序设计复习资料.doc
C#程序设计复习资料一、选择题:A. namespaceB. nameplaceC. thisD. as2•请问经过表达式a=3+l>5?0:1的运算, 变量a的最终值是什么?( B )1.C#中声明一个命名空间的关键字是(A )。
A. 3B. 1 C・ 0 D. 43.关于如下程序结构的描述中,哪一项是正确的?( C )for(;;){循环体;}A.执行循环体一次B.程序不符合语法要求C. 一直执行循环体,即死循D.不执行循环体4.构建Windows窗体以及其所使用空间的所有类的命名空间是下列那个选项? (D )A.System. 10B.System. TextC.System. DataD.System. Windows. Forms5.通常计算机程序总是由若干条语句组成的,组成程序的常用结构下列哪个是错误的(A )A.跳转结构。
B.循环结构C.分支结构D.顺序结构6.在控制台程序中必须有一个static void Main(),下列关于这个方法的描述中,哪个是错误的?( B )A.这个方法叫做入口点函数B.该方法不可以有返回类型C.声明MainO方法时既可以使用参数,也可以不使用D.必须在结构或类的内部7.选定或者是取消选定RadioButton时,会触发什么事件?( D )A. SelectedB. SelectedChangedC. ChangedD. ChedkedChanged& Visual C#应用程序一旦编译成可执行程序,则(D )A.无需任何条件即可在Windows操作系统下运行B.只要生成安装程序,即可在Windows操作系统下无条件安装运行C.必须安装・NET框架类库,且进行部署,才能在Windows操作系统下运D.只要安装了・NET框架类库即可在Windows操作系统下运行9.一年中的12个月,每个月的中文对应一个数字,如“一月”对应1, “二月”对应2。
sjk9
6.如果int a=1,b=2,c=3,d=4;则条件表达式“a>b? a:c<d? c:d”的值是__________
A.1 B.2 C. 3 D.4
7.关于指针概念不正确的说法是__________
六.编写程序(3题选2题,第1题必做,第2、3题选做1题,共20分)
1.编写程序删除一字符串中指定位置的字符,要求:
1)删除的位置由键盘输入,且与数组下标一致;
2)将删除后的字符串保存到文件D:\myf1.out中。
2.在给定的一个5×5的矩阵中找出所有元素a[i][j],使其第i行上所有元素之和等于第j列上所有元素之和(0≤i<5,0≤j<5)。
s+=________________;
printf(“%ld \n”,s);
}
五.改错题(4错*3分,计12分)
以下程序为输出10个数据的平均值。
要求根据题目功能及程序中语句之间的逻辑关系对程序中的错误进行修改;改错时,可以修改语句中的一部分内容,调整语句次序,增加少量的变量说明或编译预处理命令,但不能增加其它语句,也不能删去整条语句。
A.0 B.1 C. 5 D. 6
10.下列循环语句中有语法错误的是__________
A. while(x=y) 5; B.while(0);
C.do 2;while(x= =B. D.do x++ while(x= =10)
11.已知int i=1;执行语句while(i++<4)后,变量i的值为__________
#include <stdio.h>
2021年秋季学期计算机专业《c程序设计》课程期末复习提纲(10.24
2021年秋季学期计算机专业《c程序设计》课程期末复习提纲(10.242021年秋季学期计算机专业《C程序设计》课程期末复习提纲***同学们要会做本提纲和作业中的题目***一、复习方法指导和总体要求本次命题,重在考核C语言基本语法和程序设计;请重点复习各章要求的基本知识点。
二、参考资料教材:谭浩强,C程序设计(第四版),清华大学出版社参考书:谭浩强,C程序设计题解与上机指导(第四版), 清华大学出版社多媒体课件中使用的教材:谭浩强,C程序设计(第三版), 清华大学出版社注:本学期开始,教材采用《C程序设计》的第四版本的新教材,结构方面与原有教材变化不大,主要是将第三版教材中的第三章与第四章进行了合并,各章节内容有所填充和丰富,但知识框架和主要知识点无太多变化。
多媒体课件中使用的仍是第三版教材,不会对同学们的学习造成影响。
重修等学习第三版教材的同学也可继续进行学习,无需更换教材。
本课程多媒体课件采用新版课件,知识点介绍更为详细,有助于更好地学习。
多媒体课件中使用的教材是谭浩强,C程序设计(第四版),清华版。
多媒体课件中讲授了第一、三、四、五、六、七、八、九章的内容,其余部分不在本课程要求范围之内,请有兴趣的同学自行学习。
注:学习及复习时请以PPT课件及教材为主要学习资料,PPT课件中精炼了本课程所有重要的知识点,并配以例题,有助于同学们学习理解。
多媒体视频教学主要以PPT课件为讲课依据,如果学习中遇到难懂知识点,可参考多媒体视频教学中针对难点重点的详细讲解。
PPT课件可从论坛C语言板块置顶区下载。
三、试卷结构1. 填空题(每小题2分,共20分)2. 单项选择题(每小题2分,共20分)3. 判断题(每小题2分,共20分)4. 计算下面 C 表达式的值 ( 每小题5分共10分 )5. 写出表示下列条件成立的一个C语言表达式. (每小题5分共10分)6. 程序阅读题( 每小题5分共10分 ) 7. 程序填空题( 每空2分共10分 )四、各章节知识点第 1 页共 6 页教学范围为第一至第十一章(第二章不讲),考试范围为第一至第九章,其中第二章不做考察(考虑到部分同学缺乏实验基础)。
C语言程序设计考前串讲
C语言程序设计考前串讲梁野副教授2020年12月15日考试形式·题型:选择、判断、填空、程序·考查方式:。
对基本概念的掌握。
对程序片段的理解。
对程序功能的实现·要求。
熟练。
实践第一部分:基本概念·关于简单程序设计的步骤和顺序是,首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档。
用户所定义的标识符必须以字母或下划线开头,大、小写字母代表不同标识数组名代表的是数组所占存储区的首地址,其值不可改变第一部分:基本概念·算法的空间复杂度是指算法在执行过程中所需要的计算机存储空间。
对被调试程序进行“错误定位”是程序调试的必要步骤,程序调试也称为Debug。
软件测试应严格执行测试计划,排除测试的随意性。
第一部分:基本概念·当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失·设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为非0 值第一部分:基本概念以下正确的字符串常量是(D) 。
(A)"\ \\"B)' abc'ic)olymp.1Caesp(D)第一部分:基本概念以下选项中不属于字符常量的是(B)。
(A)'C'(B)"C"(D) '\072'第一部分:基本概念以下定义语句中止确旳是((o(A) int a=b=0;(B)char A=65+1,b='b’;(C)float a=1, b=&a,.c=&b;(D) double a=0.0; b=1.1;第一部分:基本概念若有定义:int a[2][3];,以下选项中对a数组元素正确引用的是(D)。
(A)a[2][!1](B)a[2][3](C) a[o][3](D)a[1>2][!1]第一部分:基本概念下面的函数调用语句中fung函数的实参个数是(A) func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8))); (A)3(B)4(C)5(D)8第一部分:基本概念若有定义语句: char s[10]="1234567\O\O"; ,则s.trlen(s)的值是(A)(A)7(B)8(C)9D)10第二部分:程序运行结果判断main(char s[ ]={"aeiou"},*D.S.;P.s于s;pxintf("%c in",*ps+4);程序运行后的输出结果是(B )。
金陵科技学院C语言程序设计
说明:所谓“同构数”是指这样的数,这个数出现在它的平方数的右边。
例如:输入整数5,5的平方数是25,5是25中右侧的数,所以5是同构数。
(5)功能:功能:计算正整数n的所有因子(1和n除外)之和并输出。n的值由键盘输入。
三、实验内容与过程
1、程序调试
(1)#include <stdio.h>
main()
{ int s,t,p,sum;
scanf(“%d%d%d”,&s,&t,&p);
sum=s+t+p;
printf(“sum=%d\n”,sum);
}
(2)#include <stdio.h>
main()
{ int k=3;
main()
{
int n,x,sum;
printf("Please input n:");
scanf("%d",&n);
sum=0;
for(x=2;x<=n-1;x++)
{
if(n%x==0)
sum=sum+x;
else
continue;
}
printf("%d",sum);
}
(6)#include<stdio.h>
实验项目名称:初级程序设计实验学时:6
同组学生姓名:实验地点:A201
实验日期:2015.4.16实验成绩:
批改教师:批改时间:
实验1初级程序设计
2022年南京大学金陵学院公共课《大学计算机基础》期末试卷A(有答案)
2022年南京大学金陵学院公共课《大学计算机基础》期末试卷A(有答案)一、单项选择题1、下面关于二进制的运算中,错误的是()A.10+01=11 B.11+01=111 C.11-01=10 D.10-01=012、二进制数101110转换成十六进制数是()A.2CB.2DC.2ED.2F3、二进制数110010转换成十进制数是()A48 B 50 C52 D564、与二进制数01000011等值的十进制数是()A.19B.35C.67D.1315、下面是关于计算机病毒的两种论断,经判断(1)计算机病毒也是一种程序,它在某些条件上激活,起干扰破坏作用,并能传染到其他程序中去;(2)计算机病毒只会破坏磁盘上的数据,()A.只有(1)正确B.只有(2)正确C. (1)和(2)都正确D. (1)和(2)都不正确6、设一个汉字的点阵为24x24,则600个汉字的点阵所占用的字节数是()A.48 x600B.72 x600C.192 x600D.576 x6007、计算机软件系统主要由()A.操作系统和数据库管理系统组成B.系统软件和Office软件组成C.应用软件和操作系统组成D.系统软件和应用软件组成8、只把当前活动窗口复制到剪贴板中.应按()A.Alt+Print ScreenB.Print ScreenC.Ctrl+Print ScreenD.Shift+Print Screen9、在Windows 7中,对话框是一中特别的窗口,可对其进行的操作是()A.既不能移动,也不能改变大小B.仅可以移动,不能改变大小C.既可以移动,也可以改变大小D.仅可以改变大小,不能移动10、在Windows 7的资源管理器窗口中,可显示文件名、大小、类型和修改时间等内容的显示方式是()A.详细资料B.列表C.小图标D.大图标11、在Windows 7开始菜单的“关闭选项”按钮组中有多个选项,其中不包括()A.切换用户B.省电C.注销D.锁定12、每个用户请求计算机系统完成的一个独立操作称为()A.存储B.文件C.作业D.处理13、下列有关Windows 7窗口的叙述中,正确的是()A.单击最小化按钮,相应的应用程序将关闭B.同时按Alt+Tab快捷键可以进行窗口之间的切换C.同时按Ctrl+Tab快捷键可以进行窗口之间的切换D.在任务栏任意处单击鼠标就可以重新排列窗口14、在Word2010中进行编辑时,需将选定区域的内容放到剪贴板上,可使用()A.“剪切”或“替换”操作B.“复制”或“粘贴”操作C.“复制”或“剪切”操作D.“剪切”或“粘贴”操作15、在Word的编辑状态下,当前文档中文字的字体全是宋体,若选中一段文字先设定了楷体,后又设定成黑体,则()A.文档全文都是楷体B.文档被选中的内容为宋体C.被选中的内容变为黑体D.文档的全部都是黑体16、在Word中.段落通常是()A.以句号结束B.以输人回车键结束C.以空格结束D.以分节符结束17、在Word中,单击“文件”菜单,其下拉菜单的下方列出的文档名称表示()A.最近打开和当前打开的文档B.新建的文档C.正在编辑但没有被保存的文档D.最近删除的文档18、下列有关Word 2010“打印预览”窗口的说法中正确的是()A. 此时不可插入表格B. 此时不可全屏显示C. 此时不可调整页边距D. 可以单页或多页显示19、要打印Word文档第1页到第4页和第8页,在“打印”对话框的“页码范围”框中,应输入()A.1-4,8B.148C.14:8D.1,2,3,4,820、在Excel 2010图表中,要对多个考察对象进行多个数据对比,应选择的图表类型是()A.柱形图B.折线图C.饼图D.XY散点图21、Excel 2010一个单元格中输入了数值10,B2单元格中输入了公式“=IF(A2>20,“A”,IF(A2>8,”B”,” ))”,则在B2单元格中显示的是(C)A.TB.CC.BD.A22、在Word 2010中,对选定文字设置格式后,双击“格式刷”可以将已设置的格式复制到()A.1个目标区域B.2个目标区域C.3个目标区域D.多个目标区域23、在默认方式下,Excel 2010工作簿中的第一张工作表的名称为()A.表1B.Sheet1C.Book1D.xls24、下列有关Word 2010“撤销”操作的叙述中,正确的是()A.已经撤销的操作将无法再被恢复B.用户可以按照从后到前的顺序撤销任意步操作C.撤销操作对应的组合键是“Ctrl+Y”D.用户不能有选择地撤销不连续的操作25、向Excel 2010单元格输入数据之后,单元格中出现一串“#”符号,表示()A.单元格被隐藏B.单元格被加密C.用户输入了错误的数据D.输入的数值长度超过了单元格的宽度26、PowerPoint 2010不具有的功能是()A.图文编辑B.设计放映方式C.对数据进行分类汇总D.编辑幻灯片的放映次序27、在硬盘上存放的演示文稿的文件扩展名是()A.DOTB.PPTC.PPRD.DOC28、在因特网上的每一台主机都有唯一的地址标识,称为()A.IP地址B.用户名C.计算机名D.统一资源定位器29、计算机网络主要功能是()A.资源共享B.存储容量大C.运算速度快D.减少通信费用30、SMTP指的是()A.文件传输协议B.远程登录服务C.简单邮件传输协议D.域名服务协议二、填空题31、如果要退出资源管理器,可以按快捷键____________。
南京大学C++[郑滔]C++讲稿1
3.1+10
float f=3.5; int n=6; long k=21;
词-标识符与保留字
• 标识符
– 命名规则 首字母必须是字母或下划线, 组成的字符只能是字母、数字或下划线
– 注意事项
• 大小写敏感(case sensetive) • 不宜过长
• 助忆名
下划线分隔、骆驼表示法、匈牙利表示法
• 不含有空格
• 不能与保留字冲突
词-标识符与保留字
• 保留字(关键字)
– 预先定义好的标识符,已具有特定的含义, 不能重新定义
‘\“’、‘\’’
P18
– 用八进制或十六进制表示的转义字符(0~255)
八进制
‘\000’ ~ ‘\377’
十六进制 ‘\x00’ ~ ‘\xff’
– 在内存中,字符数据以ASCII码存储,即以整数表示
int a = ‘b’;
char c = 97;
– ‘0’, ‘\0’, 0, NULL ‘0’, 48, ‘\x30’
第一部分 C++过程化语言基础
第一章 C++入门
• 计算机体系结构 • 软件 • 程序和程序设计语言 • C 和 C++ • 程序设计方法 • 最简单的程序
计算机体系结构
• John Von Neumann 结构
• 基本工作原理
• 存储器
“地址”
软件
• 软件的含义
– 程序及其相关的文档
– 学科含义、整体含义
• int 可以用4种修饰符组合修饰
– 省略表示
– 操作符 sizeof
– ANSI C++: wchar_t、bool
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
/*结果为2*/ /*结果为8*/ /*结果为2*/ /*结果为8*/ /*结果为1*/ /*结果为4*/ /*结果为8*/ /*结果为1*/ /*结果为20*/ /*结果为4 */
十一、常用的数学计算的库函数
sqrt(x) 计算
x
pow(x , y) 计算xy exp(x) sin(x) cos(x) fabs(x) 计算ey 计算sin x 计算cos x 计算浮点数x的绝对值 注意:不能写成pow(e , x)
南京大学金陵学院
《C语言程序设计》
期末考试复习
一、关于C语言源程序的结构与组成
1、一个完整的C源程序可以由一个或若干 个源程序文件组成: file1 . c file2 . c file3 . c …… filen . c
2、一个C源程序文件由一个或若干个:
函数定义( 一个C源程序中至少有一个函数定义)
‘x’ 可作为整数参与数值运算;而“x” 不能 。 例如: char ch; ch= ‘x’ (正确) 而 ch= “x” (错误) 注意:char型变量并不是一定要存储字符型数据, 也可以存储整型数据,甚至可以存储浮点数。例如: ch=125 ; ch=85.9 ; (小数部分将自动舍去)
一对单引号中只能有一个字符,如 : ‘x’, 而像‘xxx’ 或‘abc’都是错误的。注意:转义字符‘\xab’并不 是四个字符,只表示十六进制数ab所代表的字符。 ‘x’ 的值是整型值; 而“x” 的值是地址(存储空 间的起始地址), 它是指针类型。
外部对象声明
外部对象引用性声明
预处理命令
二、关于变量的声明或定义
1、变量名的命名规则
字母、数字、下划线组成,首字符必须是字母 或下划线。
字母区分大小写。
Turbo C 允许32个字符
不能用C 定义的关键字
不要使用库函数名及预处理命令标识符
2、变量的初始化
对不同类型变量指定的初始化值,有不同的规 定和要求: static 型变量和外部变量的初始化值必须为常量 或常量表达式
{
case 'a': putchar(c+1);
case 'b': putchar(c+2);break;
case 'c': putchar(c+2); default: putchar(c+3); }
十二、关于递归函数的执行与阅读
int f(int n ,int x) { if(n==1) return x; else return f(n-1,x+2)+x; } 例如,当开始时调用:
while(i==e%f) 错写成: while(i=e%f)
for(i=0;i==e%f ;i++) 错写成: for(i=0;i=e%f ;i++)
九、关于|| 与 && 的优化运算处理
在计算 e1 && e2 时,若 e1 的值为假,则不必 再计算 e2 的值 ,因为不管 e2 是什么结果,整个 表达式的值都是 0 。 例如: int a=0 , b=5 , c ; c = a++>0 && b--<10 ;
sizeof 的运算功能是计算给出对象占用的存储 空间大小(以字节为单位)。 使用形式: sizeof (表达式) sizeof (类型关键字或类型名) sizeof 单一常量或单一变量名或单一数组名
注意: 若是数组名,结果是数组占用空间的总字节数
sizeof (1+2) sizeof 1.5 sizeof ‘A’ sizeof (1.5*3LU+sin(x)) sizeof (char) sizeof (float) sizeof “abcdefg” 若有char a=‘A’ ; 则sizeof a 若有 int b[10] ; 则sozeof b 若有 float f; 则sozeof f
声明。
例如若有函数定义:
void fun(int x, int *p, int a[ ]) { …… }
引用性声明:
void fun(int x, int *p, int a[ ]); void fun(int , int * , int [ ]) void fun(int x, int *p, int a[10]);
十六进制形式的转义字符:
‘\xhhh’
必须一对单引号中 必以\x(反斜杠加一个x开始) 其中的hhh只能是1~3位十六进制数字(可以是1位、 2位、最多3位,只其值不超过255 ) 例如: ‘\x2’ 表示编码值为2的字符 ‘\xab ’ 表示编码值为171的字符 ‘\x0D ’ 表示编码值为13的字符 而 ‘\0xab’ 是错误的,x的前面不能写0
x/100
若n是不确定的, 则需要按如下方法计算:
x/(int)pow(10,n-1)
当-32768<=x<=32767时
x/(long)pow(10,n-1) 当x< -32768且x>32767时
八、关于 = 与 = = 的区别
= 是赋值运算,第一操作数必须是左值对象,如 变量名、数组元素名等。
形式参数的“存储类型”仅能是auto和register。不能 是static与extern! 例如:
int fun ( register int x , int y)
int fun ( extern int x , int y)
(正确) (错误)
定义函数时不能给形式参数指定初始化值。例如: int fun ( int x=100 , int y=50) 每一个形式参数都必须单独声明。 int f ( int x , y ) int f ( int x , int y ) (语法错) (正确写法) (错误)
Z += ++x +(y/=10) ;
循环体中对循环控制变量的修改,将影响循 环执行的次数。
x 循环开始 第一轮循环 第二轮循环 0 ++x 1 x++ 2 ++x 3 x++ 4 y 100 y/=10 10 y-9 y/=10 y-0 -1 z 0 11 14
十二、关于switch语句的执行
case后的表达式必须是整型常量表达式 总是将switch后面括号中的“表达式”与case 后
在调用函数的实参必须与被调用函数的形参一一对 应(个数、顺序、类型)。注意:对于指针或数组形式
的形参,对应的实参必须是地址量(指针型量)
例如,若有函数定义:
void fun(int x , int *y , int *p) { *p= x>y ? x : y ; }
且若main函数中有声明:
int a=1, c[2]={0}; 错误调用 fun(int a, int &a, int c[2]) fun(a, *a, c[2]) fun(1 , 2) fun(a, a, c) a=fun(a, &a, c);
f(3 , 4)
五、关于函数定义
函数名是一种外部全局性对象, 所以不能与该 程序中的其他函数名及外部对象同名。但可以与 任何函数(包括该函数)中的局部变量同名,不 会产生冲突。 double samename; int samename ( int n ) int samename ( int n ) { { int samename = 2 ; int s = 2 ; return n%samename ; return n%s ; } } (错误) (正确)
X=0 X*x=0
(正确, 值为0) (错误)
= = 是关系比较运算,第一操作数不必须是左值对象 X==0 X*x==0
(都正确, 值为0或1)
程序要特别注意作为相等性(==)条件判断的 关系表达式常常错写成赋值表达式(=), 而的不到 预期的结果。 例如: if(i==e%f) 错写成: if(i=e%f)
abs(x)
计算 整数x的绝对值
十一、for语句的执行
计算e1
计算e2 e2非0?
真
for ( e1 ;e2 ;e3 ) 语句
表达式 e1仅执行一次 表达式e2用来控制循环继续与否
假
语句 计算e3 结束循环
e1
e2
e3
for ( x=0 , y=100 , z=0 ; x <= y ; x++ , y-- )
形式参数名不能与函数体开始部分的的变量明 同名。例如: int f ( int x ) { float x ; …… }
void型函数体中不能有带返回值的return语句。 例如: void f ( int x ) { …… return x+1; }
六、关于函数调用
在调用一个函数前必须对被调用函数进行引用性
float总是先转换成double,char总是先转换成int
总是把两个操作数转换成同类型后再计算,计算 的结果类型即为该类型。
例如: 10 + ‘b’ + 1.5f – 1e-8/10 该表达式结果类型为double类型。 例如: int a=0 , b=0 ; for ( a=1 ; a<100 ; a++ ) b = b+1/a ;
‘x’ 有对应的字符变量 ,例如:char ch= ‘x’; 而 “x” 没有对应的简单字符串变量,但可以赋给一 个 char*型的指针变量。例如: char *ch= “x” ;
前者用一个字节存储,后者要用两个字节存储。
八进制形式的转义字符:
‘\hhh’
必须一对单引号中 必须一个反斜杠\开始 其中的hhh只能是1~3位八进制数字(可以是1位、 2位、最多3位,只其值不超过255) 例如: ‘\2’ 表示编码值为2的字符 ‘\12’ 表示编码值为10的字符 ‘\123’ 表示编码值为83的字符 ‘\001’ 表示编码值为1的字符 而‘\ab’、‘\0ab’都是错误的,a、b非八进制数字