C语言实验和习题印刷讲义-2013年5月修改-程林辉

合集下载

C语言上课讲义

C语言上课讲义

C語言上課講義在我們進入C語言的正式課程之前,相信有許多人對於程式是個什麼東東,還沒什麼概念所以第一堂課我們就先對於程式做一個簡單的介紹。

什麼是程式語言!?常常大家聽到程式語言這個名詞一個反應就是:”好高級!”,其實,程式是一個你們可以即可融入的世界。

我們通常把程式語言分為兩種——高階語言和低階語言。

高階語言的特色是內建許多的I/O、控制結構、和系統資源(如:網路、印表等周邊的工具),常見的如C/C++、JAVA、VB……呵呵…最重要的特色就是是比較簡單^^因為他都是由一些日常的語言所構成(請注意是英文不是中文^^”)而低階語言是程式設計師直接用一些簡單的字,直接控制記憶體寫出很有效率的程式,如:組合語言、機器語言。

在更早以前,程式是用打洞機寫的喔,那個時候程式可就不是一般人可以寫的,因為阿~一般人連接觸電腦都要經過層層關卡呢!低階語言中的機器語言,在組合語言出來以前,程式設計人員是直接用它來寫程式,簡單的說就是16進位碼。

之後為了方便看懂的理由,組合語言被發明出來,一開始還是一行一行的執行,演化成能跳區塊,跳行……最後也走近高階的寫法,現在的組合語言已不是這麼如機器碼的低階。

而高階語言的演進被分為四類:1. 第一代語言:FORTRAN是其一,特徵在於解決數學式子的能力。

2. 第二代語言:Pascal和C屬於這一代,特徵是用有效率的演算法解決問題。

這兩個語言也是現在比賽最常用的喔~3. 第三代語言:Modula和Ada是其例子,開始引進資料型態的概念。

4. 第四代語言:C++和JAVA,物件導向語言。

用繼承的方式來表式資料間的關係。

另一種分法則是按照程式語言的特色來分:1. 程序導向的語言(就是一直接著一行執行)。

2. 用函數來寫成的程式。

3. 使用物件的程式,但沒有繼承的關係。

4. 使用物件,有類別繼承,稱為物件導向的撰寫方式。

Turbo C環境簡介在正式進入主題之前,要先和大家介紹一下C語言的編譯器怎麼用,別急別急,耐心的看下去吧~(一) 進入Turbo C 編譯環境進入DOS模式下後,在C:\>TC>後鍵入tc(二)Turbo C 介面1. 主功能表—位於畫面最上方,有File Edit Compile…..等可按F10移至主功能表或直接用Ctrl-* 如Ctrl-F可直接移至File(.若指令有快速鍵,將會顯示在功能表次選單之後)2. 編輯視窗—就是寫程式的地方啦3. 訊息視窗(Message)—主要顯示程式執行時的錯誤4. 輔助功能表—位於最下方(三)簡易操作1.進入TC後,要進入編輯視窗可以有幾個方法:在任何地方按F6或Alt-E選擇主功能表的Edit(按F10可移至主功能表)編輯時常用指令:Pgup 向上捲動一頁 Ctrl-K B 設定標記區塊之開始Pgdn 向下捲動一頁 Ctrl-K K 設定標記區塊之結束Home 至一列的最前端 Ctrl-K C 複製標記區塊至游標處 End 至一列的最後 Ctrl-K Y 刪除標記區塊Ctrl-Y 刪除游標所在之列 Ctrl-Break強制中斷(程式執行時用) (其實也可以按F1(help)便可查閱其功能)2.執行程式Ctrl-F9或Ctrl-R(Run) \ Run3.離開Turbo CcAlt-X或Ctrl-F(File) \ Quit離開Turbo C的編譯環境後,回到DOS模式請鍵入exit 以離開並返回windowsP.S.有關程式的功能選項部分,留待上程式時慢慢解說^^這些指令不用太刻意地去背,用久了自然會記住的~C語言簡介終於到了正題啦~C語言到底是什麼神奇的東東呢^^~看下去吧~C語言是由Dennis Ritchie發明且使用於UNIX作業系統上。

C语言程序设计实训教程习题和实验解答

