实验2-C的printf和SCANF函数的使用

合集下载

c语言实验二实验报告

c语言实验二实验报告

一、实验目的1、掌握关系表达式和逻辑表达式的使用。

2、掌握选择结构程序设计的一般方法。

3、熟练使用if语句进行程序设计。

4、掌握使用switch语句实现多分支选择结构。

二、实验内容有一分段函数如下:编写程序,输入x(实数)的值,输出以如下格式:x=??.??,y=??.?? ( 即小数部分保留2位)程序代码:#include "stdio.h"int main(){float x,y;scanf("%f",&x);if(x<1)y=x*x;if(x>=1&&x<10)y=5*x-1;if(x>=10)y=2*x+4;printf("x=%.2f,y=%.2f\n",x,y);return 0;}2、从键盘输入三个实数,输出最大数和最小数。

样例输入:1.23 3.45 5.67样例输出:5.67 1.23程序代码:#include "stdio.h"int main(){float a,b,c,max,min;scanf("%f%f%f",&a,&b,&c);if(a>b){max=a;min=b;}else{max=b;min=a;}if(a>c)if(b>c){min=c;}else {min=b;}else {max=c;}printf("%.2f %.2f\n",max,min);return 0;}3、读入3个非零的double数后,判别这三个值是否可以表示一个三角形的三条边。

样例输入1:1.23 1.23 1.23样例输出1:yes.样例输入2:5.23 3.45 -12.34样例输出2:no.程序代码:#include "stdio.h"int main(){double a,b,c;scanf("%lf%lf%lf",&a,&b,&c);if(a>0&&b>0&&c>0)if(a+b>c&&b+c>a&&a+c>b)printf("yes.\n");else printf("no.\n");else printf("no.\n");return 0;}4、读入3个非零整数后,判别这三个值是否可以表示一个直角三角形的三条边。

c语言数据的输入与输出实验总结与收获

c语言数据的输入与输出实验总结与收获

c语言数据的输入与输出实验总结与收获以C语言数据的输入与输出实验为主题,本文将对该实验进行总结与收获。

在C语言中,数据的输入与输出是非常基础和重要的部分。

正确地使用输入与输出函数可以实现程序与用户之间的交互,使程序能够接收输入数据并输出结果。

下面将分别从数据的输入和数据的输出两个方面进行探讨。

一、数据的输入数据的输入是程序与用户之间进行信息交流的一种方式。

在C语言中,通常使用scanf函数来实现数据的输入。

scanf函数可以从标准输入设备(比如键盘)读取数据,并根据格式化字符串的要求将数据存储到相应的变量中。

在进行数据输入时,需要注意以下几点:1. 格式化字符串的使用:格式化字符串指定了输入数据的类型和存储位置。

其中,格式化字符串中的占位符与变量的类型相对应。

比如,"%d"表示输入一个整数,"%f"表示输入一个浮点数,"%s"表示输入一个字符串等。

在使用scanf函数时,需要根据具体的需求和变量类型来正确选择格式化字符串,以避免数据类型不匹配导致的错误。

2. 输入数据的合法性检查:在读取用户输入之前,应该对输入数据的合法性进行检查。

比如,可以使用条件语句判断用户输入的数据是否满足要求,如果不满足则提示用户重新输入。

这样可以提高程序的健壮性,避免因用户输入错误导致的程序崩溃或结果错误。

3. 输入错误处理:在使用scanf函数读取数据时,如果用户输入的数据格式不正确,会导致函数返回值为0,表示输入失败。

此时,程序应该进行相应的输入错误处理,比如清空输入缓冲区、提示用户重新输入等。

通过实验,我进一步掌握了数据的输入技巧和方法。

我学会了使用scanf函数读取不同类型的数据,并进行合法性检查和错误处理。

这些技巧对于编写实用的、健壮的程序非常重要。

二、数据的输出数据的输出是程序将计算结果或其他信息展示给用户的一种方式。

在C语言中,可以使用printf函数来实现数据的输出。

《c语言程序设计》实验报告(实验-2)

《c语言程序设计》实验报告(实验-2)

《c语⾔程序设计》实验报告(实验-2)《C语⾔程序设计》实验报告2013~2014学年第⼆学期班级姓名学号指导教师实验⼀实验项⽬名称:C程序的运⾏环境和运⾏C程序的⽅法所使⽤的⼯具软件及环境:Visual C++ 6.0⼀、实验⽬的:1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运⾏⼀个C程序;2.通过运⾏简单的C程序,初步了解C源程序的特点。

