下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《程序设计基础:C上一章知识 注明出 本章教学掌握输入与输出的方式,重点掌握“转换说明”。 注明出 本章授课问题求解与算算法与数据类数据的输 注明出 问题求解与 注明出 问题求解与 2– 注明出 procedureforsolvingaprocedureforsolvingaproblem,oftenusedforcalculationanddataprocessing.——算法定算法是程序的 算法——就是求解问题的步骤 注明出 #include#include
问题求解与
#include<math.h> /*sqrt函数在此文件头中定义*/intmain(void){inta,b,doubledelta,x1,printf("输入abc(a不为,数据间以空格隔开):");scanf("%d%d%d&a,&b&c);if(delta>={delta=b*b-4*if(delta>={
}x1}x1(-b+sqrt(*x2(-b-sqrt(*{{}return0;} 注明出 问题求解与 抽
注明出 算法算法的特征 注明出 再议int{inta,b,doubledelta,x1,x2;printf("输入abc:");scanf("%d%d%d",&a,&b,delta=b*b-4*a*c;if(delta>=0){
}
x1=(-b+sqrt(delta))/(2.0*x2=(-b-sqrt(delta))/(2.0*{printf("方程无实根。\" return} 注明出
示示 注明出 本章授课问题求解与算算法与数据类数据的输 注明出 十六进制:0123十六进制:0123456789ABCDE0123456789abc e二进二进八进十六进01012345670123456789准备知识--=== 准备知识--进制的转 000000110102011061117 注明出 准备知识--进制的转 二进制 八进二进制 八进100,110,101 46八进制725 7111 注明出 注明出000000001100102101010111100110111101111准备知识--进制的转 二进制 二进制 1,0011,0101 13十六进制 二进7AE 7 01111010 注明出 10101100二进准10101100二进八进
十六进 注明出 课堂二进制
AC8 AC8 十进制 注明出 内存 b,B,KB,MB,GB,只能是“0”或者“1”,这叫二进保存一个字符(英文字母、数字、符号可以表示0~255之间的
注明出 内存byte(字节byte(字节01000110776543210数据类型与 inta= 注明出
算法与数据 字符 双精度实
常双精度实型long数据类 构造类指针
结构类型struct联合类型union枚举类型enum空类型(无值类型) 注明出 算法与数据短整型 整型
unsignedshortunsignedintunsignedlong(4)unsignedlonglong(8)长整型 shortintlonglonglong 注明出 使用sizeof测试数据inti=
注明出 算法与数据/*limits.h中的部分内#define(-#define#define#define(-2147483647L-#define#define#define(-2147483647L-#define 注明出 无符号整数在内存中的表无符号整数的表示unsignedshorta0000000001100100无符号整数的表示unsignedinta ……… 无符号整数的表示unsignedinta0001100100 ……… 有符号整数在内存中的表短整型(signed0000010000111000整型、长整型(signedint、signed 整型、长整型(signedint、signed0…01000110整数在内存0…………0………………1………………在内存中数值是以补码的形 原码、补码和反码相原码:数值的二进制表反码:符号位不变,数值的二进制按位取补码:数值的反码加数据在内存 注明出数据在内存要要计算1和-100000000000000001111111111111111000000000000000110000000000000011111111111111110111111111111111110000000000000000数据在内存#includeint{shortnum1=1;hrnm2=-1;shortresult=0;result=num1+num2;return0;}号整型号类型符关键所占位数的表示有-215~215--231~231--231~231-(signed)long-263~263-unsigned0~216-无unsigned0~232-unsigned0~232-unsignedlong0~264-sizeof(short)≤sizeof(int)≤sizeof(long)≤sizeof(long 注明出 整型#include<stdio.h>#include<stdlib.h>int{shorty=0xffff;unsignedshortx=65535;y=y- y=x=x+1;return0;} 注明出
算法与数据
signed
字符
unsigned数据类
longdouble 联合类型union指针类型枚举类型enum
注明出 charchar型的数据在内存中保存的是字母的ASCIIvs2005中字符型是按补码存放的(signedAA01000001 补充:ASCII表 )AmericanStandardCodeInformationASCIIchar类型内存printf(“a1=%c”,printf(“a1=%dprintf(“a1=%c”,printf(“a1=%d”,注:有些以“\”
换#include<stdio.h>intmain(void){charch#include<stdio.h>intmain(void){charch=/*定义ch为字符型变量printf(“%c,%d\n”,ch,ch);/*以字符、整数形式输出ch}#include<stdio.h>intmain(void){charch='b';ch='b'-32;printf("%c,%d\n",ch,,注明,注明出
算法与数据
char单精度实型float(4) 双精度实型double(8)长双精度实型long数据类
构造类
枚举类 空类型(无值类型 注明出实
实型内存N=S×r0000实数类符号关键位范有-有-有long-sizeof(float)≤sizeof(double)≤sizeof(long 注明出 实型/*float.h中的部分内容#define #define 1.192092896e-#define #defineFLT_MAX #defineFLTMAX10EXP #define #define 1.175494351e-#define (-#define (- 注明出 实型数据#includeintmain(void){floata=123456.789123456e5;doublex=123456.789123456789e5;floatfloattoobig=3.4E38*b=a+c=123456.789123456e5-printf("a=%f\n",a);printf("x=%f\n\n",x);printf(“b=%f\nc=%f\n”,b,c);return} 注明出 实型数据实型数据无法直接判等 注明出 算法与数据charstyle=shortage= e=longstars=floatmoney=doublelongdouble 注明出 数据类型练例3-5编程输出1+2+...+n的值,n由用户从#include<stdio.h>intmain(void){
unsignedintn;unsignedlonglongsum;sum=n*(n+1)return}
n, 注明出 算法与数据本章授课问题求解与算算法与数据类数据的输 注明出 变unsignedintage= externconstunsignedlongintx, 注明出 数据类型与标识
有且只有一 注明出 数据类型与标识
注明出 数据类型与标识例3-8观察下 intintx,intx=3,constintx=staticintx=externconstvolatileunsignedlongint 注明出 变量inta=(标识符变量地
(字面值 注明出 变量的初例:intnum= intnum11num2num3/*坏的风格*/intnum1=num2=2;/*错误的赋值*/num=num= 注明出 动手#include#includeintmain(void){intx;inty;intz;printf("请输入两个整数xy(数据间以空格隔开scanf("%d%d",&x,z=x+printf("%d+%d=%d\n",x,y,z);return} 注明出 intmain()
挑毛{intintif=adrress=1;floatscore=90;stadent==age+age+
undeclaredprintf("%d%d%dreturn} 注明出 数据类型与标识 。例如:intx5同一个命名空间内变量 注明出 本章授课问题求解与算算法与数据类数据的输 注明出 常量 常量可分为整型常实型常字符型常字符串 注明出 字面值类型
常量与字 注明出 整型字整型字面值表示十进制整数:123456八进制整数:0123十六进制整数:0x123longlong
123L,123U,123ll 注明出 浮点型字浮点型字面值表示科 :5e3,12.3e3,123E2,自然数计数:5.3,0.123.123123.0,可采用十进制或十六进制表示(限于 注明出 字符型字宽字符集转义字含转义字含垂直退回换响反斜
3位8进制数代表字
双引2位16进制数代表的 注明出常量与字注意字符串字面值会自动在字符串最后加上‘\0’,占据一个字节的内求字符串长度的时候注意转义字符占据一字节,例如:’\xdd 注明出 常量与字 说明符中包括类型限定符“const”关键字 constintx=doubleconsty=constfloata=1.0,b=2.0,c=usignedintconstm=3,n=用标识符代表一个常量的符号,称为宏常量
宏 常
注明出 常量与字/*源文件:demo3#include<stdio.h>intmain(void){constdoublePI=doublearea=doubler=area=PI*r*PI=return} 注明出 本章授课问题求解与算算法与数据类数据的输 注明出 数据的输出与输 ooC语言的输例如格式输入函数 格式输出函数字符输入函数:getchar字符输出函数字符串输入函数:gets字数串输出函数printf printf putchar puts
printf格式输printf(字符串字面值参数1,参数2,参数字符串字面值里的非转义字符和字符串字面值里的非转义字符和非转换说明符原样返回值大于0表示输出的字符个数,小于0表示输出错误 printf(“%dx);//1个变printf(“%d8)//1“printf(x=%d,y=%fx,y);//2个参“转换说printf格式输转换说明以%开始,依次出现下列元素0个或多个标志字符(可选)。包括:-、+、0、#或空格最小宽度说明(可选)。用十进制整型字面值或星号表示精度说明(可选)。小数点后加一个十进制整型字面值表示转换操作符(必选)。包括:a、A、c、d、e、E、f、g、G、转换操作符(必选)。包括:a、A、c、d、e、E、f、g、G、、n、o、p、s、u、x、X、%常用的转换操 signed
unsigned
%n
对浮点数按十进制或科学输出 注明出 长度修正说signedsignedld、signedlld、对有符号longlongunsignedunsignedunsignedlong对无符号longlonglong对longdouble 注明出 关于转换操作符的使 #include<stdio.h>#include<stdlib.h>int{floatn1=doublen2=longn3=20000000,n4=printf("%.1e%.1e%.1e%.1e\n",n1,n2,n3,n4);printf("%ld%ld\n",n3,n4);printf("%ld%ld%ld%ld\n\n",n1,n2,n3,n4);return} 注明出 Printf函数的工作过 %ld%ld\n\n",n1,n2,
注明出 宽度例3-28设x45,y4567精度
小数 当转换操作符为s时,”精度说明” printf格式输#include<stdio.h>#include<stdlib.h>int{intx=31;floatf=30.45;chara[10]=printf("%7.3d\n",printf("%7.3x\n",printf("%7.3o\n",printf("%7.3e\"printf("%7.3f\n",printf("%7.3s\n",return}
标识字符-0+“%#标识字符 %- 注明出printf练一例3-29练习编写printfa指数表示形式最小为8的字段宽度内左对齐b)指数表示形式最小为10的字段宽度内右对齐c)定点十进制表示形式最小为8的字段宽度内左对齐;小数点后保留3位数字d)定点十进制表示形式最小为6的字段宽度内右对齐;小数点后无数字.printf用法提6 注明出printf练一int floatintprintfintprintf"doubleintscanf格式输键盘上输入的数据“送到”内存中进scanf(字符串字面值参数1,参数2参数参数是必须是变量的地字符串字面值里除了转换说明外,其它字符原样返回值成功返回输入到内存的数据个数,失败返回scanf(“%d&x);//1个变scanf(“x=%d,y=%f&x,&y);2scanf格式输#include#include<stdlib.h>intmain(void){intx,floatprintf("请输入x,y,z的值(以逗号隔开scanf("%d,%d,%f",&x,&y,printf("你输入的数是:x=%d,y=%d,z=%f\nxyreturn}scanf格式输scanf格式输scanf(字符串字面值参数
参数2….,参数scanf转换操作
o
%n
对浮点数按十进制或科学输入 注明出 scanf长度修正longlong
ld、li、lu、lo、lx、
对longlong对longdouble
注明出 例3-30假设有:intxyfloatz请分析下面语句中scanf函数的作用 注明出scanf格式输scanf赋 符格输结scanf(“%2d%2d”,&a,a=12b=scanf %*d%2d",&a, 注明出 scanf格式输 #includeint
中括号内的内 则表达char 活的接受用户的输入scanf [a-z]”,return0;}intx; 输入123456时例3-32shortx;?
scanf格式输intx,y;scanf(“%d%*d%d”,unsignedlong例3-33charc;,则从键盘上输入数据的相应语句应该unsignedint中,a=10b=20c1=‘a‘c2=’b‘ x=1.50y=-3.75z=67.8应该怎么从程序#include#include<stdio.h>intmain(void){int
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年南方医科大学珠江医院大数据中心招聘数据工程师备考题库及一套答案详解
- 2026年保山万宇投资开发有限公司招聘备考题库参考答案详解
- 2026年成都市龙泉驿区东山国际小学招聘备考题库带答案详解
- 2026年天柱县总工会公开招聘专职工会社会工作者备考题库及1套完整答案详解
- 2026年吉林医药学院附属医院公开招聘工作人员备考题库参考答案详解
- 2026年大连海洋大学学报编辑部公开招聘编辑人员备考题库附答案详解
- 2026年中国建筑第四工程局有限公司深圳分公司招聘备考题库及一套答案详解
- 2026年慈溪市上林人才服务有限公司公开招聘安全生产服务项目派遣制辅助管理人员备考题库有答案详解
- 2026年上海市浦东新区东方芦潮港幼儿园招聘备考题库(区内流动)及参考答案详解
- 2026年中国一冶集团有限公司建筑安装分公司招聘备考题库带答案详解
- 中考物理 题型06【电学实验题】押题必做15题
- 企业安全生产责任制评估与改进方案
- 昆仑神话叙事的百年学术史重构与跨学科研究
- (必刷)湖南专升本《基础护理学》考点精粹必做300题-含答案
- 隧道监测与数据采集技术方案
- 总经办办公室工作总结及计划
- 围堤水下抛石工程的施工技术方案与安全措施
- 2025-2030中国钢结构建筑在新能源设施建设中的应用前景报告
- 焊工安全培训考试题(附答案)
- 2025年直招军官面试题型及答案
- 人工智能AI赋能干行百业白皮书2025
评论
0/150
提交评论