C语言程序设计实训教程习题和实验解答
scanf(“%d,%d,%d”,&a,&b,&c);
sum=a+b+c;
average=sum/3.0;
printf(“sum=%d,average=%f\n”,sum,average);
}
【实验解答】
1.c=10
2.①程序功能为输入两个数,求两数的差
②c=10
3.#include<stdio.h>
3.运行结果-1,177777,ffff,65535
b=-2
4.编程并上机调试运行
1)设圆半径为r=1.5,求圆周长、面积。要求用scanf函数输入数据,输出时取小数点后两位。
#include <stdio.h>
void main()
{
float r,l,s,v;
scanf("%f",&r);
l=2*3.14*r;
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("E\n");
}
}
}
3)输入四个数,要求按从大到小顺序输出。
#include<stdio.h>
void main()
}
2.由键盘输入3个数,若输入的这3个数可以构成三角形,则计算以这3个数为边长的三角形周长;如果不能,则输出提示错误信息。
#include <stdio.h>
void main()
{
float a,b,c,l;

C语言程序设计实验指导及习题解答(最新)(1)

C语言程序设计实验指导及习题解答(最新)(1)

C语言程序设计实验指导及习题解答(最新)(1)内容简介本书是与《C语言程序设计教程》(中国科学出版社)配套使用的教学参考书,内容包括:VC++6.0和Turbo C 2.0两种集成编程环境的使用及两种环境下C语言程序的开发过程和调试方法的介绍;C语言程序设计相关章节实验项目;《C语言程序设计教程》一书中各章节习题的参考解答;配合全国计算机等级考试二级C的拓展训练试题。

本书内容详实,实验项目设计合理,具有较强的条理性和针对性,是学习C语言并更好地掌握C语言程序上机实践的必备参考书。

本书可作为高等院校计算机专业或其他非计算机专业的计算机程序设计教学用书,也可作为从事计算机应用及开发人员的参考书。

前言《计算机程序设计基础(C语言)》课程是我国高校理工科专业普遍开设的一门计算机公共基础课程,该课程实践性较强,要求学生具有较好的上机实践能力。

为配合该课程的理论内容的学习,使得学生既能够较好地掌握课程的理论知识内容又能具备较强的上机实践能力,我们特组织了C语言实践教学经验丰富的教师编写了此书。

本书内容丰富,首先系统地介绍了两种常用的C语言集成开发环境VC++ 6.0和Turbo C 2.0的使用方法及程序的调试过程和方法。

在本书的第二部分�D�D实验项目设计中,我们有针对性地根据许多编程人员易犯的错误精心设计了各实验的内容,并且丰富了实验项目的种类以使得读者能够更好更快地掌握C语言程序设计的方法和技巧。

本书的第三部分给出了《C语言程序设计教程》中部分习题的参考答案,其中程序设计习题我们都给出了相应的参考程序代码,以帮助读者掌握C语言程序设计的知识内容并培养和锻炼程序阅读的水平和能力。

另外,为配合广大读者更好地参加全国计算机等级考试二级C的考试,我们不仅在本书的第三部分中给出了模拟试题,而且在第二部分的实验项目设计时也与等级考试的机试题型尽可能地保持一致。

本书由湖北襄樊学院李勇负责组织编写并统稿,袁磊教授主审。

c语言程序设计实验与习题指导颜晖答案

c语言程序设计实验与习题指导颜晖答案

c语言程序设计实验与习题指导颜晖答案C语言程序设计实验与习题指导C语言作为一门广泛应用于软件开发、嵌入式系统和科学计算领域的编程语言,是计算机科学与技术专业学生的必修课程之一。

在学习C语言的过程中,实验与习题是非常重要的环节,通过实践与思考,学生能够更好地理解和掌握C语言的基本概念和编程技巧。

本文将对C语言程序设计实验与习题进行一些指导和答案解析,帮助学生更好地完成相关任务。

一、实验指导1. 实验一:Hello World程序Hello World程序是C语言程序设计的入门级实验,通过编写一个简单的程序,输出"Hello World"这个经典的字符串,学生可以初步了解C语言的基本语法和程序结构。

以下是一个示例代码:```c#include <stdio.h>int main() {printf("Hello World\n");return 0;}```在这个程序中,`#include <stdio.h>`是一个预处理指令,用来包含标准输入输出库的头文件。

`int main()`是程序的入口函数,`printf("Hello World\n");`用来输出字符串,`\n`表示换行。

`return 0;`表示程序正常结束。

2. 实验二:变量与运算实验二主要涉及变量的定义与使用,以及基本的算术运算。

以下是一个示例代码:```c#include <stdio.h>int main() {int a = 10;int b = 5;int sum = a + b;int product = a * b;float average = (float)(a + b) / 2;printf("The sum is %d\n", sum);printf("The product is %d\n", product);printf("The average is %.2f\n", average);return 0;}```在这个程序中,`int a = 10;`和`int b = 5;`分别定义了两个整型变量a和b,并赋予初始值。

C语言程序设计习题解答与上机指导(第二版)

C语言程序设计习题解答与上机指导(第二版)

《“十三五”普通高等教育本科规划教材 C语言程序设计习题解答与上机指导(第二版)》作为C语言程序设 计省级精品课程配套教材,不仅可作为普通高校本、专科学生学习C语言的参考书,也可以作为相关工程技术人员 的自学与参考用书。本书是**以从业多年来以洪荒之力墙裂推荐的C语言教材,首先是图书编写团队非常严谨、 从全书结构设置到程序排版,均做到事无巨细、极尽所能;其次是全书内容由浅入深、安排合理,案例深入浅出, 对知识点的理解很有帮助;*后是本书与主教材配套而出,且配有相应的立体化学习、教学资源,确实是一套《C 语言程序设计》教学好书。
图书目录
序 前言 第一部分学习指导与习题解答 第 1章 C语言程序设计概述 1.1内容提要 1.2常见错误 1.3习题解答 第 2章数据及运算 2.1内容提要 2.2常见错误 2.3习题解答
谢谢观看
作者简介
李新华,安徽大学电子信息与计算机学院副教授.安徽大学青年骨干教师,其负责的C语言程序设计课程被评被 安徽省重点课程,编写的教材很有特色.
内容简介
《“十三五”普通高等教育本科规划教材 C语言程序设计习题解答与上机指导(第二版)》为李新华、梁栋 等编著的普通高等教育“十二五”规划教材《C语言程序设计(第二版)》配套使用的参考书。内容包括:⑴学习 指导与习题解答:内容提要强化各章的知识点、常用算法和编程方法;习题解析对程序设计的难点进行了分析, 所附参考程序全部上机调试通过。⑵上机指南:详细介绍了Visual C++ 6.0集成环境下的编辑、编译、调试和运 行C程序的开发方法。⑶上机实验指导,安排了同步的上机实践环节,每个实验都包括相应章节的关键知识、算法 和编程训练。⑷期中、期末两套模拟试卷和参考答案,可有效测试读者对C程序设计的掌握程度。⑸课程设计示范 引导读者基于图形、图像的良好程序设计规范。|

c语言程序设计实验与习题答案

c语言程序设计实验与习题答案

c语言程序设计实验与习题答案C语言程序设计实验与习题答案C语言是一种广泛使用的程序设计语言,它具有高效、灵活和强大的特点,因此在计算机科学和工程领域中得到了广泛的应用。

在学习C语言的过程中,实验和习题是非常重要的一部分,通过实验和习题的完成,可以加深对C语言的理解和掌握。

在C语言程序设计实验中,通常会涉及到一些基本的概念和技术,比如变量、数据类型、运算符、控制结构、函数、指针等。

通过实验,学生可以学习如何使用这些概念和技术来解决实际问题,提高编程能力和解决问题的能力。

同时,习题也是非常重要的,通过习题的完成,可以巩固对C语言知识的掌握,并且可以提高解决问题的能力。

在习题中,通常会涉及到一些常见的编程问题,比如求解数列、排序算法、字符串处理、文件操作等,通过解决这些问题,可以提高学生的编程能力和解决问题的能力。

为了帮助学生更好地完成C语言程序设计实验和习题,下面我们提供一些实验和习题的答案,供学生参考:实验一:变量和数据类型```c#include <stdio.h>int main() {int a = 10;float b = 3.14;char c = 'A';printf("a = %d\n", a);printf("b = %f\n", b);printf("c = %c\n", c);return 0;}```实验二:运算符和表达式```c#include <stdio.h>int main() {int a = 10, b = 5;int sum, diff, product, quotient, remainder; sum = a + b;diff = a - b;product = a * b;quotient = a / b;remainder = a % b;printf("sum = %d\n", sum);printf("diff = %d\n", diff);printf("product = %d\n", product);printf("quotient = %d\n", quotient);printf("remainder = %d\n", remainder);return 0;}```通过以上实验和习题的答案,希望能够帮助学生更好地理解和掌握C语言的知识,提高编程能力和解决问题的能力。

C实验指导书-(课后题答案!!!)

C实验指导书-(课后题答案!!!)
【小结: 】多分析阅读别人写的程序,多自己动手编写一些小程序,多上机调试运行程 序,做到这 3 个“多”字,学习好 C 程序设计就不难了。
4
实验二
数据类型、运算符和表达式
一、 实验目的
1、掌握 C 语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它 们赋值的方法; 2、掌握不同的数据类型之间赋值的规律; 3、学会使用 C 的有关算术运算符,以及包含这些运算符的表达式,特别是自加和自 减运算符的使用; 4、进一步熟悉 C 程序的编辑、编译、连接和运行的过程。
二、
相关知识点
VC 集成开发环境; C 语言的编辑、编译、连接和运行过程; C 语言的调试方法和工具; C 语言的基本组成特点。 术语:“控制台应用程序”是一个在 DOS 窗口中运行的基于字符的程序。由于这种 模式的应用程序比 Windows 程序简单,我们先选择利用 Visual C++来建立这样一个 应用,这样使得我们可以将精力先投入到学习使用 C 或者 C++编程语言,而不需要 把过多的精力投入到学习复杂的 Windows 编程中去。
(2)在 VC++编辑环境下编辑源程序。 (3)编译直到程序没有错误。 (4)从键盘输入 10 20↙,运行结果如何? (5)从键盘输入 10,20↙,运行结果如何?
3
(6)任意输入 2 个整数,之间用“空格” ,或者“回车键” ,或者“Tab 键”分隔,分析 结果如何?
五、
扩展内容
Eg1-5: 编写一个 C 程序:输入 a, b, c 三个值,输出其中最大者。 Eg1-6: 编写一个 C 程序:计算 8!
实验步骤:
(1)启动 Visual C++开发环境 (2)创建一个工程 a. 单击 File 菜单中的 New 选项,显示出新建对话框 b. 选择 Win32 Console Application。 c. 选择项目所在路径及输入项目的名称 d. 在建立一个什么类型的控制台应用程序中,选中“一个空工程” ,按“完成” 按钮,至此,已经建立好工程相关的文件。

C语言程序设计实验实验指导书及答案

C语言程序设计实验实验指导书及答案

常熟理工学院电气与自动化工程学院《C语言程序设计》实验指导书实验一熟悉C程序运行环境班级学号姓名成绩一、实验目的1. 熟悉C语言Visual C++6.0调试环境。

2. 掌握C程序的编辑、调试及运行。

二、实验内容项目1. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){printf(“Good morning!\n”);printf(“Hello,world!\n”);return 0;}运行结果(注意,按照屏幕输出格式写):项目2. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){int a , b , sum; /*定义变量*/a=23; b=56; /*为变量赋值*/sum=a+b; /*计算两个变量的和*/printf(“sum is %d\n”,sum); /*输出计算结果*/return 0;}运行结果:2项目3. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int max(int,int);int main(){int a , b , c; /*定义变量*/a=23; b=56; /*为变量赋值*/c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/return 0;}int max(int x,int y) /*定义max函数,函数值为整型*/ {int z; /*定义变量*/if(x>y)z=x;elsez=y;return(z); /*将z的值返回*/}运行结果:三、提高部分1.试想,如果求10个数中的最大者,则程序该如何编写。