⼆、预习内容:教材《C语⾔程序设计教程》第1章。

三、实验内容:1. 在Visual C++ 6.0环境下输⼊并运⾏下⾯的程序:#includeint main( ){printf("This is a C program.\n");return 0;}2. 在Visual C++ 6.0环境下输⼊下⾯的程序(有语法错误),编译、连接、调试该程序,直⾄程序⽆语法错误,然后运⾏程序,并观察分析运⾏结果。

#includeint main( ){int a,b,suma=3;b=4;sun=a+b;print(“%d+%d=%d\n”,a,b,sum);return 0;}四、实验结果:1. 运⾏结果(或截图):This is a C program.Press any key to continue2. (1) 改正后的源程序:#includeint main( ){int a,b,sum;a=3;b=4;sum=a+b;printf("%d+%d=%d\n",a,b,sum);return 0;}(2) 运⾏结果(或截图):3+4=7五、思考题:1. ⼀个C程序上机的步骤有哪些?答:上级输⼊与编辑源程序—对原程序进⾏编译–与库函数链接–运⾏可执⾏的⽬标程序。

2. 组成C程序的基本单位是函数,⼀个函数包括哪⼏个部分?答:⼀个函数包括两部分:分别为函数头或函数⾸部和函数体。

成绩指导教师签名实验⼆实验项⽬名称:数据类型、运算符和表达式所使⽤的⼯具软件及环境:Visual C++ 6.0⼀、实验⽬的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使⽤⽅法;3. 掌握基本算术运算符及其表达式的使⽤⽅法;4. 掌握++、--运算符、赋值运算符及其表达式的使⽤⽅法。

实验二C语言中的分支语句程序设计实验

实验二C语言中的分支语句程序设计实验

实验二 C语言中的分支语句程序设计一、实验目的:1.掌握C语言的基本语法;2.掌握C语言的表达式运算及标准库函数的调用方法;3.掌握C语言的基本输入输出语句;4.掌握字符类型、整型和浮点型数据的输入输出及表达式计算方法;5.掌握if语句和switch语句的用法;6.掌握分支程序结构的设计思想;二、实验内容(一)分析程序,用程序验证下面各个表达式的值1、当整型变量a,b,c的值分别为3,4,5时,以下各语句执行后a,b,c的值为多少? (1) if(a>c) {a=b; b=c; c=a;}else {a=c; c=b; b=a;}执行后a,b,c的值为,,(2) if(a<c) a=c;else a=b; c=b; b=a;执行后a,b,c的值为,,(3) if(a!=c) ;else a=c; c=b; b=a;执行后a,b,c的值为,,2、若整数x分别等于95、87、100、43、66、79,57,则以下程序段运行后屏幕显示是什么?switch(x/10){ case 6:case 7: printf("Pass\n"); break;case 8: printf("Good\n"); break;case 9:case 10: printf("V eryGood\n"); break;case 5 : printf("Between Pass and Fail\n");default: printf("Fail\n");}x等于95时,程序段运行后屏幕上显示。

x等于87时,程序段运行后屏幕上显示。

x等于100时,程序段运行后屏幕上显示。

x等于43时,程序段运行后屏幕上显示。

x等于66时,程序段运行后屏幕上显示。

x等于79时,程序段运行后屏幕上显示。

x等于57时,程序段运行后屏幕上显示。

大学大一c语言程序设计实验室上机题全部代码答案(实验报告)

大学大一c语言程序设计实验室上机题全部代码答案(实验报告)

大学大一c语言程序设计实验室上机题全部代码答案(实验报告)大学大一C语言程序设计实验室上机题全部代码答案(实验报告)实验目的:本实验旨在让大一学生通过实际操作掌握C语言的基本语法和常见程序设计题型,提高编程能力。

实验要求:1. 学生需要在实验室中完成上机题,并编写相应的代码。

2. 要求代码具有良好的结构和规范,能够正确运行,并符合题目要求。

3. 学生需要记录代码的思路和过程,并在实验报告中进行详细说明。

实验过程:本次实验共包括以下几个上机题,分别是:1. 题目:输入两个整数,计算它们的和。

实现思路:- 首先,定义两个整型变量a和b,用来保存输入的两个整数。

- 然后,使用scanf函数分别读取两个整数的值。

- 接下来,定义一个整型变量sum,用来保存两个整数的和。

- 使用sum = a + b计算两个整数的和。

- 最后,使用printf函数将结果输出到屏幕上。

2. 题目:输入一个整数n,计算1到n之间所有整数的和。

实现思路:- 首先,定义一个整型变量n,用来保存输入的整数。

- 然后,使用scanf函数读取整数n的值。

- 接下来,定义一个整型变量sum,用来保存1到n之间所有整数的和。

- 使用for循环语句,从1循环到n,累加每个整数的值。

- 最后,使用printf函数将结果输出到屏幕上。

3. 题目:输入一个整数n,判断它是否是质数。

实现思路:- 首先,定义一个整型变量n,用来保存输入的整数。

- 然后,使用scanf函数读取整数n的值。

- 接下来,定义一个布尔型变量isPrime,用来保存n是否是质数的判断结果。

- 使用for循环语句,从2循环到n-1,判断n是否能被其中任意一个整数整除。

- 如果n能被任意一个整数整除,则将isPrime设为假;否则,将isPrime设为真。

- 最后,根据isPrime的值,使用printf函数输出相应的判断结果。

4. 题目:输入一个正整数n,输出n的所有因子。

实现思路:- 首先,定义一个整型变量n,用来保存输入的正整数。

C-C--实验报告指导书详解

C-C--实验报告指导书详解

实验一C/C++语言的运行环境和运行过程1.实验目的:2.掌握c/c++程序设计编程环境visual c++, 掌握运行一个c/c++程序设计的基本步骤, 包括编辑、编译、连接和运行。

掌握c和c++语言程序设计的基本框架, 能够编写简单的c和c++程序。

了解程序调试的思想, 能找出并改正c/c++程序中的语法错误。

1.实验内容:在“我的电脑”的E盘上新建一个文件夹, 用于存放c/c++程序, 文件夹名字可以是学号姓名。

调试示例, 在屏幕上显示一个短句“Hello World!”。

C源程序 C++源程序#include <stdio.h> #include <iostream>void main() using namespace std;{ int main()printf(“Hello World!\n”); {} cout<<”Hello World!”<<endl;return 0;}运行结果: Hello World!1)基本步骤: (要求熟练掌握)2)启动VC++“开始”->“程序”->“Microsoft Visual Studio 6.0”->“Microsoft Visual C++6.0”进入VC++编程环境。

3)新建文件(*.cpp)4)“文件”->“新建”, 单击“文件”选项卡, 选择“C++Source Files”,修改文件保存“目录”和“文件”(文件名), 单击“确定”。

5)编辑和保存(注意: 源程序一定要在英文状态下输入, 即字符标点都要在半角状态下, 同时注意大小写, 一般都用小写)6)在编辑窗口输入源程序, 然后执行“文件”->“保存”或“文件”->“另存为”7)编译(*.obj) 用来检查语法错误8)“编译”->“编译”或Ctrl+F7, 在产生的工作区队话框中, 选择“是”。

C语言 中scanf详解

C语言 中scanf详解

C 中scanf ( ) 函数用法心得我觉得,在输入输出函数中,scanf()函数,应该是最麻烦的,有时它给我们的结果很可笑,但是一定是一原因的....首先声明一下,这篇日志不是介绍scanf()中各种格式符用法的文章(没有这个必要,但是大家一定要会用).我尝试了很多种输入,包括一些错误的练习,曾经对scanf()由迷茫转向清醒,又由清醒再次转向迷茫......不知道何时是个尽头,谁让C如此高深呢?在这里贴出来,也是想让自己时而不时能看到,也想知道自己的理解是否有错,错在哪里(所以我就厚着脸皮,放在上面了).注意, 键盘缓冲区与输入有着密切的关系,并且, 类型匹配对输入也极为重要!!下面进入主题:scanf对流的操作遵从类型匹配操作原则,如果类型不匹配,它将不读取输入流。