程序代码运行结果:实验二数据及其运算班级学号姓名成绩一、实验目的1. 掌握C数据类型的概念、熟悉整型、字符型和实型基本类型的常量的用法;学会三种基本类型变量的定义、赋值和使用方法。

C语言程序设计实验指导书参考答案[2]

C语言程序设计实验指导书参考答案[2]
C语言程序设计
上机实验指导与习题
参考答案
(仅供教师内部参考)
ห้องสมุดไป่ตู้
华南农业大学
目录
上机实验...................................................................................................................................................................1
二、实验内容
.........................................................................................................................................22
实验
...........................................................................................................................................1
二、实验内容
.........................................................................................................................................24
二、实验内容
.........................................................................................................................................24

C语言程序设计实验与习题指导课后程序设计答案

C语言程序设计实验与习题指导课后程序设计答案

C语言程序设计实验与习题指导课后程序设计答案(总3页)本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.MarchP18(1)#include<>int main(void){int celsius,fahr;fahr=150;celsius=5*fahr/9-5*32/9;printf("fahr=%d,celsius=%d\n",fahr,celsius);return 0;}(2)#include<>int main(void){int celsius,fahr;celsius=26;fahr=9*celsius/5+32;printf("celsius=%d,fahr=%d\n",celsius,fahr);return 0;}(3)#include<>int main(void){int average,math,eng,comp;math=87;eng=72;comp=93;average=(math+eng+comp)/3;printf("math=%d,eng=%d,comp=%d,average=%d\n",math,eng,comp,average);return 0;}(4)#include<>int main(void){int n,a,b,c;n=152;c=n%10;b=(n/10)%10;a=n/100;printf("整数%d的个位数字是%d,十位数字是%d,百位数字是%d\n",n,c,b,a);return 0;}P27(1)#include<>#include<>int main(void){int celsius,fahr;printf("Enter celsius:");scanf("%d",&celsius);fahr=9*celsius/5+32;printf("fahr%d\n",fahr);return 0;}(2)#include<>#include<>int main(void){int money,year;double rate,interest;printf("Enter money,year,rate:");scanf("%d%d%lf",&money,&year,&rate);interest=money*pow(1+rate,year)-money;printf("interest=%.2f\n",interest);return 0;}(3)#include<>#include<>int main(void){double x,y;printf("Enter x:");scanf("%lf",&x);if(x<0){y=pow(x+1,2)+2*x+1/x;}else{y=sqrt(x);}printf("y=f(%f)=%.2f\n",x,y);return 0;}(4)#include<>int main(void){int x,y;printf("Enter num1:");scanf("%d",&x);printf("Enter num2:");scanf("%d",&y);printf("%d+%d=%d\n",x,y,x+y);printf("%d-%d=%d\n",x,y,x-y);printf("%d*%d=%d\n",x,y,x*y);printf("%d/%d=%d\n",x,y,x/y);printf("%d%%%d=%d\n",x,y,x%y);return 0;}10的阶乘#include<>int main(void){int i,n,product;printf("Enter n:");scanf("%d",&n);product=1;for(i=1;i<=n;i++){product=product*i;}printf("product=%d\n",product);return 0;}。

C语言实验指导与习题参考答案(含运行界面)(完全版本)

C语言实验指导与习题参考答案(含运行界面)(完全版本)
?代码必须符合语法规则标识符一般用小写字母大小写敏感?尽量不把多条语句写在程序的同一行上?适当地可使川空行和空格增强程序的可读性?常川缩进书写格式使得程序结构清晰?增加相应的输入输出提示信息增强程序运行的友好性?函数体内采用分层缩进和模块化的书写方式增强代码的可维护性一个c语言应用程序上机过程一般要经过哪几个步骤
习题参考答案以及附录
2010 年 3 月 28 日
程序设计基础(C 语言版 ) (第 2 版)实验指导与习题 参考答案