因此输入流将滞留,如果输入流不空,scanf不会等待用户输入,直接从缓冲区中输入. 但是,scanf() 怎样匹配? stdin又是什么?在网上搜到的关于匹配的非常少,有些细节原因还是找不到.所以,我自作主张的下了点结论:例: scanf("%d,%d",&i,&j); 输入:12 ,13回车但是,j!=13. //注意,12后有一个空格,why?原因:我解释为,在scanf()中,格式字符串中普通字符(不包括空白字符)实行的是严格匹配,因为格式串中%d后面是一个 ',' ,因此输入中数字12后必须为一个','.scanf("1123%s",&str); 输入:1123aaabb 时str为aaabb,但是,输入24aabbdd时, 会出错,因为1123必须进行严格匹配.另外: scanf("%d\n",&i); printf("i=%d",i); 要怎么输入才能输出:i=12 ? 它不是你想像中的那样,有机会尝试一下吧!一些样例:scanf()是一个有返回值的函数,它的返回值是什么?怎么样利用这个特性?scanf()中的匹配原则: 在本文第五点具体说明...scanf()中各种数据格式匹配的开始条件,结束条件 .如: %d ,\n等类型输入结束条件.scanf("%d\n",&i);printf("%d",i); 输入 12回车,并无输出,why? scanf()函数的结束条件: 当各个格式符匹配完毕,且最后有一个回车时,函数结束. scanf("%s",str)连续输入127个就不能继续输入了. //TC中,VC好像是4000多..//说明键盘缓冲区长度为一个字节吗?但是 stdin->bsize(缓冲区大小)事实上为512,这又是为什么?stdin缓冲区中的数据残留 : scanf("%3s",str); c= getchar(); 输入: aaabbccc回车, 此时str="aaa",c='b'; //缓冲区中数据残留!getch()不经过缓冲区,直接接收键盘上输入的字符.//在上例中,加上一个 ch=getch(); 但是getch()并不能读取bbccc中的任何一个,说明getch()与getchar()并不一样,并且它们对Enter读取的值也不同! 一个不常用的格式符: %[] ,如 scanf("%[a-z]",str);输入: abcdefdsaABCDEF 输出:str="abcdefdsa" ;怎么用scanf()来输入一个有空格的字符串?scanf()处理时,一个Enter送到缓冲区中有两个值 : 一个回车(10) ,一个换行(13). 可以用getchar()来接收(但是,在只能接收到\n,即13).在一个scanf()函数之后加个fflush(stdin)可以清除输入数据残留?scanf("%3s",str); fflush(stdin); c=getchar();直接输入aaabbbddd回车, c还能取得值吗?下面是详细解释:scanf()函数执行成功时的返回值是成功读取的变量数 , 也就是说,你这个scanf()函数有几个变量,如果scanf()函数全部正常读取,它就返回几。

C语言程序设计实训教程第2章 基础实验

C语言程序设计实训教程第2章  基础实验

19
(2)编写程序求出任一输入字符的 ASCII码。 提示:从键盘输入一个字符赋给字符变量,以 整型格式输出该变量。 (3)编写程序,由键盘任意输入 3个 1位整数 (第一个整数不为 0),将它们按输入顺序组合为 一个 3位数输出,如输入 2,5,8,则输出为258。 提示:输入 a,b,c3个整数,组合整数为 d =a﹡100 +b﹡10 +c。
(3)写一个函数,用“冒泡法”对输入的 10 个数字由小到大顺序排列,并输出。 提示: ①排序的函数名为 Sort。 ②排序前后的输入输出都应在主函数中完成。 ③使用数组作为函数参数。 ④使用“冒泡法”排序。
67
(4)写一函数,使给定的一个二维数组(5 ×5)转置,即行列互换。 提示: ①使用 5 ×5的二维数组存放数据。 ②矩阵转置的函数名为 Turn。 ③转置前后的输入输出都应在主函数中完成。 ④使用数组作为函数参数。
20
2.3
数据的输入和输出
1)实验目的 ①熟悉顺序结构的程序设计方法。 ②熟练使用 C 的赋值语句和各种表达式。 ③熟练掌握各种数据的输入、输出方法,能正 确使用各种格式转换符。
21
2)实验内容 程序验证性实验
22
23
24
25
程序填空性实验 程序功能:可以计算两个整数的商和余数。
26
程序设计性实验 (1)编写程序由键盘输入任意一个数字字符 (0 ~ 9),将其转换为数字输出。 提示:将该字符和“0”字符相减(字符的 ASCII码值相减)即得到数字。 (2)输入三角形三边长 a,b,c,求三角形 周长 l和面积 s。用 scanf()函数输入数据,printf ()函数输出计算结果,输出时要求有文字说明。
2)实验内容 程序验证性实验

实验报告(参考模板)

实验报告(参考模板)