3.1 C 语言初步 ............................................................................................................................................ 1 1.选择题 ............................................................................................................................................... 1 2.填空题 ............................................................................................................................................... 1 3.简答题 ........................................................................................................

C语言实验与习题

C语言实验与习题

C 语言实验与习题张洪礼 陈琦 臧怀沛 主编 余梅生 高翔 主审蔡淑兰 副主编前1 / 137言本书是针对计算机专业及非计算机专业的本科生、专科生及函授生的需要提供的 C 语言 上机指导教材。

前面十个实验涉及的是 C 语言的基础内容,要求学生必须熟练掌握。

后面七 个综合性实验能提高学生对较复杂问题的分析及程序设计能力。

另外每个实验后面都有习题, 主要目的是进一步巩固所学的知识。

在本教材的第三、四部分给出了 turbo C 的常用函数表和 错误信息表,目的是方便学生编程并查阅所需要函数并尽快找出错误的根源。

矚慫润厲钐瘗睞枥。

实验内容中有的给出了参考程序 (主要是前面几个实验) , 更多的需要学生自己编写程序, 所以要求学生必须在每次实验前认真预习本次实验内容,编写好程序方能参加实验。

聞創沟燴鐺險爱氇。

编 者 2000.5.目录第一部分 第二部分 实验一 实验二Turbo C 集成编译环境 C 语言实验4页熟悉 C 语言运行环境(预备实验) 21 页 数据描述与基本操作2 / 13724 页实验三 实验四 实验五 实验六 实验七 实验七 实验八 实验九 实验十 综合实验一 综合实验二 综合实验三 综合实验四 综合实验五 综合实验六 综合实验七 第三部分 第四部分程序分支 循环控制 数组的使用 函数的使用 指针(一) 指针(二) 结构体与共同体 位运算 文件 统计学生成绩 求矩阵鞍点 文件应用 分类与索引 对分法求非线性方程的根 求解雅瑟夫问题 求皇后问题 常用函数表 错误信息30 页 37 页 43 页 53 页 62 页 69 页 73 页 80 页 81 页 86 页 87 页 88 页 90 页 92 页 94 页 96 页 98 页 133 页第一部分Turbo C 集成编译环境Turbo C 集成编译环境是一个集程序编辑、编译、连接、调试为一体的 C 程序开发软件, 它具有速度快、效率高、功能强、使用方便等优点。

C语言习题集与实验指导课程设计

C语言习题集与实验指导课程设计

C语言习题集与实验指导课程设计一、引言本篇文档是对C语言习题集与实验指导课程设计的介绍和说明。

C语言是一门广泛应用于系统软件开发和嵌入式系统的编程语言,也是学习编程的入门语言之一。

习题集与实验指导课程是为了帮助学生提高编程能力和熟练掌握C语言语法等基本知识而设置的,这对于个人编程水平和未来的职业生涯有着重要的作用。

二、课程设计内容本课程设计共有两个部分,分别是C语言习题集和实验指导课程。

下面将对这两个部分的内容进行详细说明。

2.1 C语言习题集C语言习题集是为学生提供的一组练习题,让学生有机会在实践中掌握C语言的基本语法和应用技巧。

本次课程设计的习题集包括以下内容:1.变量、常量和数据类型2.输入输出语句3.运算符和表达式4.控制语句5.数组和字符串6.函数和指针对于每一章节,都会提供一些与该章节相关的习题,学生可以根据自己的水平选择完成。

每一题都有详细的题目和答案说明,供学生参考。

2.2 实验指导课程实验指导课程是为了让学生通过完成一系列实验,更加深入地了解C语言的应用和实践。

本次课程设计的实验指导课程包括以下内容:1.算术运算和逻辑运算2.选择语句与循环语句3.数组与字符串4.函数与指针5.结构体与文件操作每个实验都会有详细的实验指导书和实验报告范例,供学生参考。

实验报告将会被用于课程考核。

三、课程设计实现过程本节将会介绍C语言习题集和实验指导课程的实现过程。

3.1 C语言习题集习题集的设计过程中,需要考虑习题的难易程度和实用性。

在确定题目后,需要编写详细的问题和解答步骤,并且要根据不同的难度级别,设置不同的分值。

3.2 实验指导课程实验指导课程的设计过程中,需要编写详细的实验指导书和实验报告范例。

在实验指导书中,需要说明实验的目的、原理、步骤和注意事项。

在实验报告范例中,需要包含实验的整个流程,包括实验设计、程序代码、测试过程和结果分析。

四、课程总结C语言习题集与实验指导课程设计是一个综合性的课程设计,可以帮助学生更快、更好地掌握C语言的基本语法和实践技巧。

C程序设计与训练课件第01章