《计算机编程》实验报告实验名称:用C语言编写简单程序指导教师:王红学号: 191543513 姓名:黄彦章完成日期: 2020.3.13一、实验目的1 、掌握算术表达式和赋值表达式的使用。

2 、掌握基本输出函数的使用。

3 能够编程实现简单的数据处理。

4、理解编译错误信息的含义,掌握简单C程序的查错方法。

二、实验内容(要求按照老师布置的实验内容按照以下要求撰写实验报告)[实验题目1]1、#include<stdio.h>int main(){double x;scanf("%lf",&x);if(x==0)printf("f(0.0) = 0.0");elseprintf("f(%.1lf) = %.1lf",x*1.0,(1.0)/x);}2、实验结果如图所示3、一开始if 的括号中只有一个等号,即把赋值与等于的概念混淆了,导致了编译错误;然后在解题的过程中审题不仔细,忘了保留一位小数.4、通过完成这道题,我认识到做题过程中审清题干的要求是非常重要的,同时也要认真辨析不同概念之间的差异。

[实验题目2]1、#include<stdio.h>#include<math.h>int main(void){int money;float rate,interest,year;scanf("%d %f %f",&money,&year,&rate);interest = money*pow((1+rate),year)-money;printf("interest = %.2lf\n",interest)return0;}2、实验结果如图二所示3、第一次提交后,系统显示格式错误,并且注明了年不是整数,当时感到有些懵,因为我认为利率是按年计算的,而在浏览了群内同学们对这题的讨论之后,我意识到实际上存钱并不是一整年一整年存的,年是可以有小数点的,所以必须要把年这个变量设为float。

大一C语言实验 2:数据运算和输入输出

大一C语言实验 2:数据运算和输入输出

实验二数据运算和输入输出学院软件工程学院班级学号姓名实验日期2018.10.26批次 4 地点教师教师评语年月日一、实验目的1.掌握C语言的基本数据类型及常量表示方法;2.掌握C语言变量定义初始化;3.掌握各种运算符及表达式的运算规则;4.熟悉并掌握格式化输入和输出函数的使用;二、实验内容:1.必做实验:【实验2.1】,【实验2.2】,【实验2.3】【实验2.4】2.选做实验:【实验2.5】三、程序调试步骤及运行结果(写清题号,附上编写的程序及运行结果)【实验2.1】#include"stdafx.h"int _tmain(int argc, _TCHAR* argv[]){ int i=5,j=5,x,y,z;char ch1,ch2;i++;printf("i=%d,j=%d\n",++i,j++);x=10;x+=x-=x-x;printf("x=%d\n",x);return 0;}实验二数据运算和输入输出【实验2.2】#include"stdafx.h"/**********found**********/int _tmain(int argc, _TCHAR* argv[]){ int c,f=100;/**********found**********/c=5*(f-3)/9;printf("f=%d,c=%d,\n",f, c);return 0;}【实验2.3】#include"stdafx.h"#include<math.h>int _tmain(int argc, _TCHAR* argv[]){float a,b,c,p,s;scanf("%f%f%f",&a,&b,&c);p=(a+b+c)/2;s=sqrt(p*(p-a)*(p-b)*(p-c));printf("Three edges are :%.2f,%.2f,%.2f\n",a,b,c);printf("The area is:%.2f\n",s);return 0;}【实验2.4】#include"stdafx.h"int _tmain(int argc, _TCHAR* argv[]) {char ch1,ch2;scanf("%c",&ch1);printf("%c %d %o %x\n",ch1);ch2=ch1+32;printf("%c %d %o %x\n",ch2);return 0;}。

实验二 C程序数据类型及输入输出

实验二 C程序数据类型及输入输出

实验二C语言数据类型及输入输出函数一、实验目的1、熟悉C语言编译环境Turbo C 2.0;2、熟悉C语言的基本数据类型;3、熟悉C语言的基本输入及输出函数;4、使用TC编写简单的程序。

二、预习并思考1.C语言所包括的基本数据类型1)整型整型数据可以有哪几种表示形式?(十进制,八进制,十六进制)这几种类型的数据应该如何定义?怎么区分?整型数据的范围是多少?超出以后会如何?2)实型实型数据分为单精度float和双精度double两种,它们存储时分别占据多大的内存空间?3)字符型一个字符的数据范围有多大?如何理解字符数据和整型数据之间的关系?字符和字符串之间的关系是什么,存储时有何区别?三、实验内容阅读并调试下列程序1.putchar()函数的使用方法#include <stdio.h>main(){ int c;char a;c=65; a='B';putchar(c); putchar('\n'); putchar(a);}2.getchar()函数的使用方法#include <stdio.h>main(){ int c;printf("Enter a character:");c=getchar();printf("%c--->hex%x\n",c,c);}3.printf()函数的使用方法main(){int a=1234;int b=255;float f=123.456;char ch=‘a’;printf(“%8d,%2d\n”,a,a);printf(“%d\t%o\t%x\n”,b,b,b);printf(“%f,%8f,%8.1f,%.2f,%.2e\n”,f,f,f,f,f);printf(“%3c\n”,ch);}4.scanf()函数的使用方法main(){int x;char ch;float f; float a,b,c,s,area;//这里可以用printf()输出一个提示输入的语句scanf(“%d”,&x);//这里可以用printf()输出一个提示输入的语句scanf(“%c”,&ch);//这里可以用printf()输出一个提示输入的语句scanf("%f,%f,%f",&a,&b,&c);s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c));printf("a=%7.2f, b=%7.2f, c=%7.2f, s=%7.2f\n",a,b,c,s);printf("area=%7.2f\n",area);printf(“x=%d,ch=%d\n”,x,ch);}实验练习:1. 利用getchar()输入字符a,A,并用putchar()输出。

C语言实验二程序、总结 顺序结构与输入、输出方法

C语言实验二程序、总结  顺序结构与输入、输出方法

实验二顺序结构与输入/输出方法一实验目的1 学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自增减运算符的使用。

2 掌握C语言中赋值语句的使用。

3 掌握C语言中各种数据的输入/输出方法,能正确使用基本格式符。

二实验内容1 输入下面的程序:#include <stdio.h>main(){ int i,j,m,n;i=8;j=10;printf("%d,%d,%d,%d\n",i,j,m,n); /* 第5行 */m=++i; n=j++; /* 第6行 */printf("%d,%d,%d,%d\n",i,j,m,n); /* 第7行 */}运行程序,分析第5行和第7行输出的不同。

调试分析:因为第五行的m,n没有赋初值,所以对应的m,n输出是乱的数字,第七行的m,n在第六行已赋初值,且i和j也相应的自加,结果如下图⑴将第6行按如下修改以后再运行,分析第5行和第7行输出的不同。

m=i++; n=++j; /* 第6行 */调试分析:m=i++是(m=i,i=i+1)。

n=++j;是(j=j+1,n=j)结果如下图⑵在程序最后增加两行,记录并分析该行的输出。

i=j=8; /* 第8行 */printf("%d,%d,%d,%d\n",i,++i,j,j++); /* 第9行 */调试分析:结果如下图2 运行以下程序,并分析输出结果#include <stdio.h>main(){ int a=-2; long b; float c;b=20000+20000; c=1.23e-1;printf("a=%d,%3d,%-3d,b=%Ld\n",a,a,a,b);printf("a=%o,%x,%u\n",a,a,a);printf("d=%f,%8.2f,%.2f\n",c,c,c);printf("d=%e,%8.2e,%g\n",c,c,c);printf("%c,%s,",'\072',"China");printf("|-%5.2s|%5.2s|\n","China","China");}调试分析: 这个实验主要考察整型,长整型和浮点型等之间的输出,对浮点型小数点左右个数的考察,输出结果如下图3 按格式要求输入、输出数据。

C语言实验2----基本的程序语句

C语言实验2----基本的程序语句