C程序设计与训练课件第01章
1.1 计算机语言和程序设计
1.C语言的诞生与发展 (1)在C语言诞生以前,系统软件主要是用汇编语言 编写的。由于汇编语言程序依赖于计算机硬件,其可读 性和可移植性都很差;但一般的高级语言又难以实现对 计算机硬件的直接操作(这正是汇编语言的优势),于 是人们盼望有一种兼有汇编语言和高级语言特性的新语 言。 (2)C语言是贝尔实验室于70年代初研制出来的, 后来又被多次改进,并出现了多种版本。80年代初,美 国国家标准化协会(ANSI),根据C语言问世以来各种 版本对C语言的发展和扩充,制定了ANSI C标准(1989 年再次做了修订)。
常用算法的流程图表示
(1)起止框:表示算法的开始或结束。 (2)输入输出框:表示算法请求输入需要的数 据或算法将某些结果输出。 (3)处理框:表示算法的某个处理步骤。 (4)判断框:对一个给定条件进行判断,根据 判断结果决定如何执行其后的操作。判断框有一个 入口,两个出口。 (5)流程线:指出了算法的执行方向。 (6)连接点:用于将画在不同地方的流程线连 接起来。(7)注释框:对流程图中某些框的操作 做必要的补充说明,
scanf(“%d”, &num2);
printf(“max=%d\n”, max(num1, num2));
} 程序运行情况:
Input the first integer number:6←┘
Input the second integer number:9←┘ max=9
[程序演示]
[案例1.3] 改写[案例1.2],交换main()函数和max()函数的前后位置。 源程序略。 程序运行情况:
{ int num1,num2; printf(“Input the first integer number: ”); scanf(“%d”, &num1); printf(“Input the second integer number: ”); scanf(“%d”, &num2); printf(“max=%d\n”, max(num1, num2));

C语言课程实验讲义48学时

C语言课程实验讲义48学时

实验1 C程序的运行环境和运行一个C程序的方法1.实验目的(1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。

(2)了解在该系统上如何编辑、编译、连接和运行一个C程序。

(3)通过运行简单的C程序,初步了解C程序的特点。

2. 实验学时与要求:2学时,不提交实验报告。

实验类型:验证。

3. 实验内容(1)检查所用的计算机系统是否安装了C编译系统并确定它所在的子目录。

(2)进入所用的集成环境(3)熟悉集成环境的界面和有关菜单的使用方法(4)输入并运行一个简单、正确的程序①输入下面的程序#include <stdio.h>void main(){printf("This is a c program.\n");}②仔细观察屏幕上的已输入的程序,检查有无错误。

③对源程序进行编译,观察屏幕上显示的编译信息。

如果出现出错信息,应找出原因并改正之,再进行编译,如果无错,则进行连接。

④如果编译连接无错误,运行程序,观察分析运行结果。

(5)输入并编辑一个有错误的C程序。

①输入以下程序(教材第一章中的例1.2,故意漏输入或输入错几个字符)。

#include <stdio.h>void main ( ){int a,b,sum;a=123; b=456;sum=a+b;printf ("sum is %d\n", sum);}②进行编译,仔细分析编译信息窗口,可能显示有多个错误,逐个修改,直到不出现错误。

最后与教材上的程序对照。

③使程序运行,分析运行结果。

(6)输入并运行一个需要在运行时输入数据的程序。

①输入下面的程序#include <stdio.h>void main(){ int max(int x, int y);int a,b,c;printf(“input a & b:”);scanf(” %d,%d”,&a,&b);c=max(a,b);printf(“max=%d”,c);}int max(int x,int y){ int z;if(x>y) z=x;else z=y;return(z);}②编译并运行,在运行时从键盘输入整数2和5,然后按Enter键观察运行结果。

C语言程序设计实验 答案

C语言程序设计实验 答案

-媒介-/*异常感激度娘以及列位网上C说话高手的支撑,才干让敝人完成此文档的整顿.本文档聚集了本身.度娘.众网友的力气,个中代码的准确率约为90%(不准确的有标注).为回报度娘及众网友的帮忙,本文档免费下载.*//*配“电子科技大学出版社(周信东主编)”的C说话程序设计试验*//*尽力吧,骚年以及学妹们!*//*整顿ed by 口玉刀一 of GUET.*/=====================试验一 C说话程序初步=====================已知a=5,b=4,c=6,求出s并换行#include"stdio.h"main(){int a,b,c,s;a=5;b=4;c=6;s=(a+b+c)/3;printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s);}输入一个数字求他的平方#include<stdio.h>main(){int r,s;scanf("%d",&r);s=r*r;printf("s=%d\n",s);}(1)#include<stdio.h>main(){printf(" *\n");printf("***\n");printf(" *\n");}(2)#include<stdio.h>main(){int v;int a,b,c; //a,b,c aer sides,v is volume of cubea=3;b=3;c=5;v=a*b*c;printf("v=%d\n",v);}=================================试验二数据类型.运算符和表达式=================================(1)--------------------------------------------------//总认为打印成果怪怪的,DO YOU THINK SO?main(){char s1='3',s2='4',s3='5';int c1=101,c2=102;printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%cprintf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//留意哦,s1,s2,s3是char!而%d:输入输出为整形 %ld 长整型 %hd短整型 %hu无符号整形 %u %lu%s:输入输出为字符串 %c字符%f:输入输出为浮点型 %lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',暗示程度制表位(horizeontal tab),它的感化是将光标移到最接近8的倍数的地位printf("c2=%d\t~%c\n",c2,c2); //留意c1,c2的类型}(2)//运行成果为8.300000 %是求余数先运算x-y,把成果转换为int型的有利于四则运算main(){float x=8.3,y=4.2,s;int a=7;s=x+a%5*(int)(x-y)%2/3;printf("s=%f",s);}(3)main(){int i,j,p,q;i=3;j=6;p=i++;q=--j;printf("%d,%d,%d,%d\n",i,j,p,q);p=i--+3;q=++j-4;printf("%d,%d,%d,%d",i,j,p,q);}(4)main(){int m=15,n=9,s;m*=3+2;printf("%d",m);n+=n-=n*=n;printf("%d",n);printf("%d\n",(s=6*5,m+n+s));printf("%d\n",s);}(1)#include<stdio.h>#define MM 40main(){int a=3,b=6,t;t=MM/(3+6);printf("%d%d",t,MM);}//本来printf语句打成了print,printf语句中少了一个%d.(2)#include<stdio.h>main(){int m;double x;scanf("%d",&m);x=3.14*m*m;printf("%f",x);}//留意分号,%f转义(3)main(){int m=8,n=5;printf("%d",m*=m-n);printf("%d,%d,%d",m=m+1,n-1,m+n);}3.----------------------------------------------------main(){int a=9,b=5;a+=b;b=a-b;a-=b;printf("%d%d",a,b);}4.---------------------------------------------------- //4.输入a,b,c三个变量,盘算数学公式(a*b)/cmain(){int a,b,d;float s,c;scanf("%d%d%f",&a,&b,&c);d=a*b;s=d/c;printf("%f",s);}=================================试验三次序构造和输入输出办法=================================(1)main(){int m=345,t;float n=2.56;t=2.56*100;printf("m=%d,n*100=%d\n",m,t);}(2)main(){int a,b,c,s,v;scanf("%d%d%d",&a,&b,&c);s=a*b;v=a*b*c;printf("%d,%d,%d\n",a,b,c);printf("s=%d,v=%d\n",s,v);}(1)main(){int m,n;float x=3.5,y=6.2;scanf("%d,%d",&m,&n);printf("%6d,%6d",m,n); /*每个数的输出宽度为6,两个数之间逗号建个.*/ printf("x=%7.2f,y=%7.2f",x,y); /*个数的输出宽度7,小数位2*/}(2)main(){int a,b;long m,n;float p,q;scanf("a=%d,b=%d\n%f,%f",&a,&b,&p,&q);scanf("%ld",&m);scanf("%ld",&n);printf("a=%d,b=%d\n m=%ld,n=%ld\n",a,b,m,n);printf("p=%f,q=%f\n",p,q);}//打印成果有误!!main(){int i,j,k,ss,m=1,n=1;scanf("%d%d",&i,&j);m+=i++;n*=--j;ss=(k=m+2,n-5,k+n);printf("%d",ss);}#include<stdio.h>main(){char c1,c2;c1=getchar();c2=getchar();putchar(c1);putchar(c2);printf("c1=%c,c2=%c",c1,c2);printf("%d.%d\n",c1,c2);}5.---------------------------------------------------#include<stdio.h>main(){int a=790,b,c;b=790/60;c=790%60;printf("%d小时%d分钟",b,c);}6.---------------------------------------------------#include<stdio.h>main(){int a,b,c,d;scanf("%d%d%d",&a,&b,&c);d=a;a=c;c=b;b=d;printf("%d,%d,%d\n",a,b,c);}7.--------------------------------------------------#include<stdio.h>main(){double a;scanf("%lf",&a);printf("%.2f\n",a);}=================================试验四逻辑运算断定拔取掌握=================================1. a. 错误原因剖析:Switch分号错误switch(a*a+b*b) { case 3: case 1:y=a+b;break; case 0:y=b-a;break; }b. 错误原因剖析:switch语句应用错误,后跟括号.Default放在后边. switch (a) { case 10:y=a-b;break; case11:x=a*b;break; default:x=a+b;} c. 错误原因剖析:没有输出语句. switch(a+b) {case 10:x=a+b;break; case 11:y=a-b;break; }(1)main ( ){int x,y;scanf("%d",&x );if (x>-5&&x<0) y=x ;if (x==0) y=x-1 ;if(x>0&&x<10) y=x+1;printf ("%d",y);}(2)main(){int x,y;scanf("%d",&x);if((x>-5)&&(x<0)) y=x;else if (x==0) y=x-1;else if(x>0&&x<10) y=x+1;printf("%d",y);}main ( ){int a,M;scanf("%d",&a);M=a>0?a:-a;printf("abs(a)=%d",M);}main(){int c,t,m;printf("input the number of coat and trousers your want buy:\n"); scanf("%d%d",&c,&t);if(c==t) if(c>=50) m=c*80; else m=c*90; else if(c>t)if(t>=50) m=t*80+(c-t)*60; else 90*t+(c-t)*60;else if(c>=50) 80*t+(t-c)*45;else m=c*90+(t-c)*45;printf("%d",m);}5.---------------------------------------------------#include<stdio.h>intmain(void){int a, b, c;scanf("%d%d%d",&a,&b,&c);if(a + b <= c || a + c <= b || b + c <= a)printf("不组成三角形\n");else if (a == b && b == c)printf("等边三角形\n");else if (a == b || b == c || a == c)printf("等腰三角形\n");elseprintf("不等边三角形\n");return 0;}6.--------------------------------------------------#include"stdio.h"main(){long a;scanf("%ld",&a);if(a%5==0)if(a%7==0)printf("yes\n|");else printf("no\n");}=================================试验五轮回构造=================================1.---------------------------------------------------#include"stdio.h"main(){ int n;while(1){ printf("Enter a number:");scanf("%d",&n);if(n%2==1){ printf("I said");continue;}break;}printf("Thanks.Ineeded that!");}2.----------------------------------------------------#include <stdio.h>main(){int c;while ( (c=getchar () ) !='\n'){if ( (c<='X'&&c>='A'||c<='x'&&c>='a') )c += 2;else if (c=='y'||c=='Y'||c=='z'||c=='Z')c=c-24;printf("%c",c);}putchar ('\n') ;}3.----------------------------------------------------#include<stdio.h>int main(){int m, k;for( m = 1; m <= 4; m ++){if ( m == 1 || m == 4 ){for( k = 1; k <= 6; k++)printf("*");printf("\n");}elseprintf("* *\n");}return 0;}#include<stdio.h>main(){ int a,b,c;printf(" * 1 2 3 4 5 6 7 8 9\n");printf(" -----------------------------\n");for(a=1;a<=9;a++){printf("%3d",a);for(b=1;b<=a;b++){c=a*b;printf("%3d",c);}printf("\n");}}5.--------------------------------------------------#include<stdio.h>main(){double e=2,w=0.000001,t;double n=1,s=1;t=1/w;while(s<t){s=s*(n+1);e=e+1/s;n++;}printf("e=%lf,n=%d\n",e,(int)(n-1));}6.--------------------------------------------------------#include <stdio.h>void main(){ int i,j,k=0,r,s=0,t=1000,a=0;for(i=2;i<=t;i++){ a=0; r=0;{ for(j=1;j<i;j++){ k=0; if(i%j==0){ k=j; } r+=k; }if(r==i) a=r; }if(a!=0){if(a==6)printf("%d",a);elseprintf("+%d",a);}s+=a;}printf("=%d\n",s);}=================================试验六数组=================================#include<stdio.h>main(){int grade[6];int i,mumber;for(i=1;i<=5;++i)grade[i]=0;printf("enter your number\n");for(i=1;i<=20;++i){scanf("%d",&mumber);if(!mumber) break;++grade[mumber];}printf("\n\nresult of search\n");printf("---------------\n");for(i=1;i<=5;++i)printf("%4d %d\n",i,grade[i]);}#include"stdio.h"main(){int n,k,xx[20];int i,j,t;printf("\nPlease enter a number");scanf("%d",&n);printf("\nPlease enter %d numbers:",n);for(i=0;i<n;i++) scanf("%d",&xx[i]);printf("%\nPlease enter another number:"); scanf("%d",&k);for(i=0;i<k;i++){t=xx[0];for(j=1;j<n;j++)xx[j-1]=xx[j];xx[n-1]=t;}printf("\nAfter moving:\n");for(i=0;i<n;i++) printf("%3d",xx[i]);printf("\n");}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C语言程序设计》习题《C语言程序设计》上机题计算机科学学院软件基础教研室2012年11月目录第一部分 C语言程序设计习题 (1)第1~3章习题C数据类型和表达式 (1)第4~6章习题输入输出、结构化程序设计 (5)第7章函数 (14)第8章数组 (22)第9~11章指针 (28)第10章字符串 (34)第12章结构体 (41)第二部分 C语言程序设计实验内容 (44)实验一(1)熟悉C语言的开发环境TC (44)实验一(2)熟悉C语言的开发环境VC (48)实验二数据类型、运算符及表达式 (53)实验三C程序设计的基本方法 (55)实验四、五选择结构、循环结构程序设计 (58)实验八指针 (64)实验九结构体 (66)实验十文件 (67)第一部分 C语言程序设计习题第1~3章习题C数据类型和表达式1、一个C程序的执行是从:A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束2、以下叙述正确的是:A)在C程序中,main函数必须位于程序的最前面B)C程序的每行中只能写一条语句 C)分号是C语句的必要组成部分D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误3、以下叙述不正确的是:A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数 C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面4、在C语言中,5种基本数据类型的存储空间长度的排列顺序为A)char<int<1ong int<=float<double B)char=int<1ong int<=float<double C)char<int<1ong int=float=double D)char=int=1ong int<=float<double5、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符A)必须为字母 B)必须为下划线C)必须为字母或下划线 D)可以是字母,数字和下划线中任一种字符6、下面四个选项中,均是不合法的用户标识符的选项是:A)A B)float C)b-a D)-123P_0 La0 goto tempdo -A int INT7、下列四组选项中,均不是C语言关键字的选项是:A)define B)getc C)include D)whileIF char scanf gotype printf case pow8、下面四个选项中,均是合法整型常量的选项是:A)160 B)-0xcdf C)-01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x9、下面四个选项中,均是不合法的浮点数的选项是:A) 160. B)123 C)-.18 D)-e30.12 2e4.2 123e4 .234e3 .e5 0.0 1e310、下面四个选项中,均是合法转义字符的选项是:A)'\'' B)'\' C)'\018' D)'\\0''\\' '\017' '\f' '101''\n' '\"' 'xab' 'xlf'11、下面正确的字符常量是:A)"a" B)'\\'' C)'W' D)''12、下面四个选项中,均是不正确的八进制数或十六进制数的选项是:A)016 B)oabc C)010 D) 0a120x8f 017 -0x11 7ff018 0x8 0x16 -12313、下面四个选项中、均是正确的数值常量或字符常量的选项是:A)0.0 B)"a" C)'3' D)+0010f 3.9E-2.5 011 0xabcd8.9e lel0xFFOO 2e 2'&' '\''' 0a 50.14、下面不正确的字符串常量是:A)'abc' B)"12'12" C)"0" D)""15、若有以下定义,则能使值为3的表达式是:int k=7,x=12;A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)16、若x,i,j和k都是int型变量,则执行下面表达式后x的值为x=(i=4,j=16,k=32)A)4 B)16 C)32 D)5217、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是:A)7 B)8 C)6 D)218、设以下变量均为int类型,则值不等于7的表达式是A)(x=y=6,x+y,x+1) B)(x=y=6,x+y,y+1) C)(x=6,x+1,y=6,x+y)D)(y=6,y+l,x=y,x+1)19、设有说明: char w; int x; f1oat y; double z;则表达式w*x+z-y值的数据类型为:A)float B)char C)int D)double20、设int a=6,则执行完语句a-=a+=a*=a后,a的值是A) 36 B) 72 C) -36 D) 021、若有代数式3ae/bc,则不正确的C语言表达式是:A) a/b/c*e*3 B)3*a*e/b/c C)3*a*e/b*c D)a*e/c/b*322、已知各变量的类型说明如下:int k,a,b;unsigned long w= 5;double x=1.42;则以下不符合C语言语法的表达式是:A)x%(-3) B) w+=-2 C)k=(a=2,b=3,a+b)D)a+=a-=(b=4)*(a=3)23、已知各变量的类型说明如下:int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下符合C语言语法的表达式是:A)a+=a-=(b=4)*(a=3) B)a=a*3=2 C)x%(-3) D)y=f1oat(i)24、以下不正确的叙述是:A)在C程序中,逗号运算符的优先级最低B)在C程序中,APH和aph是两个不同的变量C)若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。

D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。

25、以下正确的叙述是:A)在C程序中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误地表示D)在C程序中,%是只能用于整数运算的运算符26、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+ '6'-'3';后,c2中的值为:A)D B)E C)不确定的值 D)C27、若以下变量均是整型,且num=sum=7;则执行表达式sum=num++,sum++,++num后sum的值为:A) 7 B) 8 C) 9 D) 1028、若有说明语句:char c='\72'则变量cA)包含1个字符 B)包含2个字符C)包含3个字符 D)说明不合法,c的值不确定29、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是A)2.500000 B)2.7500OO C) 3.500000 D)0.000000。

30、以下选项中,与k=++n完全等价的表达式是A) k=n,n=n+1 B)n=n+1,k=n C)k=n++ D)k+=n+1第4~6章习题输入输出、结构化程序设计一、选择题1、putchar函数可以向终端输出一个:A)整型变量表达式值 B)实型变量值 C)字符串 D)字符或字符型变量值2、若希望A的值为奇数时,表达式的值为"真",A的值为偶数时表达式的值为"假"。

则以下不能满足要求的表达式是:A)A%2==1 B)!(A%2==0) C)!(A%2) D)A%23、已有定义int x; f1oat y;且执行scanf("%3d%f",&x,&y);语句,若从第一列开始输入数据12345 678(回车),则x 的值为:A)12345 B)123 C) 45 D) 3454、已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是:int a1,a2; char c1,c2;scanf("%d%d",&a1,&a2);scanf("%c%c",&c1,&c2);A)1020AB<CR> B)10 20<CR>AB<CR> C)10 20 AB<CR> D)10 20AB<CR>5、已有如下定义和输入语句 ,若要求a1,a2,c1,c2值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是:int a1,a2; char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);A)10A 20B< CR> B)10 A 20 B<CR> C)10 A20B<CR> D)10A20B<cR>。

6、根据下面的程序及数据的输入方式和输出形式,程序中输入语句的正确形式应该为:main(){char ch1 ,ch2 ,ch3;输入语句printf("%c%c%c",ch1,ch2,ch3);}输入形式: A B C输出形式: A BA)scanf("%c%c%c",&ch1,&ch2,&ch3);B)scanf("%c,%c,%c", &ch1,&ch2, &ch3);C) scanf("%c %c %c",&ch1,&ch2,&ch3);D) scanf("%c%c",&ch1,&ch2,&ch3);7、已有程序段和输入数据的形式如下,程序中输入语句的正确形式应当为: main(){ int a; float f;printf("\nInput number:");输入语句printf("\nf=%f,a= %d\n ,f,a);}Input number: 4.5 2<CR>A)scanf("%d,%f",&a,&f); B)scanf("%f,%d",&f,&a)C)scanf("%d%f",&a,&f); D)scanf("%f%d",&f,&a);8、阅读下程序,若运行结果为如下形式,输入输出语句的正确内容是: main(){int x; float y;printf("enter x,y :");输入语句输出语句}输入形式 23.4输出形式 x+y=5.40A)scanf("%d,%f",&x,&y);printf("\nx+y= %4.2f",x+y);B)scanf("%d%f",&x,&y );printf("\nx+y=%4.2f",x+y);C)scanf("%d%f",&x,&y);printf("\nx+y=%6.2f",x+y);D)scanf("%d%3.1f",&x,&y );printf("\nx十y=%4.2f",x+y);9、有输入语句: scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b 为3,c为2,从键盘输入数据的正确形式应当是:A)132(回车) B)1,3,2(回车) C)a=1b=3c=2(回车)D)a=1,b=3,c=2(回车)10、以下说法正确的是:A) 输入项可以为一实型常量,如scanf("%f",3.5);B) 只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C) 当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D) 当输入数据时,必须指明变量的地址,如scanf("%f",&f);11、阅读以下程序,当输入数据的形式为25,13,10<CR>正确的输出结果为:main(){int x,y,z;scanf("%d%d%d",&x,&y,&z );printf("x+y+z=%d\n“,x+y+z);}A)x+y+z=48 B)x+y+z=35 C)x+z=35 D)不确定值12、以下能正确地定义整型变量a,b和c 并为其赋初值5的语句是:A)int a=5,b=5,c=5; B) int a,b, c=5;C)int a=b=c=5; D) a=b=c=5;13、已知ch是字符型变量,下面正确的赋值语句是:A) ch= '123'; B) ch= '\xff'; C) ch= '\08'; D) ch="\";14、下面有关for循环的正确描述是:A) for循环只能用于循环次数已经确定的情况B) for循环是先执行循环体语句,后判断表达式C) 在for循环中,不能用break语句跳出循环体D) for循环的循环体语句中, 可以包含多条语句,但必须用花括号括起来15、以下正确的描述是A)continue语句的作用是结束整个循环的执行B)只能在循环体内使用break语句C)在循环体内使用break语句或continue语句的作用相同D)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号E)在do-while循环体中,一定要有能使while后表达式值变为零("假")的操作16、对for(表达式1;;表达式3)可理解为:A) for(表达式1; 0;表达式3) B) for(表达式1;1;表达式3)C) for(表达式1;表达式1;表达式3) D) for(表达式1;表达式3;表达式17、能正确表示"当x 的取值在[1,10]和[200,210]范围内为真,否则为假"的表达式是:A) (x>=1) &&(x<=10) &&(x>=200) &&(x<=210)B) (x>=1) ||(x<=10) ||(x>=200) ||(x<=210)C) (x>=1) &&(x<=10) ||(x>=200) &&(x<=210)D) (x>=1) ||(x< =10) &&(x>=200) ||(x<=210)18、判断char型变量ch是否为大写字母的正确表达式是:A)' A' <=ch<='Z' B)(ch> = 'A')||(ch<='Z' )C)(ch>=' A' )&&(ch<='Z') D)(‘A’< = ch)AND('Z'> = ch)19、设有 int a = 1,b=2,c =3, d =4, m=2, n=2; 执行 (m=a>b)&&(n=c>d) 后n的值为:A)1 B)2 C)3 D)420、下关于运算符优先顺序的描述中正确的是:A)关系运算符< 算术运算符< 赋值运算符< 逻辑与运算符B)逻辑运算符< 关系运算符< 算术运算符< 赋值运算符C)赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符D)算术运算符< 关系运算符< 赋值运算符< 逻辑与运算符21、以下程序的运行结果是:#include "stdio.h"main(){int a,b,d=241;a=d/100 % 9;b=(-1)&&(-1);printf("%d,%d",a ,b);}A)6,1 B)2,1 C) 6,0 D)2,022、若w,x,y,z,m均为int型变量,则执行下面语句后的m值是:w= 1;x = 2;y= 3;z=4;m=(w<y)?w:x;m=(m<y)?m:y;m=(m<z)?m:Z;A)1 B)2 C)3 D)423、以下程序的运行结果是:main(){int k= 4,a=3,b=2,c=1;printf("\n %d\n",k< a ? k:c<b ?c :a);}A)4 B )1 C)2 D)3main(){int a=100,x=10,y=20,okl=5,ok2=0;if(x<y)if(y!=10)if(!okl) a=1;elseif(ok2) a=10;a=-1;printf( "%d\n",a );}A) 1 B) 0 C)-1 D)值不确定25、设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是A)while循环执行10次 B)循环是无限循环C)循环体语句一次也不执行 D)循环体语句执行一次26、请阅读以下程序main(){ int a=5,b=0,c=0;if(a=b+c) printf("***\n ");e1se printf("$$$\n");}以上程序 :A)有语法错不能通过编译 B)可以通过编译但不能通过连接B)C)输出*** D)输出$$$27、下面程序段:for (t=1; t<=100;t++){ scanf("%d",&x);if(x<0) continue;printf("%3d",x);}A) 当x<0时整个循环结束 B) x>=0时什么也不输出C) printf函数永远也不执行 D)最多允许输出100个非负整数28、以下程序段x=-1;do{ x=x*x; }while(!x);A)是死循环 B)循环执行二次 C)循环执行一次 D)有语法错误a=1;b= 2;c=2;while(a<b<c){ t= a;a= b; b=t; c- -; }printf("%d,%d,%d",a,b,c);A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,130、若i为整型变量,则以下循环执行次数是:for (i=2;i==0;) printf("%d",i-- );A)无限次 B) 0次 C) 1 次 D) 2次31、以下程序段的输出结果是int i,j;for(i=0;i<2;i++)for(j=1;j<3;j++)if(i!=j) break;prin tf(“i=%d,j=%d”,i,j);A) i=2,j=2 B) i=1,j=1 C) i=0,j=1 D) i=2,j=332、下面程序段:x=3;do{y=x--;if(!y){ printf("x");continue;}printf("#");}while (1<=x<=2);A)将输出## B)将输出##* C)是死循环 D)含有不合法的控制表达式33、下面程序的运行结果是:#include "stdio.h"main(){ int a,b;for(a=1,b=1;a<=100;a++){if (b>=20) break;if(b%3==1) { b+=3; continue; }b-=5;}printf("%d\n",a);}A) 7 B) 8 C)9 D) 1034、若运行以下程序时,从键盘输入ADescriptor<CR>(CR)表示回车),则下面程序的运行结果是:#include<stdio.h>main(){ char c;int v0=0,v1=0,v2=0;do{switch(c=getchar()){ case 'a':case 'A' :case 'e':case ' E' :case 'i':case 'I' :case 'o':Case 'O' :v1+=1;default:v0+=1;v2+=1 ;}}while(c!='\n');printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);}A)v0=7,v1=4,v2=7 B) v0=8,v 1=4,v2=8 C)v0= 11,v1=4,v2=11D)v0=12,vl=4,v2=12二、程序填空题1.下面程序的功能是输入一个正整数,判断是否素数,若为素数输出1,否则输出0。

相关文档
最新文档