C语言实验2----基本的程序语句1.1目的和要求(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。

(2)学会使用C的有关算术运算符,及包含这些运算符的表达式,(3)自增(++)和自减(--)运算符的使用。

(4)了解字符在计算机中以ASCII码方式表示。

(5)掌握基本的输入输出函数scanf( )、printf( )的基本功能、调用方法、输入/输出格式控制规定等。

(6)巩固学生对于编程概念的理解。

1.2实验内容1.2.1实验练习1:表达式的计算。

实验目的:本实验旨在巩固学生对于编程概念的理解。

在这个实验中将练习:•如何定义浮点型变量•使用scanf输入用户提供的数据•使用printf输出变量问题描述:编写程序sy2_1.c进行温度转换计算,输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。

示例输出:程序主体模板:#include<stdio.h>void main( ){float h, c;printf("请输入华氏温度:");/*接收用户输入的华氏温度*//*将华氏温度转化为摄氏温度*//*输出对应的摄氏温度*/}问题解答提示:1.依据题目,输入和输出数据均为温度,因此用float来表示,其中输入数据为华氏温度,输出数据为摄氏温度;2.提示用户输入华氏温度,并用scanf语句接收此值;3.根据华氏温度和摄氏温度之间的计算公式,将华氏温度转化为摄氏温度,并存储在变量c中;4.用printf语句显示对应的摄氏温度。

1.2.2实验练习2:自增运算符的使用。

实验目的:本实验旨在巩固学生对于编程概念的理解。

在这个实验中,学生将练习:•掌握自增(++)运算符的使用问题描述:编写程序sy2_2.c,观察其执行结果,思考自增运算符放在变量之前和放在变量之后,表达式的值有何不同。

综合运用3种基本结构进行程序设计-C语言程序实验报告

综合运用3种基本结构进行程序设计-C语言程序实验报告

安徽工程大学高级语言程序设计实验报告班级姓名同组者/ 成绩日期指导教师实验名称综合运用3种基本结构进行程序设计一、实验目的1.熟练运用“数据类型与表达式”相关内容,选择合适的数据结构定义问题需要的变量。

2.熟练使用scanf函数和printf函数,进行数据的输入与输出。

3.进一步掌握顺序、选择、循环结构程序设计的方法与技巧。

4.综合运用3种基本结构进行程序设计。

二、实验内容1.百马百担。

100匹马,共驮100担,大马驮3担,中马驮2担,2个小马驮1担,问大、中、小马各多少2.输入一行字符,分别统计其中英文字母、空格、数字和其他字符的个数。

3.打印输出“水仙花数”。

“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。

4.讲一个正整数分解成每个质因数的乘积。

如输入90,打印90=2*3*3*5.5.利用循环语句编写程序实现以下功能:对一个正整数,将各位数字反序后形成一个新的整数输出。

6.一个素数加上1000以后是37的倍数,求满足这个条件的最小素数。

7.找1000以内的所有“完数”。

一个数如果恰好等于它的因子之和,这个数就称为“完数”,如6就是一个完数,因为6=1+2+3。

8.从键盘输入一串数字字符(该字符串至多包含一个点号'.'),将其转换成对应的实数。

说明:点号前有0~9位数字字符,点号后有0~6位数字字符,但是点号前后不能同时没有数字字符。

例如输入“”或“”,则输出实数;输入“.8”、“”或“”,则输出实数;输入字符串“36”或“”,则输出实数.9.两个羽毛球队进行两两单打比赛(每名选手只能上场1次),每队3名选手。

甲队为A、B、C三人,乙队为X、Y、Z三人,已知A不和X对抗,C不和X、Z对抗。

10.*思考题已知VINGTCINQ11.+ CINQTRENTE试编写程序用尽可能少的时间求解各个字母代表的数字。

提示:题目要求所用时间尽可能少,那么下面这种方法很显然是不可行的:for (V=1;V<=9;V++)for(I=0;I<=9; I++)…for (E=0;E<=9; E++)12.{..}可以通过找出某个字母的范围,减少循环次数来节约运算时间。

c语言中scanf函数的用法

c语言中scanf函数的用法

scanf函数是C语言中用来从标准输入流中读取输入的函数。

它可以根据指定的格式字符串,从用户输入中读取数据并将其存储到相应的变量中。

scanf 函数的基本语法格式为:
scanf("格式字符串", &变量1, &变量2, ...);
其中,格式字符串用来指定输入数据的格式,而变量1、变量2等则是需要存储输入数据的变量。

格式字符串中的格式控制符用来指定需要输入的数据类型,如%d表示整数,%f表示浮点数,%c表示字符,%s表示字符串等。

当需要输入多个变量时,格式字符串需要与变量数量相匹配,并使用空格或者换行符进行分隔。

在使用scanf函数时,需要注意以下几点:
1. 在读取字符串时,需要留意空格和换行符。

通常建议使用%s格式控制符来读取字符串,而不是%c,因为%c只能读取单个字符。

2. 对于需要连续输入多个数据的情况,需要确保格式字符串中的格式控制符和变量的顺序是匹配的。

否则可能会导致输入数据存储到错误的变量中。

3. 在读取整数和浮点数时,可以使用%d和%f格式控制符。

但是需要注意,输入的数据必须符合对应的数据类型,否则可能会导致错误。

4. 对于错误处理,可以通过检查scanf函数的返回值来判断输入是否成功。

如果返回值等于变量的数量,表示输入成功;如果返回值小于变量的数量,表示部分输入成功;如果返回值为0,表示输入失败。

总的来说,scanf函数是C语言中用来从标准输入流中读取输入的一个非
常实用的函数。

通过合理使用格式字符串和格式控制符,可以灵活地处理各种类型的输入数据,为程序的交互性和灵活性提供了很大的便利。

C语言中scanf函数与空格回车的用法说明

C语言中scanf函数与空格回车的用法说明

C语⾔中scanf函数与空格回车的⽤法说明众所周知,C语⾔中的scanf函数的作⽤是从标准输⼊设备(通常是键盘)读取输⼊值,并存储到参数列表中指针所指向的内存单元。

下⾯从⼏个⽅⾯说⼀下⼀些稍微细节的东西。

下⾯的实验都在vc6.0中通过。

1、scanf的返回值scanf通常返回的是成功赋值(从标准输⼊设备赋值到参数列表所指定的内存区域)的数据项数,如果出错或是遇到end offile(注意,如果想从键盘输⼊EOF,在windows的DOS窗⼝⽤Ctrl+Z 或F6;在UNIX系统上,⽤CTRL+D。

),则返回EOF,⽐如:scanf("%d%d", &x, &y);如果x和y都被成功读⼊,那么scanf的返回值就是2;如果只有x被成功读⼊,返回值为1;如果x和y都未被成功读⼊,返回值为0;如果遇到错误或遇到end of file,返回值为EOF。

2、scanf的处理机制scanf以删除的⽅式从缓冲区读⼊数据(来⾃标准输⼊设备的数据存储在缓冲区),也就是说,scanf从缓冲区读⼊⼀个数据项,该数据项在缓冲区中就被清除掉了。

⽽如果scanf需要读取⼀个数据项,返现缓冲区当前是空的,那么程序就会在scanf代码处阻塞,等待⽤户输⼊,scanf函数接收到相应的数据项之后,在缓冲区中将这⼀数据项清除,scanf函数返回,程序继续执⾏。

3、scanf对不同类型输⼊的处理⽅式⾸先,要清除⼀个概念:空⽩字符(white space)。

⼀般,程序中所指的空⽩字符是指空格(space),回车(enter)和指标符(table)。

3.1 整数%d对于整型数据的输⼊,也就是说"%d"类型的输⼊,scanf默认的分割符是所有的空⽩字符(空格,回车和指标符都⾏)。

也就是说如果⼀个scanf函数中出现scanf("%d%d",&a,&b),那么⽤任何⼀个空⽩字符来分隔两个整数a,b的值,变量a,b都可以接收到正确的输⼊。

expe_2

expe_2

常熟理工学院《C语言程序设计》实验指导与报告书______学年第____ 学期专业: ___________________________________________ 学号: ___________________________________________ 姓名: ___________________________________________ 实验地点:___________________________________________ 指导教师:___________________________________________计算机科学与工程学院2014实验2 数据类型、运算符和表达式2.1 实验目的1.掌握C语言数据类型的概念,熟悉如何定义一个整型、实型和字符型的变量,以及对它们赋值的方法。

2.掌握输出函数printf()及输入函数scanf()的各种格式控制符的用法。

2.2 示例程序【实验2.1】输入并运行以下程序。

程序代码:#include<stdio.h>int main(){ printf("What's "); /* 输出What's */printf("your "); /* 输出your */printf("name?\n"); /* '\n'是换行符*/return 0;}说明:1.程序的运行结果为:What’s your name?2.printf()函数中只有“格式控制字符串”部分,且只包含普通字符,所以会原样输出。

3.前两行的printf()函数中无换行符’\n’,不进行换行操作,第3行的printf()函数中包含换行符’\n’,字符串输出后换行,这样3个字符串输出到一行上。

【实验2.2】编写已知半径r为15求圆面积的程序。

程序代码:#include <stdio.h>#define PI 3.14159 /* 定义符号常量PI */int main(){ float radius,area; /* 定义浮点型变量radius,area */ radius=15.0; /* 给半径radius赋值*/area=PI*radius*radius; /* 计算圆面积area */printf("area=%f\n", area ); /* 输出圆面积*/return 0;}说明:1.程序的运行结果为:area=706.8577272.程序的第2行定义了符号常量PI。

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